为C/C++标准库,boost和第三方库设置单独的ctags db

我想为/usr/include /中的各种库设置单独的ctags数据库,以便与OmniCppComplete一起使用.

我们的想法是只能引入目标语言(C或C)中特定项目所需的库.

例如,我想为标准C库创建一个数据库,一个用于C或C程序可能使用的系统库(想到套接字/网络),一个用于标准C libs / STL / Boost,然后是各种第三方库的其他数据库,如QT或glib.然后我可以通过在vim中输入set tags =〜/ .vim / somelib.tags来简单地提取一些东西.

我假设与C stdlib和STL相关的所有内容都在/usr/include / c中,并且Boost全部在/usr/include / boost中.不幸的是,似乎标准的C libs和系统库只是直接转储到/usr/include /和其他各种东西.

如何获取哪些文件和目录属于哪些库的列表?我在Ubuntu 8.04上.

解决方法:

apt-file是你在Ubuntu的朋友.

以下命令将为您提供Boost的所有包含文件的列表:

apt-file list -x "^libboost" | grep '/include/' | cut -f2 -d:

我将把剩下的作为练习留给读者!

更新:为了完整性,如果您以前从未使用过apt-file,请调用apt-file update.

上一篇:webbench接口并发测试


下一篇:tagbar 调到函数定义再跳回