微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Vim自动生成ctags

现在我在我的.vimrc中有以下:
au BufWritePost *.c,*.cpp,*.h !ctags -R

这里有几个问题:

>很慢 – 为自上次生成代码以来没有更改的文件重新生成代码
>由于不可避免的“按Enter键或键入命令继续”,在写入文件后,我必须再次按下Enter按钮。

当你结合这两个问题,我最终推送额外的输入太快(在ctags -R完成之前),然后看到恼人的错误消息,并必须再次输入。

我知道这听起来不是一个大问题,但随着文件写入量,我在一个特定的日子,它往往会变得非常讨厌。有必要做一个更好的方法

au BufWritePost * .c,*。cpp,*。h silent! !ctags -R&

缺点是你不会有一个有用的标签文件,直到它完成。只要你在一个* nix系统上,应该可以在以前的ctags完成之前做多个写入,但是你应该测试一下。在Windows系统上,它不会把它放在后台,它会抱怨文件被锁定,直到第一个ctags完成(这不应该导致vim的问题,但你会得到一个稍微过时的标签文件)。

注意,你可以使用–append选项作为tonylo建议,但是你必须禁用tagbsearch,这意味着标签搜索需要很长时间,这取决于标签文件的大小。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐