none
「Visual Studio 2010 エディター」のタブ動作について RRS feed

  • 質問

  • みなさん、こんにちは!

    Visual Studio 2010 エディターの『タブ』に付いてですが、文字列と
    文字数のカウントのしかたが、おかしくないでしょうか?

    タブの列を算出する際に全角文字を2列分とせず1列で加算している
    ため、タブの前に全角文字が混じるとタブ位置が揃わないように見受
    けられるのですが、如何でしょうか?

    同じソースを Visual Studio 2008 Express版で扱うと、問題は生じま
    せん。

    もし問題があるようなら、これを回避する方法/パッチなどご教授頂け
    ると有り難いです。

    それとも私の使い方に何か誤りがあると考えられるなら、チェックは
    どうすれば良いのか教えてください。

    よろしくお願いいたします。

    2010年12月30日 6:55

回答

  • 「空白の挿入」に設定していませんか?「タブの保持」に設定したら、全角空白を含んだ行もタブ位置が揃うようになりました。

    設定はメニューからたどれます。

    ツール- オプション- テキストエディター- C#- タブ


    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    2010年12月30日 19:39

すべての返信

  • 回答ではありませんが・・・

    Visual Studio 2010 Productivity Power Toolエクステンション
    http://www.atmarkit.co.jp/fdotnet/scottgublog/20100615powertool/powertool.html

    は入れられていますか? 私は入れているので、もし入れられていなければ私の方では正しく確認することができません。
    また、まだ入れられていなければ、入れられると回避できるかもしれません。全く保証はできませんが・・・(^^;

     


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
    2010年12月30日 7:40
    モデレータ
  • 「空白の挿入」に設定していませんか?「タブの保持」に設定したら、全角空白を含んだ行もタブ位置が揃うようになりました。

    設定はメニューからたどれます。

    ツール- オプション- テキストエディター- C#- タブ


    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    2010年12月30日 19:39
  • ちなみに、そのうち入れようと思っていたので、Productivity Power Toolエクステンションを入れてみましたが、残念ながら現象は変わりませんでした。

    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    2010年12月30日 19:41
  • 「空白の挿入」に設定していませんか?「タブの保持」に設定したら、全角空白を含んだ行もタブ位置が揃うようになりました。

    Visual Studio 2008 では「空白の挿入」でも正しい動作をしますが、Visual Studio 2010 では主張されているような不正な挙動をしますね。
    不具合と見て良いとは思いますが、すぐに修正される可能性は低いと思われます。
    ダメ元でプロダクト フィードバック センターに投げておいてはいかがでしょうか。
    http://www.microsoft.com/japan/msdn/vstudio/feedback/

    すぐに修正される可能性が低いとみるのは、特定の国・地域でしか不具合に遭遇しないとみられること、設定による回避策があること、SP1 のリリースが近いとみられることが理由です。

    # これまでの開発経験から全角スペースをコメント以外に使うのは避けてるなぁ。


    質問スレッドで解決した場合は、解決の参考になった投稿に対して「回答としてマーク」のボタンを押すことで、同じ問題に遭遇した別のユーザが役立つ投稿を見つけやすくなります。
    2010年12月30日 22:41
    モデレータ
  • trapemiya さん、こんにちは!

    いつもありがとう御座います。

    質問の回答については、J.Hashimoto さんからお答え頂いたように、タブの
    処理方法に二種類あるそうで、「タブの保持」(タブコードをそのまま埋め込む
    んだと思います)に設定する事で解決しました。

    また、Productivity Power Toolエクステンションは、この問題には関係なかった
    そうですが、教えて頂いた URL を見たところ良さそうなので是非入れてみよう
    と思っています。

    色々と、ありがとうございました。

    2010年12月31日 5:46
  • J.Hashimoto さん、こんにちは!

    ご回答頂き、ありがとうございました。

    教えて頂いた通り、「タブの保持」に設定したら旨く行きました。

    必要なスペースの数を算出してスペースを埋め込む方法と、タブコードを
    そのまま埋め込む 2つの方法を選択できるのですね。

    何れの方法でもタブ位置が揃えば良いので、この設定で使用します。

    ありがとうございました。

    2010年12月31日 5:46
  • Azulean さん、こんにちは!

    いつも、ありがとうございます。

    やはり、不具合でしょうかね。

    まぁ、特にスペースで埋めたいわけでもなく、設定を変えればタブコードを
    そのまま埋め込む事ができるようなのでこれで使用する事にしました。

    あと、チョット本題から外れて恐縮ですが、コメント以外に使用する全角文字
    に付いてですが、私も避けたいと思いながらDB上のカラム名が全角文字で
    構成されている関係で使用しています。

    こんな場合、何かいい手が有るのでしょうか?
    旨い方法があれば、ご教授頂けると嬉しいです。

    どうぞ、宜しくお願いいたします。

    2010年12月31日 5:47
  • フィードバックに投稿しました。

    全角空白が混在するとTabの終端位置が揃わない | Microsoft Connect


    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    2011年1月4日 15:57
  • DB上のカラム名が全角文字で構成されている関係で使用しています。
    こんな場合、何かいい手が有るのでしょうか?

    データベース周りの経験が薄いため、申し訳ありませんが、私にはわかりかねます。
    ビューのようなもので別名を定義できれば良いとは思いますが、実現できるかは不明です。


    質問スレッドで解決した場合は、解決の参考になった投稿に対して「回答としてマーク」のボタンを押すことで、同じ問題に遭遇した別のユーザが役立つ投稿を見つけやすくなります。
    2011年1月4日 22:00
    モデレータ
  • あと、チョット本題から外れて恐縮ですが、コメント以外に使用する全角文字
    に付いてですが、私も避けたいと思いながらDB上のカラム名が全角文字で
    構成されている関係で使用しています。

    こんな場合、何かいい手が有るのでしょうか?
    旨い方法があれば、ご教授頂けると嬉しいです。

    あ~、タブについて完全に勘違いしてました。コード上のタブですね。コードエディタでファイル名が表示されているタブのことかと思っていました。(^^;
    ちなみに私はデーターベースの列名でも、C#の変数名やメソッド名、プロパティ名でも普通に日本語を使いますが、特に問題を感じていません。かつてはデーターベース周りで日本語の問題もあり、おっしゃる通り、私も最初は日本語を使うのにすごく抵抗がありましたが、今は日本語を使わない方があり得ない派に180度変わっています。特に私はCOBOL世代なので、日本語が使えないのが当たり前でしたので、長い間、日本語使用の否定派でしたが、やはり日本語の可読性は抜群に良いです。賛否両論あるとは思いますし、それぞれのポリシーに関わることですので、一つの参考として捉えて下さい。ちなみに私もタブ保持派です。Visual Studio 2010 Productivity Power Toolエクステンションを使うと、タブとスペースが混在していると統一することができるので便利です。

     


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
    2011年1月5日 1:15
    モデレータ