我喜欢和vim一起使用clang。
我一直有的一个问题就是每当我加入boost时,每当我输入“。”时clang就会通过boost库。在一个对象名称之后。这需要5-10秒。
由于我没有对boost标题进行更改,有没有办法通过boost缓存搜索? 如果没有,有没有办法从自动完成搜索中删除提升?
更新(1)以回应adaszko的回答 后 :让g:clang_use_library = 1
Error detected while processing function ClangComplete: line 35: Traceback (most recent call last): Press ENTER or type command to continue Error detected while processing function ClangComplete: line 35: File "<string>", line 1, in <module> Press ENTER or type command to continue Error detected while processing function ClangComplete: line 35: NameError: name 'vim' is not defined Press ENTER or type command to continue Error detected while processing function ClangComplete: line 40: E121: Undefined variable: l:res Press ENTER or type command to continue Error detected while processing function ClangComplete: line 40: E15: Invalid expression: l:res Press ENTER or type command to continue Error detected while processing function ClangComplete: line 58: E121: Undefined variable: l:res Press ENTER or type command to continue Error detected while processing function ClangComplete: line 58: E15: Invalid expression: l:res Press ENTER or type command to continue
...并且没有自动强制
更新(2)
不确定clang_complete是否应该解决boost的问题。没有插件的vim会搜索boost。
超级用户有一个answer,可以使用set include=^\\s*#\\s*include\ \\(<boost/\\)\\@!
答案 0 :(得分:4)
所以,你至少有两个选择。选项#1是设置g:clang_use_library
到1
。以下是:help g:clang_use_library
所说的内容:
Instead of calling the clang/clang++ tool use libclang directly. This
gives access to many more clang features. Furthermore it automatically
caches all includes in memory. Updates after changes in the same file will
therefore be a lot faster.
这需要Python Vim集成的工作设置。
选项#2是将g:clang_complete_auto
设置为您禁用的0
在->
,.
,::
之后自动完成,可以使用<C-x> <C-o>
代替
随时手动调用clang_complete。
我同时使用它们。
答案 1 :(得分:0)
答案 2 :(得分:0)
我已经对clang_complete进行了很多性能增强,您可以查看问题#187。由于非优化代码,问题的很大一部分只是弱脚本性能。