2010-03-05 3 views
8

J'utilise le plugin Taglist dans vim. Dans la fenêtre des listes de balises, je peux voir des balises comme des espaces de noms, des classes, des structures, des fonctions mais pas des variables. J'ai vu une capture d'écran (ci-joint) sur le site Taglist qui avait cette info. J'utilise Vim 7 et Exubérant Ctags 5.8, et j'ai généré mes ctags en utilisant cette commandeComment afficher les variables dans la fenêtre Liste de balises dans vim

ctags --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ 

alt text http://vim-taglist.sourceforge.net/images/taglist_c.gif

Répondre

7

Il existe une variable s:tlist_def_cpp_settings dans le plugin Taglist (.vim/plugin/taglist.vim) qui définit les éléments affichés par défaut.

J'étendu à:

let s:tlist_def_cpp_settings = 'c++;n:namespace;v:variable;d:macro;t:typedef;' . \ 'c:class;g:enum;s:struct;u:union;f:function;m:member;' . \ 'p:prototype'

Selon le manuel taglist vous pouvez également définir tlist_cpp_settings dans votre .vimrc avec une valeur similaire.

Pour d'autres langues, différentes variables existent.

1

Pour autant que je sache, le plugin tagList ne montre que les variables qui ont fichier portée. Il n'affiche pas les variables qui ont uniquement une portée de fonction. Pour un test rapide, ajoutez simplement une variable de n'importe quel type au début de votre fichier source , enregistrez le fichier source, placez le curseur dans la fenêtre de liste de tags et appuyez sur u pour mettre à jour la liste de mots-clés. Cette variable devrait maintenant apparaître dans la fenêtre de liste de tags. Cela fonctionne pour mes fichiers C.

Soit dit en passant:

... et j'ai généré mes ctags en utilisant cette commande

ctags ++ --c - types = + p --fields = + = + iaS --extra q --language force = C++

Voulez-vous dire que vous générez votre propre fichier tags pour le plug-in taglist en utilisant ces options ctags? A ma connaissance, le taglist utilise ses propres options ctags et génère un fichier temporaire . L'utilisateur n'a aucune influence sur les options ctags et le fichier de tags.

+0

Affiche-t-il les variables de classe –

+0

Utilisez let tlist_cpp_options pour définir des options sur la façon dont taglist exécute ctags. (: help taglist-extend) En réponse, il exécute ctags lui-même à la volée et affiche les résultats de cette façon. Il n'utilise pas de fichier ctags. – Bazman