web-dev-qa-db-ja.com

VSコードでC ++のコード形式を変更するにはどうすればよいですか?

これまでのところ、C++拡張ツールをインストールした後、ctrl + K + Fを使用してC++コードを自動フォーマットできます。ただし、私はいくつかの変更を加えたいと思います。たとえば、次のルールのように、変数名の横ではなく、型の近くにポインターの配置を強制したいとします。

# Force pointers to the type for C++.
DerivePointerAlignment: false
PointerAlignment: Left

どうすればこの変更を行うことができますか? .clang形式のファイルを作成しようとしましたが、機能しません。

8
ywiyogo

いくつかの実験の後、簡単な解決策は、ユーザー設定(settings.json)に次の行を追加することです。

"C_Cpp.clang_format_fallbackStyle": "{ PointerAlignment: Left}"

ただし、この設定により、関数行を壊すことなく以前の設定を維持できます。

"C_Cpp.clang_format_fallbackStyle": "{ BasedOnStyle: WebKit, ColumnLimit: 120, PointerAlignment: Left}"

次のような「BasedOnStyle:Visual Studio」を使用します。

"C_Cpp.clang_format_fallbackStyle": "{ BasedOnStyle: Visual Studio, ColumnLimit: 120, PointerAlignment: Left}"

機能しません。バグかもしれません。 VS-Codeバージョン1.26.1を使用しました。

また、ワークスペースフォルダー外の.clangformatも引き続き適用されます。したがって、このファイルが破損している場合、自動フォーマットは機能しません。

2
ywiyogo

私はclang形式を使用しています。これは非常にうまく統合され、非常に構成可能です。参照 https://code.visualstudio.com/docs/cpp/cpp-ide#_code-formatting

3
Michael Surette