Вы можете прочитать необработанные данные из тегов в буфер с помощью taglist (). Затем вы можете искать в буфере другие критерии, которые вас интересуют, включая имена классов и части каталога файлов.
Для более точного поиска "mytag" попробуйте:
:new | put =taglist(\"^mytag$\")
Чтобы получить больше информации, обязательно используйте Exuberant Ctags .
После поиска нужных данных вы увидите имя файла, связанное с тегом с префиксом 'filename': и текст строки с префиксом 'Cmd': 1018 *.
Помещение в функцию с некоторым кодом для украшения и правильной обработки буфера:
" List information about matching tags in a buffer
function! BrowseTags(tagStr)
new [Tag Brower]
setlocal buftype=nofile bufhidden=wipe nobuflisted noswapfile nowrap
put =taglist(a:tagStr)
" Beautify it a little
normal 1G
while search('^{', 'W')
call setline(".", split(getline("."), "\\(\\(}$\\)\\|\\('\\w\\+':\\)\\)\\@="))
endw
normal 1G
endfunc
Вы можете использовать call BrowseTags ("^ myTag $") , чтобы запустить функцию для точного совпадения myTag , или используйте регулярное выражение для получения похожих совпадений.
Хотя я никогда не удосужился сделать это, не так уж сложно написать различные команды для автоматизации ваших самых распространенных задач без открытия буфера.