El problema subyacente es que la asignación realizada screenentre el terminal real (identificado por la TERMvariable de entorno externa screen) y la emulación interna screenestá incompleta.
Si por casualidad lo prueba (usando vttest o tack ), puede notar deficiencias para
- colores
- llaves especiales
Intenta solucionar estos problemas configurando term de .screenrctiene el inconveniente de que sólo funciona para un determinado terminal real, y no es portable a otras implementaciones de terminales. Las notas de documentación
Se desaconseja el uso del término comando para fines no predeterminados.
Hay otra solución (con un inconveniente diferente), utilizando esta función de screen documentación :
Cuando la pantalla intenta averiguar un nombre de terminal por sí mismo, primero busca una entrada llamada pantalla. término , donde término es el contenido de su $TERMvariable. Si no existe tal entrada, la pantalla intentascreen (o screen-w, si el terminal es ancho (132 cols o más)). Si incluso esta entrada no se puede encontrar, vt100se utiliza como sustituto.
ncurses proporciona varias descripciones de terminales alternativas útiles para este caso, por ejemplo, screen.xterm-new , para reparar problemas en el mapeo de la pantalla. En la práctica, uso TERM=xterm-new, y cuando ejecuto la pantalla, obtengo una asignación utilizable de las teclas de función.
Refiriéndose de nuevo a la pantalla de termconfiguración, en la prueba se puede notar que hay todavía problemas con la asignación, que se abordan en estas alternativas. Si fuera posible obtener una descripción precisa del terminal usando term, estas alternativas serían simples alias screen. No son.
ncurses no proporciona screen.xterm(sic) porque:
TERM=xtermse usa mucho para emuladores de terminal que difieren de xterm; agregar esta asignación solo agravaría esa situación (ver, por ejemplo, ¿ por qué no solo usar TERM configurado en "xterm"? en las preguntas frecuentes de ncurses)
screen.xtermes menos probable que el nombre alternativo se instale en sistemas remotos (consulte el comentario de cambio de junio de 2015 en la base de datos del terminal).
En general, sin embargo, usar los nombres alternativos es una mejora sobre el uso termen su .screenrc: resuelve más problemas de los que crea. Lo contrario es cierto de la termconfiguración.
term xterma mi~/.screenrcarchivo lo solucionó por mí. ¡Gracias de nuevo!