extension vim et NERD Tree - ajout d'un fichier

400

Lorsque vous utilisez l'éditeur vim avec le plugin NERDTree pour naviguer dans l'arborescence de votre projet, existe-t-il un moyen facile de créer un nouveau fichier de code source sous le répertoire actuellement mis en surbrillance?

Actuellement, je vais dans mon shell, j'ajoute le fichier puis je rafraîchis l'arborescence. Il doit y avoir un meilleur moyen.

Daniel
la source

Réponses:

857

Activez NERDTree et accédez au répertoire dans lequel le nouveau fichier doit se trouver. Appuyez ensuite sur mpour afficher le menu du système de fichiers NERDTree et choisissez a«ajouter un nœud enfant». Entrez ensuite simplement le fichier (ou le nom du répertoire) et vous avez terminé.

innaM
la source
31
J'ajouterai que si vous ajoutez un nom de répertoire, n'oubliez pas d'entrer un "/" après le nom.
Buffalo Billion
14
Tapez "?" et découvrez plus d'options de NERDTree qui pourraient vous faire gagner du temps.
starikovs
Existe-t-il un moyen de créer plusieurs répertoires les uns dans les autres avant la création du fichier ... par exemple [ma] alors: oùiam / newdir1 / newdir2 / somefile ne fonctionne pas, mais [ma] alors: whereiam / newdir1 / newdir2 / works (bien que cela donne des erreurs, les répertoires sont créés).
juste le
Est-il possible d'enregistrer une étape et d'ouvrir automatiquement le fichier créé? Utilisez l'option de création tout le temps, mais 90% du temps souhaitent commencer à éditer le fichier dans un nouveau tampon juste après la création.
arcseldon
Est-il possible d'ajouter deux ou plusieurs fichiers à la fois dans NerdTree par ma?
Chang
44

Depuis vim, vous pouvez exécuter des commandes shell. Donc dans ce cas, j'utilise:

:!touch somefile.txt

puis appuyez sur rpour recharger la fenêtre nerdtree.

L'autre chose à faire est de simplement démarrer le nouveau fichier depuis vim.

:e somefile.txt

Une chose pratique pour cela est que dans mon .vimrc, je change automatiquement le cwd dans le répertoire où se trouve mon fichier actuel:

" Auto change the directory to the current file I'm working on

autocmd BufEnter * lcd %:p:h 

De cette façon, si j'édite un fichier et que j'en veux un autre au même endroit, le chemin est modifié juste là. L'ouverture d'un fichier à partir de NERDTree définit le répertoire dans celui dans lequel se trouve le fichier.

Meule
la source
10
Appuyez sur R (en majuscule) à la place pour rafraîchir la fenêtre. Les minuscules r actualisent uniquement le répertoire sous le curseur.
Andrew