禁止在 C++ 的 VSCode 自动格式化中对齐连续注释
Forbid an alignment of consecutive comments in VSCode auto formating for C++
VSCode C++ 程序中的自动格式化通过对齐连续注释生成此代码:
if (true) { // if begin
// if inner part
int x = 3;
int a = 1; // some inner calculations
} // if end
// some outer calculations
int b = 1;
如何禁止注释对齐以获得下面的代码?
if (true) { // if begin
// if inner part
int x = 3;
int a = 1; // some inner calculations
}// if end
// some outer calculations
int b = 1;
只能加空行来防止
Microsoft C/C++ VS Code 扩展默认使用 clang-format 作为格式化工具。 clang-tidy
是一个静态分析工具,本身也很好用,但它不是回答这个问题的工具。
clang 格式样式选项:https://clang.llvm.org/docs/ClangFormatStyleOptions.html
您需要的选项是 AlignTrailingComments,您将其设置为 false。如果您只想更改一些参数,但要基于样式,请在项目的根目录中使用类似 clang-format -style=LLVM --dump-config > .clang-format
的内容转储该样式。该命令假定 POSIX 或足够接近的 shell(bash、fish、zsh 等)。它可能也适用于 Windows,我只是从未在那里尝试过。
转储配置后,保留前两行(语言和取消注释 BasedOnStyle),然后您可以删除任何您不想更改的选项。保留您要更改的选项,更改它们,保存,退出等。默认情况下更改 VS Code 以首先查找 file
样式(我相信这是默认设置),您应该一切顺利。
这是如上所述的 .clang 格式文件的基本示例:
---
Language: Cpp
BasedOnStyle: LLVM
AlignTrailingComments: true
VSCode C++ 程序中的自动格式化通过对齐连续注释生成此代码:
if (true) { // if begin
// if inner part
int x = 3;
int a = 1; // some inner calculations
} // if end
// some outer calculations
int b = 1;
如何禁止注释对齐以获得下面的代码?
if (true) { // if begin
// if inner part
int x = 3;
int a = 1; // some inner calculations
}// if end
// some outer calculations
int b = 1;
只能加空行来防止
Microsoft C/C++ VS Code 扩展默认使用 clang-format 作为格式化工具。 clang-tidy
是一个静态分析工具,本身也很好用,但它不是回答这个问题的工具。
clang 格式样式选项:https://clang.llvm.org/docs/ClangFormatStyleOptions.html
您需要的选项是 AlignTrailingComments,您将其设置为 false。如果您只想更改一些参数,但要基于样式,请在项目的根目录中使用类似 clang-format -style=LLVM --dump-config > .clang-format
的内容转储该样式。该命令假定 POSIX 或足够接近的 shell(bash、fish、zsh 等)。它可能也适用于 Windows,我只是从未在那里尝试过。
转储配置后,保留前两行(语言和取消注释 BasedOnStyle),然后您可以删除任何您不想更改的选项。保留您要更改的选项,更改它们,保存,退出等。默认情况下更改 VS Code 以首先查找 file
样式(我相信这是默认设置),您应该一切顺利。
这是如上所述的 .clang 格式文件的基本示例:
---
Language: Cpp
BasedOnStyle: LLVM
AlignTrailingComments: true