whatiwant:想要在vim中用omnicompletion或者omnicppcompletion的功能,实现对glibc函数的自动补齐,比如在C源文件中输入pri,然后按C-xC-o能够弹出列表补齐printf,诸如此类。现在的问题是,我用ctags对glibc-headers-2.15-57.fc17.i686安装的标准C头文件进行处理,生成tags_glibc文件。但是在C源文件中输入pri,然后C-xC-o,弹出的菜单里面,只有stdio2.h中的printf的定义和原型声明,而没有stdio.h的printf声明。令人奇怪的是,我用vim查看生成的tags文件,搜索printf,发现有如下三条entry:printf /usr/include/bits/stdio2.h /^printf(__constchar*__restrict__fmt,...)$/;" fprintf /usr/include/bits/stdio2.h 108;" dprintf /usr/include/stdio.h /^externintprintf(__constchar*__restrict__format,...);$/;" p最后一条表明ctags的确生成stdio.h中的printf的原型声明(类型为p),但是为什么我在insert模式下,输入pri,却看不见第三条呢?我错在哪里了??fprintf(stdio.h,stdio2.h中都有该符号),memcpy(string.h,string3.h中都有)等函数也出现了同样的现象。环境我的系统是fedora17(3.6.3-1.fc17.i686),ctags是最新版,5.8的用的ctags命令如下:ctags--langmap=c:.c.h--language-force=c-h.h--c-kinds=+pxl--exclude='tags*'--exclude='*swp'--exclude='*~'--exclude='*[!ch]'-I_THROW-I__attribute__+-I__wur-ftags_glibc-Lglibc-headers-filelist.txt其中,glibc-headers-filelist.txt的生成是如下命令:rpm-qlglibc-headers|grep'\.h'>glibc-headers-filelist.txt问题各位vim高手,请问有没有办法能够比较好地生成glibc头文件的tags文件
2 回答
慕神8447489
TA贡献1780条经验 获得超1个赞
使用tags文件时,需要在tags所在的目录打开vim。不同目录时需要在vim里设置tags变量,变量值为tags文件路径。例如::settags=....../tags_glibc
添加回答
举报
0/150
提交
取消