Screenrc
El archivo screenrc
, en sus varias localizaciones, sirve para configurar el
programa screen, un fantástico multiplexor para terminales con un
buen número de características:
- Sesiones persistentes.
- Sesiones compartidas.
- Varias ventanas con su propio
buffer
de pantalla.
Lo siguiente son notas sobre las opciones de configuración del programa, que siempre me gusta tener a mano.
La línea de información
Los terminales serie contaban con una línea dedicada en la pantalla a mostrar información especial, que podía cambiarse mediante secuencias especiales de control. screen permite también esa posibilidad si el terminal no dispone de ella, algo muy habitual en estos días en los que esos terminales no se utilizan, y se tiende a tener conexiones seguras (SSH) e incluso sesiones telnet.
Para configurar dicha línea en screen tenemos las siguientes directrices:
hardstatus [on|off]
Activa ó desactiva el uso de la línea de información del terminal para mostrar
los mensajes. El valor predeterminado es on
.
hardstatus [always]lastline|message|ignore [string]
Si el terminal no dispone de una línea de información screen actuará de la siguiente forma:
- lastline: se reservará la última línea de la pantalla para dicho propósito
- message: se utilizará el mecanismo de mensajes del propio screen.
- ignore: no se empleará dicha línea para nada.
Si se precede con la palabra always la disposición se aplicará a todos los terminales.
El parámetro string es un texto que define el contenido de la línea de información, algo que también puede hacerse por programa empleando estas secuencias de control:
ESC]0;<string>^G
ESC_<string>ESC\
Existen varias secuencias de escape especiales que expanden a lo siguiente:
Carácter | Descripción | |
---|---|---|
% | el carácter de escape mismo | |
a | indica la hora en am ó pm |
|
A | igual que %a pero en mayúsculas | |
c | hora actual en formato HH::MM de 24 horas | |
C | igual que %c pero en formato de 12 horas | |
d | número de día | |
D | nombre del día de la semana | |
f | indicadores de la ventana | |
F | almacena verdadero en %? si la ventana tiene el foco | |
h | estado (hardstatus)de la ventana | |
H | nombre de la máquina en la red (hostname) | |
l | carga actual del sistema | |
m | número de mes | |
M | nombre del mes | |
n | número de ventana | |
s | segundos | |
t | título de la ventana | |
u | todos los otros usuarios en esta ventana | |
w | todos los números de ventana y los nombres, puede ir precedido por - ó + |
|
W | todos los números de ventana y sus nombres excepto el actual | |
y | últimos dos dígitos del número de año | |
Y | número de año completo | |
? | muestra el texto hasta la siguiente expresión %? sólo si existe una secuencia de escape '%' en su interior que expande a algo distinto de la cadena vacía |
|
: | texto a mostrar en caso de que la anterior secuencia '%?' no se muestre (la parte else del condicional) | |
= | rellena el texto con espacios hasta el ancho de la ventana. Si se indica un número se usa como porcentaje del ancho. | |
< | igual que '%=' pero sin rellenar con espacio, sólo trunca el texto | |
> | marca la posición actual del texto como el punto para el siguiente truncado de texto | |
{ | texto modificador del color ó de los atributos de visualización, terminado por el siguiente "}" | |
` | Sustituir con la salida de la ejecución de un programa. El cualificador de longitud está mal usado para idenficar uno de los programas. |
Enlaces
- Catalyst, un IDE y screen, donde se menciona cómo construirse un entorno de desarrollo para Catalyst usando screen.
- Un archivo comentado.
- Tutorial de Jacobo Tarrío, en español, algo antiguo ya pero muy didáctico.
- La entrada en la Wikipedia en inglés.
- Un pequeño tutorial en Wikilearning.
- Documentación en inglés sobre la configuración de screen, versión 3.9.4.
- 256 colores con screen, una interesante página que explica, entre otras cosas, cómo usar 256 colores en un terminal bajo screen.