gpt4 book ai didi

vim - ctags、vimwiki、vim 和 tagbar-plugin

转载 作者:行者123 更新时间:2023-12-04 17:30:21 35 4
gpt4 key购买 nike

我尝试为 wiki-file = vimwiki 创建标签。这是我对ctags的定义,存储为ctags.cnf

--langdef=vimwiki
--langmap=vimwiki:.wiki
--regex-vimwiki=/^=[ \t]+(.*)/\1/h,heading1/
--regex-vimwiki=/^==[ \t]+(.*)/2-\1/h,heading2/
--regex-vimwiki=/^===[ \t]+(.*)/3-\1/h,heading3/
--regex-vimwiki=/^====[ \t]+(.*)/4-\1/h,heading4/

调用 ctags --verbose index.wiki 结果:

...
Considering option file .\ctags.cnf: reading...
Option: --langdef=vimwiki
Option: --langmap=vimwiki:.wiki
Setting vimwiki language map: .wiki
Option: --regex-vimwiki=/^=[ \t]+(.*)/\1/h,heading1/
Option: --regex-vimwiki=/^==[ \t]+(.*)/2-\1/h,heading2/
Option: --regex-vimwiki=/^===[ \t]+(.*)/3-\1/h,heading3/
Option: --regex-vimwiki=/^====[ \t]+(.*)/4-\1/h,heading4/
Reading initial options from command line
Reading command line arguments
OPENING index.wiki as vimwiki language file
sorting tag file

生成的 tags 文件显示:

!_TAG_FILE_FORMAT   2   /extended format; --format=1 will not append ;" to lines/
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
!_TAG_PROGRAM_AUTHOR Darren Hiebert /dhiebert@users.sourceforge.net/
!_TAG_PROGRAM_NAME Exuberant Ctags //
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
!_TAG_PROGRAM_VERSION 5.8 //
2-!KnowledgeBase == index.wiki /^== !KnowledgeBase ==$/;" h
2-Dokumentation == index.wiki /^== Dokumentation ==$/;" h
2-Entwicklung == index.wiki /^== Entwicklung ==$/;" h
2-Essential Tools == index.wiki /^== Essential Tools ==$/;" h
2-TODO == index.wiki /^== TODO ==$/;" h
2-Vim-Mode in shell / bash /zsh == index.wiki /^== Vim-Mode in shell \/ bash \/zsh ==$/;" h
3-@home === index.wiki /^=== @home ===$/;" h
3-Clojure === index.wiki /^=== Clojure ===$/;" h
3-HTML5 & CSS3 === index.wiki /^=== HTML5 & CSS3 ===$/;" h
3-LaTeX === index.wiki /^=== LaTeX ===$/;" h
3-Online-Tools === index.wiki /^=== Online-Tools ===$/;" h
3-Open Source === index.wiki /^=== Open Source ===$/;" h
3-Vim === index.wiki /^=== Vim ===$/;" h
3-Wetware === index.wiki /^=== Wetware ===$/;" h
4-git ==== index.wiki /^==== git ====$/;" h
4-nosql ==== index.wiki /^==== nosql ====$/;" h
Self Org = index.wiki /^= Self Org =$/;" h

在我的 _vimrc 中添加了

let g:tagbar_type_wiki = {
\ 'ctagstype' : 'vimwiki',
\ 'kinds' : [
\ 'h:headings'
\ ],
\ 'sort' : 0,
\ 'deffile' : expand('<sfile>:p:h:h') . 'c:\\d\\ctags.cnf'
\ }

打开 index.wiki 和 :TagbarToggle 只会打开一个空的标签栏。

我的错误在哪里?

最佳答案

  • 感谢 Jan Larres 使用 :echo &ft 的提示,我找到了解决方案。
  • ctags.cnf 移动到用户配置文件路径也很有用。

我更新的 _vimrc

let g:tagbar_type_vimwiki = {
\ 'ctagstype' : 'vimwiki',
\ 'kinds' : [
\ 'h:header',
\ ],
\ 'sort' : 0
\ }

和我更新的ctags.cnf

--langdef=vimwiki
--langmap=vimwiki:.wiki
--regex-vimwiki=/^=[ \t]+(.+)[ \t]+=$/\1/h,header/
--regex-vimwiki=/^==[ \t]+(.+)[ \t]+==$/. \1/h,header/
--regex-vimwiki=/^===[ \t]+(.+)[ \t]+===$/. \1/h,header/
--regex-vimwiki=/^====[ \t]+(.+)[ \t]+====$/. \1/h,header/
--regex-vimwiki=/^=====[ \t]+(.+)[ \t]+=====$/. \1/h,header/
--regex-vimwiki=/^======[ \t]+(.+)[ \t]+======$/. \1/h,header/

关于vim - ctags、vimwiki、vim 和 tagbar-plugin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7037055/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com