Vim和clang_complete,如何显式请求重新解析我的代码

时间:2012-06-18 09:12:17

标签: vim clang clang-complete

我使用Vim和clang_complete进行omnicompletion。

当我需要完成时会自动触发插件,例如,在我输入.->以访问对象成员或方法之后(参见下面的屏幕截图)。

clang_complete showing std::map methods

该插件非常好用,但是我需要一种手动触发它的方法(即编译我的代码进行语法检查)。

这有两个原因:

  1. 静态语法检查
  2. 清除之前已修复的错误(否则将保留在缓冲区中)。请参阅下面的两个屏幕截图,以便更好地理解。
  3. 感谢任何帮助。 感谢。


    截屏1


    Error at line 3


    截屏2


    Error fixed


2 个答案:

答案 0 :(得分:3)

来自clang_complete文档:

        *clang_complete-periodic_quickfix*
        *g:clang_periodic_quickfix*
If equal to 1, it will periodically update the quickfix window.
Default: 0
Note: You could use the g:ClangUpdateQuickFix() to do the same with a mapping.

如果将此变量设置为1,它将定期更新quickfix窗口(和),或者您可以创建映射:

nmap <leader>uq :call g:ClangUpdateQuickFix()

这样\ uq会导致更新。 (当然,使用您的领导者映射,自然)

答案 1 :(得分:1)

如果您正在寻找动态语法检查,我建议您查看syntastic, 它基本上在你的代码上运行g ++ --fsyntaxonly并标记缓冲区上的错误。 您也可以将其配置为使用clang!