2011-08-12 2 views
3

wiki-file = vimwiki에 대한 태그를 만들려고합니다. 이의 ctags --verbose index.wiki 결과를 호출 ctags.cnfctags, vimwiki, vim 및 tagbar-plugin

--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를 내 정의입니다 :

... 
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 파일이 보여줍니다

_vimrc에서
!_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 /[email protected]/ 
!_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 
[email protected] === 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 

은 내가

추가
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을 열면 빈 태그 바가 열립니다.

어디 까지나 오류가 있습니까?

+0

위키 파일을 설정하여'filetype' 설정은 무엇입니까 ctags.cnf? Tagbar 설정은'wiki'로 설정되어 있다고 가정하지만, 실제로'set filetype? '이보고하는 것은 무엇입니까? ctags.cnf가 표준 위치에 있다면'deffile' 설정이 필요하지 않습니다. 추가 파일을 위해서입니다. –

+0

filetype이 해결책입니다. tyvm! – vbd

+0

이것은 꽤 오래된 질문이지만 검색 초기에 여전히 등장합니다. FWIW vimwiki와 tagbar를 통합하는 "공식적인"버전이 vimwiki dev에 의해 게시됩니다 (https://github.com/vimwiki/utils/blob/master/vwtags.py). – Sparhawk

답변

4
  • Jan Larres에게 감사의 말 힌트 : :echo &ft 해결책을 찾았습니다.
  • ctags.cnf을 사용자 프로필 경로로 이동하는 것도 유용합니다.

_vimrc

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

및 업데이트 내 업데이트

--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/