metrologia - vim online
Vim: Mueve la ventana hacia la izquierda/derecha? (5)
En Vim, ¿es posible "mover" una ventana hacia la izquierda o hacia la derecha? Por ejemplo, similar a <cw> r
o <cw> x
, pero a la izquierda / derecha en lugar de hacia arriba / abajo?
Por ejemplo, si tengo este diseño:
+---+---+---+
| | +---+
| A +---+---+
| | | |
+---+---+---+
Me gustaría convertirlo en esto:
+---+---+---+
| | +---+
+---+ A +---+
| | | |
+---+---+---+
Lo cual es difícil / molesto de hacer con <cw> {H,J,K,L}
.
¿Quieres mover la ventana o solo la posición del cursor?
Después de rotar o andar en bicicleta como ya se mencionó, solo es posible mover la ventana hasta la parte superior, inferior, izquierda o derecha, con respectivamente:
^W K
^W J
^W H
^W L
No creo que haya una forma predeterminada de mover una ventana un lugar hacia la derecha.
Este es el más útil para mí (y probablemente sea la respuesta correcta a la pregunta):
- Ctrl W + x OR Ctrl W + Ctrl x - Gira la ventana enfocada actual con la ventana más cercana a la derecha.
Realmente parece que vim no puede hacer esto con los mapas clave de estándares. La documentación dice que los comandos ^ WK, J, H y L funcionan al crear la división y abrir el búfer en la posición actual, así que escribí una función al mismo: Ocultar el búfer, mover hacia la izquierda, dividir y luego abre el buffer original:
" Rotate a window horizontally to the left
function! RotateLeft()
let l:curbuf = bufnr(''%'')
hide
wincmd h
split
exe ''buf'' l:curbuf
endfunc
" Rotate a window horizontally to the right
function! RotateRight()
let l:curbuf = bufnr(''%'')
hide
wincmd l
split
exe ''buf'' l:curbuf
endfunc
Ctrl W te da el "modo de comando de Windows", permitiendo los siguientes modificadores:
Ctrl W + R - Para rotar ventanas arriba / izquierda.
Ctrl W + r - Para rotar ventanas hacia abajo / derecha.
También puede usar el "modo de comando de Windows" con las teclas de navegación para cambiar la posición de una ventana:
Ctrl W + L - Mueve la ventana actual a la "extrema derecha"
Ctrl W + H - Mueve la ventana actual a la "extrema izquierda"
Ctrl W + J - Mueve la ventana actual al "fondo"
Ctrl W + K - Mueve la ventana actual al "muy alto"
Check out :help window-moving
para más información
ctrl + h
mueve el cursor a la siguiente ventana (derecha)ctrl + l
mover cursot a la ventana anterior (izquierda)
Para obtener más información, consulte :help window-moving