VIM在.vimrc中设置ctags

前端之家收集整理的这篇文章主要介绍了VIM在.vimrc中设置ctags前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的项目在/ srv / http / dev文件夹中.我为一个项目生成了ctags文件
$ctags -R --languages=PHP .

现在我设置ctags路径:

:set tags=/srv/http/dev/proj/tags

它工作正常

但是我在dev /文件夹里有很多项目.如何在.vimrc文件中设置ctags? set tags =标签无法正常工作.

我想通过在所选的NERDTree文件夹上按热键生成标签文件.我试过了:

nmap <silent> <F4>
    \ :!ctags -R
    \ --languages=PHP .<CR>

但是它会在主文件夹中创建标签文件,并显示有关扫描主文件夹的警告.

编辑:
由于@Alexandru Plugaru建议我应该使用g:NERDTreeFileNode.GetSelected()函数.

我只是newbie vim用户,所以我还有一个问题.我已经添加到我的.vimrc文件中:

function createTags()
    let curNodePath = g:NERDTreeFileNode.GetSelected().path.str
    exec ':!ctags -R --languages=PHP ' . curNodePath
endfunction
nmap <silent> <F4> :execute createTags()<CR>

但是按F4我看到:

E117: Unknown function: createTags
E15: Invalid expression: createTags

编辑2:感谢@Alexandru Plugaru我得到了:

function CreateTags()
    let curNodePath = g:NERDTreeFileNode.GetSelected().path.str()
    exec ':!ctags -R --languages=PHP -f ' . curNodePath . '/tags ' . curNodePath
endfunction
nmap <silent> <F4> :call CreateTags()<CR>

它的工作原理按F4,在项目文件夹中获取标签文件.

那是因为vim的当前目录是主目录.您需要更改路径或创建nerdtree插件.请参阅nerdtree_plugin目录一个例子.我认为你会发现这个功能很有趣:

G:NERDTreeFileNode.GetSelected()

原文链接:https://www.f2er.com/bash/386535.html

猜你在找的Bash相关文章