ソース コードで水平方向の配置を使用するオープン ソース プロジェクトに取り組んでいます。コードは C++ で記述されており、私は Visual Studio 2013 を使用しています。Visual Studio はスペーシングに関して賢くしようとしますが、最終的には手作業による配置を破壊してしまいます。
典型的なコードは次のようになります。
bool → → → GetFieldWithType → → ( int idx, cc8* name, int type );
bool → → → GetFieldWithType → → ( int idx, int key, int type );
static cc8* → GetLuaTypeName → → ( int type );
void* → → → GetPtrUserData → → ( int idx );
ここで、このように別の行を追加すると、(2 つのタブの後に) 左かっこを入力するとすぐに、入力した 2 つのタブが Visual Studio によって削除され、1 つのスペースに置き換えられます。私は辛抱強く、Ctrl+Z を押して自動フォーマットを取り消します。しかし、セミコロンを入力するとすぐに、タブが再び殺されます。
[ツール] > [オプション] > [テキスト エディター] > [C/C++] > [書式設定] > [間隔] > [関数の括弧の間隔]で、引数リストの開き括弧の前にスペースを挿入するかどうかを切り替えるオプションを見つけました。このオプションを無効にしても、VS は開き括弧の前にタブを削除することを主張しますが、スペースを追加しません。この動作を取り除くにはどうすればよいですか?
明確にするために:VSが自動的にスペースを挿入しても問題ありません(構成に従って)。自動フォーマットを完全に無効にしたくありません。手動で入力したスペースを削除したくないだけです。