我的主目录中有.clang-format
,并设置了indentwidth 4,如下所示。
BasedOnStyle: LLVM
Standard: Cpp11
IndentWidth: 4
TabWidth: 4
UseTab: Never
但是当我使用clang-format -style='~/.clang-format' a.cpp
格式化代码时,缩进宽度变为2.喜欢:
// See this indent width 2. The original file has width 4,
// but clang-format changes it to width 2.
int main(int argc, char const *argv[]) {
A a;
a.bar();
clang-format --version的输出是
LLVM (http://llvm.org/):
LLVM version 3.4.2
Optimized build.
Default target: x86_64-unknown-linux-gnu
Host CPU: core-avx-i
如何让clang-format格式化我的代码(.h,.c,..),缩进宽度为4?
答案 0 :(得分:9)
http://clang.llvm.org/docs/ClangFormat.html
-style
选项不接受文件路径。它使用字符串file
来指示使用.clang格式文件,并在转换stdin时在正在处理的文件的父目录中查找该文件,或查找工作目录及其父目录。
您还可以为其指定一个直接设置所需选项的字符串:
clang-format -style="{IndentWidth: 4,TabWidth: 4}"
您还可以使用-dump-config
选项检查配置。
-style='~/.clang-format'
使用~
来引用您的主目录通常依赖于shell globbing。在这样的论证中,shell不会为你做这件事。因此,即使-style
确实走了一条路,也不会产生正确的路径。