如何在 cpplint 中使用 exclude_files 正则表达式?
How to use the exclude_files regex in cpplint?
我正在使用 cpplint 根据 google 风格指南检查我的源代码。
Cpplint 的帮助说:
cpplint.py supports per-directory configurations specified in CPPLINT.cfg
files. CPPLINT.cfg file can contain a number of key=value pairs.
Currently the following options are supported:
"exclude_files" allows to specify a regular expression to be matched against
a file name. If the expression matches, the file is skipped and not run
through liner.
Example file:
filter=-build/include_order,+build/include_alpha
exclude_files=.*\.cc
The above example disables build/include_order warning and enables
build/include_alpha as well as excludes all .cc from being
processed by linter, in the current directory (where the .cfg
file is located) and all sub-directories.
我如何使用 cpplint:
我通过此命令使用 cpplint
检查我的源文件夹中的所有文件:
cpplint src/*.c
嗯,有一个特殊的文件foo.cc
,不能检查。所以我尝试创建一个CPPLIN.cfg
来使用exclude_files
属性。我的文件如下所示:
set noparent
filter=-build/include_dir
exclude_files=foo.cc
然而 foo.cc
仍然被选中。
我已经尝试过的事情:
我试过了exclude_files=/.*\.cc/
。这应该排除所有以 *.cc 结尾的文件。尽管如此,仍然检查所有文件。
我试图从文件中删除我的 filter
。这导致了比以前更多的错误。所以我现在确定我的 CPPLINT.cfg
文件被 cpplint 找到了。
问题:
如何在cpplint中正确使用exclude_files正则表达式?
显然文档是错误的:exclude_files
仅排除与 CPPLINT.cfg
相同目录中的文件,而不排除子目录中的文件。参见 https://github.com/google/styleguide/issues/220
所以解决方案是创建 src/CPPLINT.cfg
并将 exclude_files=.*\.cc
放入其中。
我正在使用 cpplint 根据 google 风格指南检查我的源代码。
Cpplint 的帮助说:
cpplint.py supports per-directory configurations specified in CPPLINT.cfg
files. CPPLINT.cfg file can contain a number of key=value pairs.
Currently the following options are supported:
"exclude_files" allows to specify a regular expression to be matched against
a file name. If the expression matches, the file is skipped and not run
through liner.
Example file:
filter=-build/include_order,+build/include_alpha
exclude_files=.*\.cc
The above example disables build/include_order warning and enables
build/include_alpha as well as excludes all .cc from being
processed by linter, in the current directory (where the .cfg
file is located) and all sub-directories.
我如何使用 cpplint:
我通过此命令使用 cpplint
检查我的源文件夹中的所有文件:
cpplint src/*.c
嗯,有一个特殊的文件foo.cc
,不能检查。所以我尝试创建一个CPPLIN.cfg
来使用exclude_files
属性。我的文件如下所示:
set noparent
filter=-build/include_dir
exclude_files=foo.cc
然而 foo.cc
仍然被选中。
我已经尝试过的事情:
我试过了exclude_files=/.*\.cc/
。这应该排除所有以 *.cc 结尾的文件。尽管如此,仍然检查所有文件。
我试图从文件中删除我的 filter
。这导致了比以前更多的错误。所以我现在确定我的 CPPLINT.cfg
文件被 cpplint 找到了。
问题:
如何在cpplint中正确使用exclude_files正则表达式?
显然文档是错误的:exclude_files
仅排除与 CPPLINT.cfg
相同目录中的文件,而不排除子目录中的文件。参见 https://github.com/google/styleguide/issues/220
所以解决方案是创建 src/CPPLINT.cfg
并将 exclude_files=.*\.cc
放入其中。