我在 FreeBSD 和 Linux 操作系统上都使用 vim,共享相同的 .vimrc 配置文件。有一个问题,在 FreeBSD 上 ctags 二进制路径是 /usr/local/bin/exctags,而在 linux 上是 /usr/bin/ctags。那么如何检测操作系统类型并分别设置ctags二进制路径呢?
更新:
我发现一旦安装了 taglist 插件,它会自动检测 ctags 路径并将其存储在 g:Tlist_Ctags_Cmd 变量中。
我在 FreeBSD 和 Linux 操作系统上都使用 vim,共享相同的 .vimrc 配置文件。有一个问题,在 FreeBSD 上 ctags 二进制路径是 /usr/local/bin/exctags,而在 linux 上是 /usr/bin/ctags。那么如何检测操作系统类型并分别设置ctags二进制路径呢?
更新:
我发现一旦安装了 taglist 插件,它会自动检测 ctags 路径并将其存储在 g:Tlist_Ctags_Cmd 变量中。
前段时间我遇到了同样的问题,我是这样解决的:
if executable('exctags')
" On Free-BSD, exuberant ctags is installed as exctags
let l:sCtagsName = 'exctags'
elseif executable('ctags')
let l:sCtagsName = 'ctags'
endif
然后我使用变量l:sCtagsName
来调用 ctags。这对我来说很好。
而且,只要你在 Vim 中使用 ctags,为什么不使用专门为此制作的插件Indexer ?它会自动为项目的所有文件生成标签并保持标签是最新的。您可能想查看我的另一个答案以获取更多详细信息。