自动补全神器 YouCompleteMe 在 linux c 和 linux kernel 开发上的使用

2014-09-10 22:56:10 +08:00
 pydog
如题,折腾了几个小时,总算在服务器的上编译安装上了神器,试用了下,没有惊喜!
linux C 开发不能自动补全,更别说linux kernel,是配置文件设置有问题吗?有没有成功用上在linux C 和 linux kernel开发的。
17686 次点击
所在节点    Vim
28 条回复
mantianyu
2014-09-10 23:04:14 +08:00
远离自动补全...
reeco
2014-09-10 23:17:35 +08:00
只用用tab
Goooogle
2014-09-10 23:24:58 +08:00
好像只补全当前文件中出现过的变量名、字符串等
ChiangDi
2014-09-10 23:27:26 +08:00
分享下我的 YouCompleteMe 配置,
https://github.com/dd1994/dotfiles/blob/master/.vimrc#L163-170
https://github.com/dd1994/dotfiles/blob/master/.ycm_extra_conf.py
我这个就是在 Ubuntu 下写写 C 语言作业的配置,如果写 C++ 自己改 ycm_extra_conf.py
建议看完官方文档再使用。
Tonni
2014-09-11 00:11:16 +08:00
就用VIM自带的Ctrl + N来补全
spacewander
2014-09-11 00:17:11 +08:00
<c-space>下看看,说不定有惊喜呢
tonyluj
2014-09-11 00:51:43 +08:00
不能补全的话 继续看看官方文档 看看错误日志
pydog
2014-09-11 08:15:27 +08:00
@Tonni 自带的补全只能补全目录和文件名,对大工程还是不行的 。。。
pydog
2014-09-11 08:16:13 +08:00
@tonyluj 看了错误日志,没问题,应该是我的ycm_extra_conf.py没配置对
pydog
2014-09-11 08:32:13 +08:00
@ChiangDi 看了配置文件,就是添加了相应的头文件目录,谢谢分享 。。。 YCM折腾起来麻烦,惊喜的效果还没有。
lingxi27
2014-09-11 08:45:46 +08:00
ycm折腾过一次,不喜欢,还是回到clangcomplete了
jsfaint
2014-09-11 08:55:45 +08:00
ycm要配合这个用 https://github.com/tdcdev/ycm_simple_conf
不然配置太麻烦了

neocomplete其实还是有很多优点ycm没有的,但是ycm基于clang的语义补全,Neocomplete做不到……
banbanchs
2014-09-11 08:55:50 +08:00
自己看文档去...C的函数要手动补全,只有结构是自动补全(通过. ->触发),看大项目在项目根目录放个.ycm_extra_conf.py效果比较好
chengdujin
2014-09-11 10:16:20 +08:00
youcompleteme在linux上还好用,mac上由于系统自带vim版本太老,用起来总有各种问题
zinev
2014-09-11 10:25:07 +08:00
歪个楼,请教下各位,我用YCM写Python,每次一按这个“.”就出现一些东西占了一大半的vim空间,求教怎么解决?被这个弄得很恼火啊,
whatot
2014-09-11 10:56:01 +08:00
开发时在项目根目录放一个.ycm_extra_conf.py才是王道,配好flag那一段应该就差不多了。(include路径、-Dxxx、-Wall、-std=c99等编译参数)
pydog
2014-09-11 11:02:34 +08:00
@whatot
@zinev
@chengdujin
@jsfaint
@lingxi27
惊喜出现了,就是每次打开超级慢,15s文件才能正常打开,文档中说的加载一次难道是第一次用vim打开工程中的文件。。。YCM还是比其它好用些,响应快
ChiangDi
2014-09-11 11:36:40 +08:00
@zinev 在vimrc里面加一行 :let g:ycm_autoclose_preview_window_after_completion=1
试试应该就好了。
pydog
2014-09-11 15:04:17 +08:00
@ChiangDi 加上去了,打开还是很久 。。。 可能是我工程太大了
whatot
2014-09-11 15:28:13 +08:00
@pydog 打开文件应该不会需要很久,我打开3.16内核代码中随意一个文件,都是秒开,我的vimrc,为内核的ycm_extra_conf.py配置在下面,可以看看
https://github.com/whatot/whatot-dot/blob/master/ycm.vimrc
https://github.com/whatot/whatot-dot/blob/master/vim/ycm_extra_conf.py

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/132788

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX