vim-tagbar springt nicht zu Methodendefinitionen, zumindest für Ruby

463
Thermatix

Ich benutze die vim-Plugin-Tag-Leiste, aber bei Ruby scheint das nicht zu funktionieren, zumindest nicht ganz. Anfangs funktionierte es überhaupt nicht, aber durch die Änderung der Konfiguration so, dass Ripper-Tags wie folgt verwendet wurden:

let g:tagbar_type_ruby = { \ 'kinds' : [ \ 'm:modules', \ 'c:classes', \ 'd:describes', \ 'C:contexts', \ 'f:methods', \ 'F:singleton methods' \ ], \ 'ctagsbin': 'ripper-tags', \ 'ctagsargs': ['-f', '-'] \ } 

Ich kann die Tags anzeigen, aber durch Drücken der Eingabetaste in der Tag-Leiste springen Sie nicht zur Methodendefinition / Konstante. Stattdessen springen Sie einfach zum Anfang der Datei und zu nichts anderem.

PS Ich habe Ctags installiert, nur Sie fragen sich

PPS Es funktionierte einwandfrei, aber ich habe vor einiger Zeit etwas getan und jetzt funktioniert es mit normalen Ctags überhaupt nicht. Ich denke, es ist eine Konfigurationsoption oder ein Plugin, aber ich weiß nicht, was es überhaupt macht. wenn du nachsehen willst, hier sind meine dotfiles .

1

1 Antwort auf die Frage

1
Larry Lv

Dies liegt daran ripper-tags, dass die Standardausgabe keine Zeilennummerninformationen enthält. Ich habe eine Pull-Anforderung geöffnet, um sie zu beheben: https://github.com/tmm1/ripper-tags/pull/65 .
Sie könnten es versuchen durch:

  1. Klonen Sie mein Repo und wechseln Sie zu add-line-number-to-vim-formatterBranch
  2. Bauen Sie den Edelstein lokal auf und installieren Sie ihn

Dann sollte die Tagbar gut funktionieren.

GROSSARTIGE SOSSE! Das löst zwar nicht, warum ich überhaupt Ripper-Tags verwenden muss (was fair nicht die Frage von OP ist), aber ich werde dies auf jeden Fall nutzen, danke! Thermatix vor 6 Jahren 0