

私は現在vscodeでC++を利用しています.  
今の状態としては以下です  
OS:ubuntu 18.04LTS  
vscode:1.44.2  
C++:g++ 7.5.0  
です.  
vscodeのextentionで  
C/C++,  
C++ Intellisense  
ともに最新版をインストールしています.

この状態で補完をすると

[code]

    for (size_t i = 0; i < count; i++)
    {
        /* code */
    }
    
[/code]

のようになっています.  
この補完を

[code]

    for (size_t i = 0; i < count; i++) {　// このように{の前で改行をしてほしくない
        /* code */
    }
    
[/code]

のように設定したいのですが,可能でしょうか？


CC BY-SA 4.0
2020-05-04T12:47:28.113
66286
2020-05-04T14:42:50.827
31609
question
c++ vscode
vscodeの括弧の補完で改行をしないようにしたい


## 解決方法

ワークスペースのルートディレクトリに `.clang-format` という名前のファイルを作り、ClangFormat
の設定を行ってください。設定例をふたつ置いておきます：

例1：`BasedOnStyle` を設定する。たとえば下は LLVM coding standards 準拠にする例です。

[code]

    BasedOnStyle: LLVM
    
[/code]

例2：`BreakBeforeBraces` や `BraceWrapping` の設定を個別に行う。下はひとつの例です。

[code]

    BreakBeforeBraces: Attach
    
[/code]

## 解説

C/C++ 拡張機能のデフォルト設定のコード整形では、ワークスペースにある `.clang-format` というファイルがあればこの内容に従い、無ければ
VS Code の `C_Cpp.clang_format_fallbackStyle`
に従います。参考：<https://code.visualstudio.com/docs/cpp/cpp-ide#_code-formatting>

`.clang-format` というのは
[ClangFormat](https://clang.llvm.org/docs/ClangFormat.html)
のための設定ファイルです。リンクしたドキュメントのように各種設定が行えます。


CC BY-SA 4.0
2020-05-04T14:42:50.827
66291
2020-05-04T14:42:50.827
19110
66286
answer