L'utilisateur peut adapter son espace de travail sous Vim en coupant la fenêtre initiale (splits), en utilisant les onglets et en modifiant les barres d’états.
La fenêtre est une vue d'un buffer (tampon). Cette fenêtre initiale va pouvoir être scindée pour offrir plusieurs vues d'un même ou de plusieurs tampons.
Lorsqu'on invoque vim avec plusieurs fichiers en argument :
# Exécution de vim avec deux fichiers en argument vim hello.go go.mod
Depuis le mode normal sous Vim, on peut lister les buffers avec la commande ls
:ls 1 %a "hello.go" ligne 15 2 "go.mod" ligne 0
Vim retourne les informations liées aux buffers:
Une note plus détaillée est dédiée aux buffers de Vim.
On peut créer une nouvelle vue (fenêtre) en en scindant la fenêtre courante horizontalement ou verticalement:
Si l'on souhaite simplement afficher un fichier sans l’éditer la commande sview est disponible:
Pour directement créer un split et y afficher le buffer X on peut utiliser les commandes :
:sbX
split horizontal et affichage du buffer X ;:vert sbX
split vertical et affichag du buffer X.Pour changer de fenêtre on peut utiliser Ctrl+W Ctrl+W ou bien Ctrl+W et une touche direction h,j,k,l ( ou encore Ctrl+W + une touche fléchée).
Pour changer la disposition de deux fenêtres Ctrl+W R (rotate).
Dans Vim, un onglet peut contenir une ou plusieurs fenêtres c'est pourquoi on le compare en général à la notion de “workspace”. Pour lister les onglets utiliser la commande :tabs
.
Les commandes permettant de naviguer entre les onglets: :tabnext
, :tabprevious
, :tabfirst
, :tablast
Pour enregistrer la disposition des splits fenêtres/onglets:
:mksession
Lors de l’exécution de vim, pour utiliser la session précédemment enregistrée:
vim -S