“{}”的 VisualStudio 代码格式设置

我在 Ubuntu.C + + 中的 Visual Studio 代码自动链接如下

if (condition == true)
{
DoStuff();
}

相反,我想做的是:

if (condition == true) {
DoStuff();
}

我该怎么做?

我已经从市场上安装了 C/C + + 扩展。

77912 次浏览

我有一段时间没有使用 VisualStudio 了,但是您应该能够通过 Window 选项卡打开 Options 菜单。

您可以在那里搜索 格式化选项,其中包括那些语法特定的设置和间距。我认为这是围绕文本编辑器选项的某个地方。C/C + + 扩展只安装 Visual C 编译器和标准库,以及 Windows SDK 和其他一些东西。

  • 转到 档案-> 偏好-> 设定
  • 搜索 C_Cpp.clang_format_fallbackStyle
  • 从“ Visual Studio”更改为“ LLVM”、“ Google”或“ WebKit”

基于@Chris Drew 的回答

  1. 首选项-> 设置
  2. 搜索 C _ Cpp. clang _ format _ falbackStyle
  3. 单击“编辑,复制到设置”
  4. 从“ Visual Studio”改为 "{ BasedOnStyle: Google, IndentWidth: 4 }"

例如:。

  • “ C _ Cpp. clang _ format _ falbackStyle”: “{ BasedOnStyle: Google,IndentWidth: 4,ColumnLimit: 0}”
  • 顺便说一句,ColumnLimit: 0也很有帮助,因为谷歌限制将打破你的代码到下一行时,你不需要它。

如果你想要更多:

更多细节:

中文: https://medium.com/@zamhuang/vscode-how-to-customize-c-s-coding-style-in-vscode-ad16d87e93bf

台湾: https://medium.com/@zamhuang/vscode-%E5%A6%82%E4%BD%95%E5%9C%A8-vscode-%E4%B8%8A%E8%87%AA%E5%AE%9A%E7%BE%A9-c-%E7%9A%84-coding-style-c8eb199c57ce

例如,使用 MacOS,为 VS Code 配置 clang-format的理想方法是首先使用 Homebrew 安装 clang-format:

brew install clang-format

然后,使用它将完整的样式设置导出到 ~/.clang-format:

clang-format -style=google -dump-config > ~/.clang-format

然后,在 VS 代码中执行以下操作:

  • 转到 Code/File -> Preferences -> Settings并在“用户设置”下定义以下参数:
  • "C_Cpp.clang_format_path": "/usr/local/opt/llvm/bin/clang-format"
  • "C_Cpp.clang_format_style": "Google"
  • "C_Cpp.clang_format_fallbackStyle": "Google"
  • "C_Cpp.intelliSenseEngine": "Tag Parser"

这将格式化程序设置为安装了 Homebrew 的 clang-formatter,它将自动从您刚刚创建的 ~/.clang-format文件中提取您的样式设置。这样,您可以根据需要更改样式中的每个参数,而不仅仅是这些参数的子集。

最后一个参数 C_Cpp.intelliSenseEngine是用来解决 C + + 扩展中的当前 bug,该 bug 破坏了 IntelliSense。

我通常有自己的方式格式化几乎一切:)所以我更喜欢最灵活的方式来实现这一点。就 c + + 格式而言,VS 代码是迄今为止最灵活的编辑器,而且也是最“简单”的。

这就是获得自定义格式的方法。

  • 在工作空间的顶部文件夹下创建一个名为. clang-format 的文件。
  • 然后开始放置您的配置。您可以参考页面 Clang 格式样式了解各种可用的选项。
  • 保存文件,然后使用格式文档(Ctrl + Shift + I)或格式选择(Ctrl + K Ctrl + F)

这是我的档案,供你参考。

Standard: Cpp11
BasedOnStyle: LLVM
IndentWidth: 4
ColumnLimit: 0
AccessModifierOffset: -4
NamespaceIndentation: All
BreakBeforeBraces: Custom
BraceWrapping:
AfterEnum: true
AfterStruct: true
AfterClass: true
SplitEmptyFunction: true
AfterControlStatement: false
AfterNamespace: false
AfterFunction: true
AfterUnion: true
AfterExternBlock: false
BeforeCatch: false
BeforeElse: false
SplitEmptyRecord: true
SplitEmptyNamespace: true

您特别感兴趣的格式是“ AfterControlStatement: false”

安装 C # FixFormat 扩展

  • 查看 > 扩展部分
  • 搜索“ C # FixFormat”
  • 安装

Shift + Alt + F

如果它抱怨有多个格式化程序,那么按下 Configure 按钮并选择 C # FixFormat。

通过点击 File > Preferences > Settings,可以回到新行上打开大括号的状态。然后向下滚动到扩展,C # FixFormat 配置,取消选中 Style > Braces: On Same Line