2017-08-16 26 views
1

vscodeのバージョン1.15.0は、autoIndentとformatOnTypeを無効にしていても、C++コードのアクセス修飾子のインデントを積極的に変更しているようです。Visual StudioコードのC++アクセス修飾子インデントを無効にするにはどうすればよいですか?

私は、この入力した場合:

それは私が "公共:" 入力した後Enterキーを押すとすぐに再フォーマットします
class Foo 
{ 
    public: 
    Foo(); 
}; 

これに、:

私のユーザー設定で
class Foo 
{ 
public: 
    Foo(); 
}; 

私が持っている「エディタを.autoIndent "と" editor.formatOnType "をfalseに設定します。私はまた "C_Cpp.formatting"は、 "無効"に設定されているC + +の拡張子を持っています。

この動作を制御する方法はありますか?

答えて

0

このオプションをfalseに設定しようとしましたか?

"C_Cpp.clang_format_formatOnSave": false, 

編集

はまた、このオプションを見てみましょう:

editor.formatOnSave 
+0

私はfalseに設定しました。それは動作を変更しません。 – cv150

+0

"editor.formatOnSave"? – Satie

+0

これらのすべてが偽である: "editor.formatOnType":偽、 "editor.formatOnPaste":偽、 "editor.formatOnSave":偽、 "editor.autoIndent":偽 – cv150

0

私はC++の言語設定ファイルを変更することでこれを行う方法を発見しました。これは、Microsoft VS Codeディレクトリのresources/app/extension/cpp/language-configuration.jsonにあります。

アクセス修飾子に関連する「increaseIndentPattern」と「decreIndentPattern」の項目を削除しました。

これは機能しますが、ファイルを直接編集するのは悪い考えです。

関連する問題