我使用Vundle安装了clang-complete
,并使用sudo apt install llvm-4.0
下载了llvm,并使用sudo apt install libclang-4.0
下载了clang。这是我的.vimrc:
let g:clang_complete_auto=1 " automatically complete after -> . ::
let g:clang_hl_errors=1 " highlight the warnings and error the same way clang does it
let g:clang_complete_copen=0 " open quickfix window on error
let g:clang_periodic_quickfix=0 " periodically update the quickfix window
let g:clang_snippets=0
let g:clang_close_preview=1
let g:clang_use_library=1
let g:clang_library_path='/usr/lib/llvm-4.0/lib'
let g:clang_user_options='-stdlib=libc++ -std=c++11 -I /usr/include/c++/8/'
set completeopt=menu,longest
但是,这种方式不能很好地运行。当我键入std::
时,菜单仅显示一些无用的项目,例如size_t
,但cout
等除外。
答案 0 :(得分:0)
遵循插件README中的Troubleshooting
部分。它说第一步是在C ++缓冲区中检查completefunc
和omnifunc
,然后检查:messages
的输出。我认为,了解Vim运行时的这些设置将向我们展示正在发生的事情。
如果未设置completefunc
,则说明其中一项设置存在问题;插件正在尝试执行其操作,但是您的一项设置格式不正确(或类似的格式。):messages
的输出也应该能够告诉您这是哪种设置。