Si je vim ouvert avec plusieurs fichiers sur la ligne de commande, par exemple vim debug.log*
qui charge debug.log
, debug.log.1
et debug.log.2
, puis - je naviguer entre eux, de les affecter à plusieurs fenêtres ( :split
/ :vsplit
) ou tel?
Le seul raccourci que je connaisse pour ce mode de fonctionnement est celui :n
qui charge le fichier suivant de la liste. Que puis-je faire de plus dans ce mode de fonctionnement multi-fichiers? (ou quel sujet d'aide couvre cela?)
:previous
(ou:prev
) est l'inverse de:n
, et remonte un fichier.Réponses:
La rubrique d'aide la plus pertinente est
:ls
, également appelée:files
ou:buffers
.Dans votre
vim debug.log*
exemple, si vous donniez la:ls
commande, vous verriez:… Indiquant que le premier est le tampon actif.
Pour ouvrir
debug.log.2
dans la fenêtre actuelle, donnez la commande:b 3
ou:b debug.log.2
pour afficher le tampon 3.Pour diviser la fenêtre et y ouvrir le tampon 2, donnez la
:sb 2
commande. La version à division verticale de cela est:vert sb 2
.Il existe de nombreuses variantes de la
:b
commande; parcourez les rubriques d'aide citées ici pour vous faire une idée.De plus, vous pouvez invoquer
vim -o debug.log*
pour ouvrir tous les fichiers, chacun dans sa propre division, ouvim -O debug.log*
pour les ouvrir chacun dans une division verticale.la source
En plus de la fonctionnalité brute de vim mentionnée par 200_success, l'écosystème de Vim est plein de plugins pour fournir des fonctionnalités supplémentaires, telles que:
Cependant, avant de commencer à utiliser des plugins, il est préférable de bien comprendre les tampons et les fenêtres dans vim.
la source
Vous pouvez également ouvrir vim avec différents paramètres.
Ouvre les fichiers dans des onglets:
Ouvre les fichiers en divisions verticales:
Il y a un plugin cool et assez puissant appelé CtrlSpace:
https://github.com/szw/vim-ctrlspace
C'est très pratique si vous devez travailler avec de nombreux fichiers. Vous pouvez simplement imaginer ctrl-espace comme une propre liste de tampons pour chaque onglet. Il fournit un moyen très simple de naviguer entre les fichiers, comme le dit l'auteur:
la source
Si vous souhaitez ouvrir un fichier particulier sans avoir à passer par
:ls
, vous pouvez utiliser l'une des options suivantes::vs filename
ouvre le fichier dans une division verticale:sp filename
fait de même, mais dans une division horizontale:tabe filename
s'ouvre dans un nouvel ongletIl convient également de savoir que si vous ne spécifiez pas de nom de fichier, vous ouvrirez un nouveau fractionnement / onglet du fichier actuel, ce qui peut être pratique pour les fichiers longs.
la source
:t
est la commande de copie. Car:tabedit
vous en avez besoin au moins:tabe
.Il existe quelques raccourcis utiles pour parcourir plusieurs fichiers:
CTRL-^
(oùN
est le numéro de tampon) pour accéder au fichier précédemment modifié.N CTRL-^
(oùN
est le numéro de tampon) pour passer à un tampon spécifique.Par exemple:
C'est équivalent à
:buffer N
.Utilisez
:Ex
/:Sex
/:Vex
pour naviguer dans le répertoire courant.Utilisez
:tabs
plutôt (vim -p
) avec certains raccourcis personnalisés dans votre,.vimrc
tels que:Utilisez
:ba
/:vert ba
pour diviser, sautez dans le tampon sélectionné via Control+w, w/ W, puis faites-en la fenêtre actuelle (:on
).la source