Lo que está preguntando es un terminal de ancho infinito, una parte del cual se muestra. No es cómo funcionan tradicionalmente los terminales ni cómo las aplicaciones esperan que funcionen.
Por ejemplo, si el terminal tiene un ancho infinito, ¿cómo deben funcionar las aplicaciones visuales cuando quieren mostrar algo en el medio de la pantalla?
Sin embargo, algo que puede hacer es usar GNU screen(se supone que puede adjuntar una sesión de pantalla desde varios terminales de diferentes tamaños para que la pantalla sepa cómo mostrar una pequeña ventana de un terminal más grande) y establecer el screenancho de las ventanas en algo muy grande y luego engañar a las aplicaciones visuales para que piensen que el ancho de la pantalla es el original.
Me gusta (dentro screen)
c=$COLUMNS # assuming your shell has that variable
screen -X width -w 1000
stty cols "$c"
Algunas aplicaciones visuales funcionarán bien, otras no tan bien (para instalar cuando realizan un posicionamiento relativo o cuando dependen de la envoltura del terminal). vimParece funcionar bien.
Luego, para desplazarse y copiar datos pegados, la única opción es usar screenel modo de copia . ( <prefix>]) y moverse alrededor del cursor (ver info -f screen -n Movementpara moverse en modo copia ).
tmux Puede tener capacidades similares.
Este terminatoremulador de terminal (basado en Java), que no es el terminatorque viene con ubuntu, también lo hace con un ancho de terminal infinito:
- las líneas nunca se envuelven
- A las aplicaciones visuales se les dice que el ancho de la pantalla es lo que cabe en la ventana, no el infinito.
- también funcionaría mejor que la
screensolución basada anteriormente en que su entrada terminfo afirma que no hace un ajuste de línea para que las aplicaciones lo sepan, y BS al comienzo de la línea no se mueve al final de la línea anterior.
lsymceditfuncionan bien en él, porque el ancho de la pantalla y el ancho del búfer se manejan por separado.