Si está editando un archivo en VIM y luego necesita abrir un búfer existente (por ejemplo, de su lista de búfer :buffers
), ¿cómo puede abrirlo en una división vertical?
Sé que ya puedes abrirlo con una división normal como:
:sbuffer N
En ninguna parte N
está el número de búfer que desea, sin embargo, lo anterior abre ese N
búfer horizontalmente, no verticalmente.
También soy consciente de que puede cambiar la ubicación de la ventana después de abrir y tener una división vertical de esta manera:
Ctrl-W H
Ctrl-W L
Lo cual dividirá verticalmente la ventana hacia la derecha o hacia la izquierda.
Me parece que si hay un sbuffer
debería haber un vsbuffer
pero que no existe (no que yo sepa)
Además, tenga en cuenta que no estoy buscando un complemento para resolver esta pregunta. Conozco una gran cantidad de complementos que te permitirán hacer esto.
Estoy seguro de que podría estar perdiendo algo que ya está allí.
EDITAR: con el mejor espíritu de colaboración, he creado una función simple con un mapeo si alguien más se encuentra con este problema y no desea instalar un complemento:
Función:
" Vertical Split Buffer Function
function VerticalSplitBuffer(buffer)
execute "vert belowright sb" a:buffer
endfunction
Cartografía:
" Vertical Split Buffer Mapping
command -nargs=1 Vbuffer call VerticalSplitBuffer(<f-args>)
Esto lleva a cabo la tarea de abrir un búfer en una división derecha, por lo que para el búfer 1, lo llamaría así:
:Vbuffer 1
vsbuffer N
? Molesto. Tu respuesta lo clava. ¡Gracias!vsbuffer
también, y a menudo también me olvidoCtrl-w T
de abrir un búfer en una nueva pestaña (o quiero hacerlo con un búfer que actualmente no está activo o visible). Como alternativa, puede usar una barra para cualquiera de estos casos, que me parece más fácil de recordar que la respuesta válida de @ Jeet::vsp | b N
y:tabe | b N
.N
que se complete automáticamente (lo que no parece posible con el comando en la otra respuesta). Ambos votaron, sin embargo.:vsp | b1
1 siendo algún número de búfer. Use
buffers
para enumerar todos los buffers.Aquí hay información adicional sobre divisiones, si está interesado. Enlace
fuente
:ls
, que parece ser un atajo para:buffers
.:vsp | b <buffer name>
Puede aliviar su dolor agregando lo siguiente a su .vimrc
Ahora puede usarlo de la siguiente manera.
fuente
También puede combinar
:ls
esa lista de sus búferes actuales y los comandos para abrir el búfer deseado en:b <N/bufname>
:vsp | b <N/bufname>
:sp | b <N/bufname>
Para esto, he agregado las siguientes asignaciones a mi
~/.vimrc
(el orden de las asignaciones representa la lista anterior de ventanas deseadas)En base a esto, puede ver la lista de búfer tan pronto como presione
<leader>b
<leader>v
<leader>s
y luego simplemente ingrese el número de búfer deseado
N
. Esto abrirá el búfer en la ventana deseada. Por supuesto, también puede utilizar una parte del nombre del búferbufname
.Me asignan el
<leader>
que,
sobre la base dePara algunas personas (por ejemplo, yo), esto podría incluso reemplazar complementos como MiniBufExpl y, por lo tanto, ahorrar espacio en la pantalla.
fuente
puedes usar Neovim, así:
fuente