有没有办法在vim中压缩tagfile

时间:2010-09-12 23:00:50

标签: vim gzip ctags compression

当我运行命令时,我正按照teuton.blogspot.com的指南设置自动完成功能:

ctags –R --c++-kinds=+p --fields=+iaS --extra=+q \
    -f ~/.vim/commontags /usr/include

生成一个标记文件,只是意识到该命令会生成一个1.5GB的'commontags'文件 - 比我想要的要大一点,毫无疑问。所以我想知道是否有一些压缩文件的方法并让vim仍然认出它?

我尝试通过gzip运行它,将其转换为25MB,但我没有运气让vim使用该文件。

有什么想法吗?我将不胜感激!

/ B2S

2 个答案:

答案 0 :(得分:5)

即使你可以压缩标签文件,vim仍然会有解压缩搜索的开销。

你最好的选择是排除你不需要的东西。大多数/ usr / include /都可能是安装源包所需的dev文件。

最好创建与开发项目相关的标记文件。当你提交标签跳转到它时,基本上选择加入目录。而不是建立一个庞大的无关标签列表。即使您的机器处理速度足够快,您仍然需要处理重复的名称。

如果你想吸收你可以使用的所有东西 - 排除将其砍成可管理的大小。即。黑名单而不是白名单。

man ctags
/--exclude <-- to search for exclude 

我个人会做类似

的事情
`ctags –R --c++-kinds=+p --fields=+iaS --extra=+q \
-f ~/.vim/commontags /usr/include/lib_i_need_a /usr/include/lib_i_need_b `

答案 1 :(得分:5)

使用--excmd=number会将文件大小减少约50%,因为ctags只会存储匹配行号而不是搜索模式。如果/usr/include中的文件不经常更改,这应该没问题。