¿Tilda se queja de un tamaño de pantalla falso al iniciar?

¿Tilda se queja de un tamaño de pantalla falso al iniciar?

En Ubuntu 14.04, escritorio MATE. Acabo de instalar el terminal Tilda y lo agregué a Aplicaciones de inicio, tal como /usr/bin/tilda. Reinicié, vi el inicio de Tilda y luego noté esto:

tilde

"El tamaño de pantalla de 131072x1 es falso. Espere problemas"

Luego lo intenté killall tilda, comencé tilda nuevamente, mismo mensaje.

¿Alguien sabe cómo puedo solucionar este problema de tamaño de pantalla falso?

Respuesta1

¿Qué está generando este mensaje?

Esto no lo produce el shell Bourne Again. Esto no es producido por Tilda.

Esto es producido por el pscomando deel conjunto de herramientas procpsejecutandoeste cheque en su set_screen_size()función. El pscomando exige que su dispositivo terminal tenga un mínimo de 9 columnas por 2 filas para que pueda mostrar las cosas de manera razonable. En algún lugar, posiblemente sin que lo sepas, estás invocando ps.

El pscomando obtiene el tamaño de su terminal directamente desde (la disciplina de línea de) el dispositivo terminal adjunto a sus descriptores de archivos de E/S estándar, y permite que eso sea anulado por COLUMNSvariables LINESde entorno si sus valores son correctamente numéricos. Puede ver lo que psve su comando para tomar su determinación ejecutando:

tamaño pequeño; printenv COLUMNAS LÍNEAS
Puedes experimentar tirando psde la pierna ejecutando cosas como:

COLUMNAS=65535 LÍNEAS=1 ps

Si ha configurado las variables de entorno COLUMNSy LINESen los tontos valores de 131072×1, como se muestra en el resultado de printenv, entonces simplemente no lo haga. ☺ Sin embargo, es más probable que el propio dispositivo terminal esté informando este tamaño, lo cual verá en la salida de stty. (Tenga en cuenta que todo lo que hace el shell Bourne Again checkwinsizees establecer los valores de estas variables del shell, que si no se exportan ni siquiera se pasan al pscomando en su entorno, al tamaño que el dispositivo terminal indique. También lo checkwinsizees un rojo arenque en el sentido de que si las variables de entorno no tienen sentido, el dispositivo terminalestá informandotonterías, y este último es el problema subyacente que debe abordarse.)

Es por eso que, si bien no produce el mensaje, Tilda podría tener la culpa. El tamaño del dispositivo terminal es un recurso compartido que cualquier cosa que tenga un descriptor de archivo abierto en el dispositivo terminal puede cambiar arbitrariamente con una ioctl()llamada al sistema. Pero esconvencionalmenteestablecido, en el caso de que uno esté utilizando un softwareprograma emulador de terminalcomo Tilda, por el programa emulador de terminal cuando cambia el tamaño de la ventana GUI en la que se muestra la emulación. El programa emulador de terminal obtiene un evento de cambio de tamaño de GUI, lo convierte en columnas y líneas y establece el tamaño del dispositivo con ioctl().

Esto no quiere decir que algo más no haya puesto el tamaño a esta tontería. Después de todo, puedes configurarlotú mismoa un tamaño arbitrario y sin sentido simplemente ejecutando, por ejemplo, el comando:

columnas stty 1 filas 65535

Lo que nos lleva a…

Cómo restablecer el tamaño del dispositivo terminal

Si se encuentra en la situación en la que el dispositivo terminal informa un tamaño sin sentido:

  • Si está utilizando un emulador de terminal GUI, cambie el tamaño de la GUI en una columna/línea aproximadamente. Esto debería activar ioctl()y establecer el tamaño del terminal en algo razonable.
  • Establezca el tamaño en algo más razonable con (por ejemplo):

    columnas pequeñas 80 filas 25
  • Utilice el resetcomando. Tenga en cuenta que esto resetestablece muchas otras cosas además del tamaño del dispositivo terminal.
  • Si su emulador de terminal es compatible con DEC VT340/VT420, emita las secuencias de control DECSCPP y DECSLPP/DECSNLS apropiadas directamente o useel conjunto de herramientas de la nariz'sconsole-resize(también conocido comoresizecons) comando para emitirlos:

    cambiar tamañocons 80x25

información relacionada