Je me trouve dans la position où je veux créer un nouveau fichier dans le même répertoire que celui dans lequel se trouve le fichier ouvert. Comment créer un nouveau fichier dans le répertoire du fichier ouvert dans vim? De plus, y a-t-il un endroit où je peux apprendre ces choses par moi-même? Googler n'a pas aidé.
93
Réponses:
À partir de Vim, de nouveaux fichiers sont créés comme les fichiers existants sont modifiés, via des commandes telles que
:edit filename
ou:split filename
. Pour les conserver sur le disque, vous devez (éventuellement taper le contenu et) les conserver via:write
.Comme une invite de commande, Vim a une notion de répertoire courant (le
:pwd
répertorie). Tous les chemins de fichiers lui sont relatifs. Vous n'avez pas besoin de dupliquer le chemin vers votre fichier actuel, il y a quelques raccourcis intéressants pour eux:%
fait référence au fichier courant,:h
est un modificateur pour son répertoire, moins le nom du fichier (cp.:help filename-modifiers
) Donc,créera un nouveau fichier nommé
filename
dans le même répertoire que le fichier actuellement ouvert et l'écrira.Alternativement, certaines personnes aiment Vim pour toujours passer au répertoire du fichier actuel. Cela peut être configuré en plaçant
dans votre
~/.vimrc
fichier (qui est lu au démarrage de Vim). Ensuite, ci-dessus devient simplementEnfin, Vim a un excellent intégré
:help
. Apprenez à naviguer et à le rechercher!la source
autochdir
est floconneux, malheureusement, et j'ai trouvé que je ne pouvais pas compter dessus. Au lieu de cela, j'ai mis un autocmd dans mon vimrc:autocmd BufEnter * silent! lcd %:p:h:gs/ /\\ /
vous devriez essayer avec le plugin "nerdtree". Dans la fenêtre nerdtree, vous avez tapé la touche m et les choix d'opération de fichier vous seront affichés
la source
Si vous souhaitez créer un nouveau fichier et l'afficher également dans la fenêtre à côté de votre fichier actuel, vous pouvez essayer ceci:
Le
vsp
signifievertical split
, et il divise l'écran en deux, l'un montrant votre fichier actuel, l'autre montrant votre nouveau fichier (fonctionne également avec justesp
, qui est une division horizontale).Selon le commentaire de @ MartinLyne ci-dessus, cela créera le fichier dans le répertoire du fichier dans lequel vous avez ouvert
vim
. Pour régler cela, vous pouvez modifier le répertoire de travail actuel comme suit:Cette commande remplace le répertoire de travail actuel par le répertoire du fichier actif, ce qui signifie que l'exécution de la
vsp
commande (ou de l'une des commandes ci-dessus) créera le fichier dans ce répertoire.la source
Lorsque vous avez ouvert vim dans un emplacement inexistant comme
$ vim /etc/<some_folder/<next_folder>/file.cfg
puis pour créer un nouveau répertoire en étant à l'intérieur de vim, lancez simplement en mode normal
:! mkdir -p /etc/<some_folder/<next_folder>
et enregistrez votre doc comme d'habitude:w :x ZZ
(ce que vous voulez)c'est ça
la source
C'est pour Gvim! Entrez ceci pour voir le répertoire actuel.
puis changez-le avec
puis enregistrez ou créez un nouveau fichier là-bas
maintenant voir à nouveau le fichier
la source
Je suis assez en retard à la fête, mais une autre option est d'ouvrir NERDtree avec
:E
ou:Explore
(ou ses alternatives de fractionnement:Vexplore
/:Sexplore
==:Vex
/:Sex
).Dans NerdTree, vous pouvez créer un nouveau fichier avec
%
et taper le nom. Il ouvrira automatiquement le fichier et le créera après l'avoir:w
enregistré.la source