Estoy buscando una manera de agregar una nueva división de ventana de altura completa a una configuración de ventana existente (dividida). Como no sé cómo explicarlo correctamente, simplemente publicaré algunos gráficos ASCII que muestran el comportamiento deseado para dos configuraciones de ventana de ejemplo:
from to +-------------------------+ +---------------------+---+ | | | | | | | | | | | A | => | A | E | | | | | | | | | | | +-------------------------+ +---------------------+---+ +------------+------------+ +----------+----------+---+ | | B | | | B | | | A +------------+ | A +----------+ | | | C | => | | C | E | +------------+------------+ +----------+----------+ | | D | | D | | +-------------------------+ +---------------------+---+
donde la función acepta la anchura deseada de la nueva ventana E
y se contrae las anchuras de A
, B
, C
, y D
en consecuencia. Edit2 : Tenga en cuenta que los dos dibujos anteriores son ejemplos del comportamiento esperado para un caso concreto. Estoy buscando una función general que haga esto independientemente de la configuración en la columna desde (es decir, el número de ventanas [divisiones] en la columna desde debe ser arbitrario).
También estoy buscando esta funcionalidad en el lado izquierdo y en la parte superior e inferior de un marco.
Editar: Del comentario de @ Nsukami_ me di cuenta de que la funcionalidad que estoy buscando es un caso especial de un problema más abstracto. Así que voy a expresar ese problema:
¿Cómo almacena una configuración de ventana (que consta de cualquier número de ventanas y buffers) y "pega" la configuración almacenada en una ventana existente?
El "pegar" debería preservar los tamaños de ventana relativos y la división; naturalmente, la configuración pegada resultante es una copia escalada.
A
, B
, C
, y D
) y luego insertar este diseño en una nueva ventana? Entonces mi problema podría resolverse 1) almacenando la configuración actual de la ventana, 2) cambiando el diseño para mostrar solo una ventana que luego se divide horizontalmente [esencialmente formando la ventana E
y la ventana de marcador de posición para las otras, llamémosla Z
], 3 ) finalmente inserción del diseño original en la ventana izquierda ( Z
)
split-window-right
asC-u -width C-x 3
. Cambiewidth
a lo que quiera y observe el signo negativo.