¿Qué tipo de terminal estoy usando?

Pregunta:

He probado esto con Ubuntu 12.04 y Debian 7. Cuando lo hago

echo $TERM

yo obtengo

xterm

Pero si utilizo el menú desplegable "ayuda"> "acerca de", entonces dice gnome terminal 3.4.1.1 .

¿Significa esto que estoy usando solo gnome-terminal? ¿O simplemente xterm? ¿O es gnome-terminal una extensión de xterm? Estoy confundido.

Respuesta:

¿Para qué sirve $TERM ?

La variable $TERM es para que la utilicen las aplicaciones para aprovechar las capacidades de ese terminal.

Por ejemplo, si un programa desea mostrar texto en color, primero debe averiguar si el terminal que está utilizando admite texto en color y, si lo hace, cómo hacer texto en color.

La forma en que esto funciona es que el sistema mantiene una biblioteca de terminales conocidos y sus capacidades. En la mayoría de los sistemas, esto está en /usr/share/terminfo (también hay termcap, pero ya no se usa mucho su legado).

Digamos que tiene un programa que quiere mostrar texto en rojo. Básicamente, hace una llamada a la biblioteca terminfo que dice " dame la secuencia de bytes que tengo que enviar para el texto rojo para el terminal xterm ". Luego, solo toma esos bytes y los imprime.
Puede intentarlo usted mismo haciendo tput setf 4; echo hi . Esto obtendrá la capacidad setf terminfo y le pasará un parámetro de 4 , que es el color que desea.


Por qué gnome terminal miente sobre sí mismo:

Ahora digamos que tiene un emulador de terminal nuevo y brillante que acaba de ser lanzado, y la biblioteca terminfo del sistema aún no tiene una definición para él. Cuando su aplicación busque cómo hacer algo, fallará porque no se conoce la terminal.

La forma en que su terminal soluciona esto es mintiendo sobre quién es. Entonces su terminal gnome dice " I'm xterm ".

Xterm es un terminal muy básico que existe desde los albores de X11 y, por lo tanto, la mayoría de los emuladores de terminal admiten lo que admite. Entonces, si el terminal gnome dice que es un xterm, es más probable que tenga una definición en la biblioteca terminfo.

La desventaja de mentir sobre su tipo de terminal es que el terminal podría admitir mucho más que xterm (por ejemplo, muchos terminales nuevos admiten 256 colores, mientras que los terminales más antiguos solo admitían 16). Por lo tanto, tiene una compensación, obtiene más funciones o tiene más compatibilidad. La mayoría de terminales optarán por una mayor compatibilidad y, por lo tanto, optarán por anunciarse como xterm .

Si desea anular esto, muchos terminales ofrecerán alguna forma de configurar el comportamiento. Pero también puede simplemente export TERM=gnome-terminal .

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım