Fermer tous les fichiers divisés, sauf celui qui est actuellement ciblé?

34

Parfois, lorsque je travaille sur un fichier, j'ouvre plusieurs fichiers uniquement pour avoir une idée du flux actuel du code jusqu'à un certain point. Cependant, cela conduit parfois à ouvrir plusieurs fichiers à la fois par division. Existe-t-il une commande pour tout quitter sauf la fenêtre sélectionnée?

Dom
la source

Réponses:

41

Si vous souhaitez fermer toutes les fenêtres (divisions) sauf la fenêtre actuelle:

:only

Si vous souhaitez fermer tous les onglets sauf celui en cours:

:tabonly

Si vous souhaitez supprimer tous les tampons masqués (fichiers ouverts mais non visibles dans aucune fenêtre d’onglet), vous devez ajouter une fonction à votre vimrc. Certaines personnes ont posté des fonctions possibles ici et ici

Je ne sais pas exactement laquelle de ces tâches vous avez essayé, mais j'espère qu'une combinaison de ces commandes fera l'affaire.

Matt Boehm
la source
27

Appuyez sur Ctrl+w, opour fermer rapidement toutes les fenêtres divisées, mais la plus récente.

Vous pouvez également utiliser la commande: :on( :only).

: on [ly] [!] Fait de la fenêtre actuelle la seule à l'écran. Toutes les autres fenêtres sont fermées.

Voir également:

Kenorb
la source
2
Ctrl + W, o <<< cela devrait être accepté. Réponse
Léo
Ce serait cool si vous pouviez basculer en deux, comme le zoom dans Tmux. Quelqu'un sait si c'est possible?
Domi91c
1
@portOdin Vous devez alors poser une autre question.
Kenorb
Est-ce que "fermer" signifie ici fermer les tampons (équivalent de :q) ou simplement les cacher?
stillanoob
@ stillanoob Je pense qu'ils sont fermés, comme :tabsne leur montre pas.
Kenorb