VIM définit des ctags dans .vimrc
J'ai mes projets dans /srv/http/dev dossier. J'ai généré ctags fichier d'un projet:
$ ctags -R --languages=php .
Maintenant je l'ai mis ctags chemin:
:set tags=/srv/http/dev/proj/tags
Et ça fonctionne.
Mais j'ai beaucoup de projets dans dev/dossier. Comment puis-je définir ctags .fichiers vimrc? set tags=tags
ne fonctionne pas correctement.
Et je voudrais générer des balises de fichiers en appuyant sur la touche de raccourci sur une sélection de NERDTree dossier. J'ai essayé:
nmap <silent> <F4>
\ :!ctags -R
\ --languages=php .<CR>
Mais il crée des balises de fichiers dans le dossier d'accueil et affiche des avertissements à propos de la numérisation du dossier d'accueil..
EDIT:
@Alexandru Plugaru informé que je devrais utiliser g:NERDTreeFileNode.GetSelected() la fonction.
Que je suis juste débutant vim utilisateur, de sorte que j'ai une autre question. J'ai ajouté dans mon .fichiers vimrc:
function createTags()
let curNodePath = g:NERDTreeFileNode.GetSelected().path.str
exec ':!ctags -R --languages=php ' . curNodePath
endfunction
nmap <silent> <F4> :execute createTags()<CR>
Mais en appuyant sur F4, je vois:
E117: Unknown function: createTags
E15: Invalid expression: createTags
EDIT 2: Grâce à @Alexandru Plugaru j'ai obtenu ceci:
function CreateTags()
let curNodePath = g:NERDTreeFileNode.GetSelected().path.str()
exec ':!ctags -R --languages=php -f ' . curNodePath . '/tags ' . curNodePath
endfunction
nmap <silent> <F4> :call CreateTags()<CR>
Et ça marche!!! En appuyant sur F4-je obtenir des balises de fichiers dans le dossier du projet.
source d'informationauteur Dmitry Teplyakov
Vous devez vous connecter pour publier un commentaire.
C'est parce que le répertoire courant de vim est le répertoire d'accueil. Vous devez soit modifier le chemin d'accès ou créer nerdtree plugin. Voir nerdtree_plugin répertoire pour un exemple. Je pense que vous trouverez cette fonction intéressante:
g:NERDTreeFileNode.GetSelected()
Fonctions sont censés commencer avec une lettre majuscule. Changement
createTags
àCreateTags
.D'utilisation spécifiques à un projet
tags
fichiers, vous aurez besoin d'ajouter quelque chose comme ça pour votre.vimrc
:de sorte que Vim recherche un
tags
fichier dans le répertoire courant de la première et jusqu'à ce qu'il trouve. De plus, j'aimeset autochdir
: le répertoire de travail est toujours celui contenant le fichier en cours.dans votre .vimrc utilisation:
Je crois que la virgule est le séparateur.