Si j'ai eu x ou plusieurs fenêtres ouvertes dans une session VIM et que je voulais masquer rapidement toutes les fenêtres sauf la active pendant un moment, puis remettre les fenêtres dans la disposition que je leur avais, comment faire?
Si j'ai eu x ou plusieurs fenêtres ouvertes dans une session VIM et que je voulais masquer rapidement toutes les fenêtres sauf la active pendant un moment, puis remettre les fenêtres dans la disposition que je leur avais, comment faire?
Réponses:
Dans Vim 7 et versions ultérieures, vous pouvez utiliser une «page à onglet» pour cela (c'est-à-dire un onglet «de style GUI»). Vous pouvez utiliser la :tab
commande avec :split
ou :sbuffer
:
:tab split
:tab sp " shorter version
:tab sbuffer
:tab sb " shorter version
Les deux split
et sbuffer
font presque la même chose lorsqu'ils sont utilisés sans arguments supplémentaires (diviser le tampon actuel). Vous voudrez probablement utiliser split
si vous prévoyez de charger un nom de chemin (peut-être pas déjà chargé) ( split path/to/some/file
; bien que vous puissiez simplement utiliser à la :tabe
place car c'est dans le contexte de l'ouverture d'un nouvel onglet); sbuffer
facilite le passage à un tampon existant ( sb {bufnum}
ou sb {bufname}
).
Une fois votre nouvel onglet ouvert, vous pouvez utiliser gT
et gt
pour basculer entre les onglets résultants (ou les contrôles GUI si vous utilisez une version GUI de Vim). Lorsque vous avez terminé avec votre onglet de fenêtre unique, il suffit :q
de fermer la fenêtre (et donc l'onglet) et de revenir à votre onglet d'origine (avec sa disposition de fenêtre d'origine), ou utilisez :tabclose
( :tabc
), ou revenez à votre onglet d'origine et utilisez :tabonly
( :tabo
).
J'utilise CTRL-W _ pour "pousser" horizontalement les autres fenêtres de manière à ce que la fenêtre en cours se développe dans la plus grande zone disponible. Utilisez CTRL-W | faire la même chose verticalement. Je suis sûr qu'il y a probablement un moyen de faire les deux à la fois, mais je ne l'ai pas remarqué ou cherché. Regardez dans: aidez CTRL-W
Pour les restaurer, faites CTRL-W =. Une mise en garde est cependant qu'ils ne sont pas restaurés à leur configuration d'origine. CTRL-W = recalcule en fait le meilleur ajustement pour toutes les fenêtres de l'écran.
Pour autant que je sache, il n'y a aucun moyen de basculer simplement entre deux dispositions de fenêtres différentes, mais vous pouvez masquer toutes les autres fenêtres en exécutant la commande :only
(ou :on
). Voir l' aide de Vim pour cette commande .