Si vous éditez un fichier dans VIM et que vous devez ensuite ouvrir un tampon existant (par exemple à partir de votre liste de tampons:) :buffers
comment pouvez-vous l'ouvrir dans une division verticale?
Je sais que vous pouvez déjà l'ouvrir avec un split normal comme:
:sbuffer N
WeHere N
est le numéro de tampon que vous voulez, cependant, ce qui précède ouvre ce N
tampon horizontalement, pas verticalement.
Je suis également conscient que vous pouvez modifier le placement de la fenêtre après l'ouverture et avoir une division verticale comme ceci:
Ctrl-W H
Ctrl-W L
Ce qui divisera verticalement la fenêtre vers la droite ou la gauche.
Il me semble que s'il y a un sbuffer
il devrait y avoir un vsbuffer
mais qui n'existe pas (pas que je sache)
Veuillez noter également que je ne recherche pas de plugin pour résoudre cette question. Je connais une multitude de plugins qui vous permettront de faire cela.
Je suis sûr qu'il me manque peut-être quelque chose qui existe déjà.
EDIT: Dans le meilleur esprit de collaboration, j'ai créé une fonction simple avec un mappage si quelqu'un d'autre tombe sur ce problème et ne veut pas installer de plugin:
Fonction:
" Vertical Split Buffer Function
function VerticalSplitBuffer(buffer)
execute "vert belowright sb" a:buffer
endfunction
Cartographie:
" Vertical Split Buffer Mapping
command -nargs=1 Vbuffer call VerticalSplitBuffer(<f-args>)
Cela accomplit la tâche d'ouvrir un tampon dans une division à droite, donc pour le tampon 1, vous l'appelleriez comme:
:Vbuffer 1
vsbuffer N
? Énervant. Votre réponse le cloue. Merci!vsbuffer
aussi, et j'oublie aussi souventCtrl-w T
d'ouvrir un tampon dans un nouvel onglet (ou je veux le faire avec un tampon qui n'est actuellement ni actif ni visible). Donc, comme alternative, vous pouvez utiliser une barre pour l'un ou l'autre de ces cas, que je trouve plus facile à retenir que la réponse valide de @ Jeet::vsp | b N
et:tabe | b N
.N
d'être autocomplétée (ce qui ne semble pas possible avec la commande dans l'autre réponse). Les deux ont néanmoins voté pour.:vsp | b1
1 étant un numéro de tampon. Utilisez
buffers
pour lister tous les tampons.Voici quelques informations supplémentaires sur les fractionnements, si cela vous intéresse. Lien
la source
:ls
, qui semble être un raccourci pour:buffers
.:vsp | b <buffer name>
Vous pouvez soulager votre douleur en ajoutant ce qui suit à votre .vimrc
Vous pouvez maintenant l'utiliser de la manière suivante.
la source
Vous pouvez également combiner
:ls
qui répertorie vos tampons actuels et les commandes pour ouvrir le tampon souhaité dans l'un ou l'autre:b <N/bufname>
:vsp | b <N/bufname>
:sp | b <N/bufname>
Pour cela, j'ai ajouté les mappages suivants à mon
~/.vimrc
(l'ordre des mappages représente la liste ci-dessus des fenêtres souhaitées)Sur cette base, vous pouvez voir la liste des tampons dès que vous appuyez sur
<leader>b
<leader>v
<leader>s
puis entrez simplement le numéro de tampon souhaité
N
. Cela ouvrira alors le tampon dans la fenêtre souhaitée. Vous pouvez bien sûr toujours utiliser une partie du nom du tamponbufname
.J'ai mappé le
<leader>
à,
basé surPour certaines personnes (par exemple moi), cela pourrait même remplacer des plugins comme MiniBufExpl et ainsi économiser de l'espace sur l'écran.
la source
vous pouvez utiliser Neovim, comme ça:
la source