1
YUCOAT OP Vim这么多插件,有没有一款好一点的代码补全插件,能够像codeblocks那样,我不要求它支持多少语言,只要C或者C++就好了。
我用vim的时间不短了,大概也有两年了吧,我都没怎么用过vim插件。因为那些我用得着的插件配置起来往往有点麻烦,而且用起来也有有各种各样的瑕疵,所以我才没有去用插件。 我之前用过c.vim这款插件,没用多久我就把它删除了,因为这款插件提供的模板与我的编程风格相差太远了,一个又一个地去改他们的模板又有点麻烦。 |
2
laskuma 2013-05-22 18:27:09 +08:00 via iPhone
没什么好办法吧 以前用过neocomplete(貌似是叫这个?) 也不好用 vim的补全确实是个问题 希望楼下能给个好的解法!
|
3
jjgod 2013-05-22 18:37:42 +08:00
YouCompleteMe 在 Vim 启动的时候如果无法载入 clang 是会提示错误的。
|
5
ooscrewyou 2013-05-22 22:34:55 +08:00 via Android
youcompleteme 補全C家族的語言需要在項目目錄裡建一個配置文件的 寫入你編譯項目用到的編譯參數 具體我也不清楚 我不寫C 你去github項目頁面看吧 有個C++的範例的
|
6
beakey 2013-05-22 23:42:36 +08:00
我用python也是同样的问题。。
|
7
mr_pppoe 2013-05-23 01:16:47 +08:00
我觉得目前YouCompleteMe是最好用的带语义补全的插件了。vim --version看看里面rubyinterp/pythoninterp之类的功能有没有?
你补全不成功的时候用:messages看看报什么错?确保你的代码在没有敲S.的之前是可以编译通过的。 |
8
Ricepig 2013-05-23 01:23:06 +08:00
别折腾了,迟早转xcode/vs吧,vim是编辑器,就别硬当ide使了
|
9
cassyfar 2013-05-23 08:36:21 +08:00
@YUCOAT 你指定了ycm_extra_conf.py了没有
let g:ycm_global_ycm_extra_conf='directory/to/ycm_extra_conf.py' 可以参照ycm自带的或者这个-> https://gist.github.com/locojay/4950253 |
10
alexrezit 2013-05-23 08:45:47 +08:00
|
11
zuyf 2013-05-23 10:33:36 +08:00 1
@YUCOAT 有两种可能性:
1. libclang 版本太旧, 最好卸载系统自带的libclang, 然后编译youcompleteme, 它会自动下载一个最新版。 2. 没有设置好ycm_extra_conf.py, 关键是include路径要正确。 打开c++文件的时候, ycm会提示你将加载这个文件, 如果没有提示, 说明没有找到, 或者ycm编译不正确。 加载成功的话, 可以在vim中运行:YcmDiags看一下报什么错, 如果YcmDiags很快返回而且没报错, 可能是ycm_extra_conf.py中有错误, 可能是python的语法错误。 |
12
zuyf 2013-05-23 10:44:07 +08:00
|
14
YUCOAT OP 在vimrc文件中加入
let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/cpp/ycm/.ycm_extra_conf.py' 嘿嘿! 就OK了! |
17
zuyf 2013-05-24 15:20:20 +08:00 1
我自己的一篇介绍YouCompleteMe的Blog
http://yunfeizu.github.io/blog/2013/05/16/killer-plugin-of-vim-youcompleteme/ |
18
beakey 2013-05-24 15:23:52 +08:00
@YUCOAT 不行啊,我要的是新建一个.py文件进去之后第一次输入import就能补全。 照着做之后还是不行,难道是我自己的配置问题?
|
19
karottc 2016-03-31 01:42:28 +08:00
mac 下面, python 可以补全, C++的不行,不知道怎么回事啊
|
20
itgoyo 2018-05-10 16:00:19 +08:00
我这边配置了`let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/cpp/ycm/.ycm_extra_conf.py' `
也不可以给 C++,和 Python 补全啊,还有可能是什么原因吗? |