J'essaie d'utiliser des CTAG avec Vim, et je suis un débutant aux deux. Afin de tester la mesure dans laquelle les CTAGs pourraient être utiles, j'ai décidé de la mettre à travers un test très simple, à savoir analyser les en-têtes / usr / incluent afin que je puisse faire suffisamment de fonctions de base.
Quand je cours le commande p> puis la sortie imprime p> si clairement CTAG a raté des fonctions très évidentes comme Fopen, mais elle incluait des fonctions comme fcfrose. Y a-t-il une certaine option que je manque quand je pars avec des CTAG? p> p>
4 Réponses :
Ajouter un Pour une explication plus de Thuough, voir: p>
http://sourceforge.net/mailarchive/message. PHP? MSG_NAME = 48A7FF60.9080609% 40Sina.com P> -I__Wur code> à votre commande CTAGS et vous obtiendrez le résultat que vous après.
__ wur code> est une macro pour __ attribut__ ((__warn_unused_result __)) code> p>
Oh, je vois, y a-t-il une manière générale dans laquelle dire aux CTAG que je préfère les déclarations de fonction sur les macros correspondantes?
Quelques conseils pour que vous puissiez obtenir un fichier de balises plus spécifique: Le contenu du fichier libc6-ignore sont les suivants: p> Je suppose que vous utilisez cela avec VIM et le plug-in OmnicppComplete? P> P>
juste plus de conseils, hth.
2 fort>. Utilisez des commandes ci-dessous pour générer un fichier CTAGS plus spécifique. P> # # obtenir plus de jetons être ignoré à l'aide de dpkg -l libc6-dev | grep -o '/usr/include/.*h'> ~ / .vim / tags / libc6-dev_files code> pour obtenir des en-têtes à GNU C bibliothèque. P> mkdir code> si nécessaire. p> grep code>. P> ctags --c++-kinds=+px --fields=+iaS --extra=+q -I @./libc6-dev_ignore-tokens -L libc6-dev_files -f libc6-dev_tags
même problème. Résolu avec l'option -i. Vérifié ce site pour info: http://ctagns.sourceforge.net/ctus.html#OPTIONS P>
Notez un couple de "Gotcha's". Tout d'abord, lors de la spécification -i avec un fichier contenant la liste des ignorés, il doit être suivi immédiatement par un @ ou un. ou une lettre d'entraînement (si sous Windows). J'ai passé des heures à utiliser -i ~ / sans succès. Même chose avec -i / home / nom d'utilisateur / travaillé comme un charme. P>
Deuxièmement, assurez-vous d'utiliser une analyse multiligne (--Fields = + S). Ceci est déjà indiqué comme une option utilisée par l'OP dans ce fil mais voulait la pointer de nouveau. P>
Merci à tous les autres pour les conseils impressionnants! P>