我想使用我自己的C / C ++文件样式表覆盖带有clang格式的= vim运算符:
这个想法是在vim内部clang-format -i -style=~/.my_own_clang_format_config
。
我尝试了以下命令但没有成功:
(来自Ansi C support in Vim):set equalprg=clang-format
- >不采取任何缩进
set equalprg="clang-format -style='~/.my_own_clang_format_config'"
- > echom& equalprg返回一个空字符串
set equalprg='clang-format -i -style=~/.my_own_clang_format_config'
- >未知选项:-i
我还尝试在=之后添加一些shellescape
但是它没有被解释......任何想法?
[编辑]:-style='.my_own_clang_format_config'
不是clang格式的有效选项。我不得不使用以下选项:
clang-format -style='file'
并在我的文件夹(或项目的根文件夹)中添加我的自定义.clang_format,以使其在没有vim的情况下正常工作。
答案 0 :(得分:2)
你需要的只是逃避空格,因为这会干扰在vim命令行模式下调用命令。
set equalprg=clang-format\ -i\ -style='~/.my_own_clang_format_config'
编辑:空格用于确定被调用命令的多个参数,在本例中为:set
。转义它们使VIM能够将后者解释为分配vim选项equalprg
的单个连贯语句。