如何在每个工作区中配置没有.clang格式文件的clang格式?

时间:2016-11-02 12:36:32

标签: visual-studio-code vscode-settings clang-format

我想配置clang-format而不必将.clang-format文件复制到每个新工作区。

settings.json我目前有

"C_Cpp.clang_format_style": "{BasedOnStyle: Google, IndentWidth: 4, IndentCaseLabels: false, TabWidth: 4, UseTab: ForIndentation, ColumnLimit: 0}",
"C_Cpp.clang_format_fallbackStyle": "Google"

C_Cpp.clang_format_style的说明

  

编码风格,目前支持:Visual Studio,LLVM,Google,Chromium,Mozilla,WebKit。使用"文件"从当前或父目录中的.clang格式文件加载样式。使用" {key:value,...}"设置特定参数,例如:" {BasedOnStyle:LLVM,IndentWidth:8}"

这让我觉得我的方法会起作用,但事实并非如此。当我使用自动格式时,它总是使用Google fallbackStyle。

这是不可能还是我在这里做错了什么?

2 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,发现你使用的方法(我只改变了格式化)

"C_Cpp.clang_format_style": "{BasedOnStyle: Google, 
IndentWidth: 4, 
IndentCaseLabels: false, 
TabWidth: 4, UseTab: ForIndentation, 
ColumnLimit: 0}",

确实有效。

答案 1 :(得分:0)

clang-format -style=file的文档有些误导。

您需要在settings.json(工作区或全局)中定义以下内容

{
   "C_Cpp.clang_format_style": "file",
}

文件不是您想要的文件的路径,而是告诉clang格式使用它可以在本地路径中找到的.clang-format文件-一直向上(cd ..直到它可以找到一个)。

如果案例是VSCode C ++扩展的所有者clang-format,则在VSCode扩展文件夹中。

应将clang-format移至cd ..,直到在代码文件夹中找到clang-format`(如果存在)。