Ajuste dinámico de línea en el terminal GNOME

27

¿Cómo puede hacer que las líneas en el Terminal GNOME se ajusten dinámicamente cuando cambia el tamaño de la ventana?

Marius Butuc
fuente

Respuestas:

19

En el momento en que se hizo la pregunta, esto no era posible en la Terminal de Gnome. Sin embargo, se realizó una solución a fines de 2013. Este cambio no llegó a Ubuntu 14.04, pero debería ser parte de Ubuntu 14.10.

De acuerdo con el problema en Launchpad , puede tener esta característica hoy habilitando el PPA del equipo Gnome. Puede activar el PPA de puesta en escena del equipo Gnome (puesta en escena necesaria para obtener la última versión) haciendo lo siguiente

 sudo apt-add-repository ppa:gnome3-team/gnome3-staging

Actualiza tus fuentes

sudo apt-get update

Vuelva a instalar gnome-terminal para obtener la última versión

sudo apt-get install gnome-terminal

Verifique que tenga la versión 3.13 o posterior (a partir del 10 de septiembre, debe ser 3.13.1)

$ gnome-terminal --version
GNOME Terminal 3.12.1
Michael Martin-Smucker
fuente
Acabo de instalar el PPA del equipo de Gnome, actualizado, ahora tengo Gnome Terminal 3.10.2. Sin ajuste dinámico de línea. Asi que...?
Jay Sullivan
@notfed Probablemente necesitará 3.12, que está disponible para Ubuntu 14.04 en el stagingppa. Prueba (bajo tu propio riesgo)ppa:gnome3-team/gnome3-staging
Michael Martin-Smucker
Solo intenté agregar el ppa:gnome3-team:gnome3ppa "normal" , obtuve una versión que era 3.10. Después de agregar ppa:gnome3-team:gnome3-staging, obtuve la versión correcta 3.13.1, así que puedo confirmar que esto está funcionando.
Victor Bjelkholm
Es el número de versión de VTE lo que realmente importa. La característica apareció en vte-0.36 (en consecuencia, echo $VTE_VERSIONdebería informar al menos 3600).
egmont
1
Ahora tengo GNOME Terminal 3.12.3en Ubuntu 14.04 usando este método, y el reflujo funciona.
nh2
11

El Terminal Gnome predeterminado no le permite hacer esto; sin embargo, si está en el terminal, escriba screen , ejecutará el terminal en un emulador de terminal que cambiará de tamaño correctamente.

Por ejemplo, aquí está mi carpeta de inicio mientras se ejecuta ls -l

ingrese la descripción de la imagen aquí

y aquí está la misma pantalla redimensionada horizontalmente

ingrese la descripción de la imagen aquí

Iniciar Gnome-Terminal automáticamente con Screen

cp /usr/share/applications/gnome-terminal.desktop ~/.local/share/applications

luego edite el archivo gnome-terminal.desktop y cambie la línea de comando Exec a:

Exec=gnome-terminal -x screen -q
fossfreedom
fuente
2
Después de instalar el paquete, sudo apt-get install screenrealiza el screenajuste de línea, pero ejecutarlo siempre con ese propósito no es realmente intrusivo. Veamos qué otras soluciones hay.
Marius Butuc
muy cierto, he actualizado con otra sugerencia.
fossfreedom
Hay un tema sobre la integración de pantalla gnome-terminal + GNU y un informe de error, pero nadie está trabajando en ello. Aún así, la pantalla GNU parece el camino a seguir para el ajuste dinámico de línea.
Maxime R.
1
Solo un problema más: ahora desplazarse es una tarea. :( Quizás peor que no tener el reflujo.
allprog
1
Para todos los que piensen en intentar esto: al principio es genial, pero realmente peculiar, y finalmente dejé de usarlo
Jay Sullivan
10

Estoy haciendo un gran progreso en la implementación de reenvoltura en VTE (gnome-terminal, etc.). Consulte el error anterior en https://bugzilla.gnome.org/show_bug.cgi?id=336238 , siéntase libre de probar mi parche si es un hacker. En caso de cualquier comentario técnico, por favor comente en ese error aguas arriba, ¡gracias! Espero que mi trabajo termine pronto en VTE convencional.

egmont
fuente
2
Solo quiero registrar mi sincero agradecimiento por este trabajo. Es obsceno que VTE no se reenvíe en 2013.
Justin Force
Si esta característica pudiera llegar a la próxima versión de Ubuntu, ¡sería súper increíble!
allprog
Espero que lo logre. Ahora se incluye en VTE versión 0.35, que se convertirá en 0.36 estable, parte de Gnome 3.12 estable.
egmont
Desafortunadamente, no se convirtió en ubuntu de confianza, pero puede actualizar sus paquetes vte (y gnome-terminal) desde el área de preparación de gnome3 en launchpad.net/~gnome3-team/+archive/gnome3-staging/+packages
egmont
7

gnome-terminal no puede hacerlo ( error ascendente ).

Después de experimentar un poco, parece que rxvt-unicode funcionará.

Instalar a través del centro de software

sudo apt-get install rxvt-unicode

El reflujo solo funciona después de que tiene suficiente texto para llenar el valor de una pantalla completa, es decir, una vez que presiona el búfer de desplazamiento.

En una nota personal, creo que rxvt es bastante feo, pero si el reflujo es más importante para usted, hágalo.

achiang
fuente
Lo que me sorprende es que hasta el día de hoy, nadie ha pensado en desarrollar un nuevo terminal nuevo que no esté basado en VTE, esa es la razón por la cual la mayoría de las aplicaciones de terminal para Linux no vuelven a fluir. Basta con mirar la Terminal.app de Mac OSX, se redistribuye y es uno de los mejores emuladores de terminal que he usado.
papashou
6

Aunque desafortunadamente no sé la respuesta a esto para una sesión de terminal normal, sé cómo hacerlo si está usando la pantalla (incluso si está usando byobu): vuelva a conectar su pantalla usando lo siguiente:

screen -raAd

Esto escalará su sesión de pantalla a medida que cambia el tamaño (y también separa las sesiones en ejecución existentes) y es lo que siempre uso para recuperar una sesión de pantalla.

Anna
fuente
2
Esto es genial ... pero ahora no puedo desplazarme hacia arriba en la terminal ... :(
gregghz
Para desplazarse screen, vea esta pregunta .
Ruslan
0

Solución: instale la pantalla ( sudo apt-get screen ) y ejecútela en su terminal.

ern0
fuente
3
Mejor aún, instale byobu . Básicamente es un buen envoltorio screen, pero una buena característica es que puede hacer que se inicie automáticamente en todas las terminales, por lo que apenas sabe que está allí.
enms.
0

Durante los últimos 5 años o más, he pasado periódicamente largas sesiones en el cuidado y la alimentación de máquinas Linux (en lugares lejanos). Y, básicamente, la Terminal de Gnome no es suficiente.

A menudo he utilizado SecureCRT y SecureFX (SFTP) basados ​​en Windows en XP y Win7, así como en Ubuntu (en Wine ), lo que me brinda un conjunto de características mucho mejor, que incluyen: ventanas múltiples y / o pestañas, configuraciones guardadas , macros de inicio de sesión, coloración por sesión, mucha personalización, SFTP integrado e incluso secuencias de comandos ... Siempre hubo pequeños problemas técnicos (con Wine, en particular con SFTP), y a menudo me desviaba a la Terminal de Gnome para tareas locales en Ubuntu .

Sin embargo, desde principios de este año (en versión beta), he tenido SecureCRT (nativo de Ubuntu ). Además de lograr una mayor integración con Nautilus (o algo así) para la transferencia de archivos SFTP / SSH, esto casi ha reemplazado mi uso de Gnome Terminal .

Incluso la nueva configuración de la máquina es mejor con cortar y pegar sin problemas , captura de sesión completa y configuraciones de conexión guardadas. Siempre ha tenido un manejo superior de cambio de tamaño, flujo y juego de caracteres, incluso sobre la mayoría de las otras aplicaciones de terminal.

No lo he probado, pero también se acaba de lanzar para Mac OS X v1.5 (Intel) o v10.6 +.

david6
fuente