Esto es un poco un seguimiento de esta pregunta . Estoy trabajando en tcsh dentro de la pantalla GNU en un xterm .
Tengo lo siguiente en mi .cshrc:
alias res_t 'xtset -t %h:%d "(%u:%g)" %e' # reset titlebar
res_t # reset title right now
alias precmd res_t
¡Y esto funciona bien!
Sin embargo, cuando ejecuto la pantalla veo que el título no se actualiza con el directorio actual. ¿Cómo puedo hacer que la pantalla actualice el título de xterm?
gnu-screen
xterm
tcsh
Nathan Fellman
fuente
fuente
Respuestas:
Puede establecer el título de la ventana xterm agregando esto a su
.tcshrc
o.cshrc
(reemplace suprecmd
alias actual ):Asegúrese de que este sea el único alias precmd en sus archivos
.cshrc
y.tcshrc
cuando use esto. Este método muestra el directorio actual como el título de la ventana para mí en xterm a gnome-terminal, independientemente de si una sesión de pantalla GNU está abierta.Mi respuesta se basó en esto .
fuente
Entiendo que estás usando tcsh, por lo que probablemente esto no funcione ... En caso de que alguien esté buscando la manera bash de hacer esto.
Si sus sistemas (local / remoto) están ejecutando bash, puede usar la variable de entorno "PROMPT_COMMAND" para establecer el título de la ventana. PROMPT_COMMAND se evalúa antes de que se muestre una solicitud.
(en tu .bashrc):
Explicación:
Esto establece que el shell se agregue al archivo de historial cada vez que se completa un comando, en lugar de cuando se completa todo el shell. (Esto no está relacionado con este ejemplo).
Esto hace eco del código de escape "\ 033] 0;" que establece el título de la ventana con las variables "usuario" @ "host" (eliminando la coincidencia más larga de la derecha a la primera ".") y luego el directorio de trabajo (sustituyendo '~' por '$ HOME').
El truco anterior funcionará con cualquier aplicación de terminal que admita el cambio dinámico del título de la ventana (que iTerm, Terminal.app, urxvt, aterm, eTerm. Xterm, etc.). También puede buscar en la variable de shell "TITLEBAR" en la documentación de bash, es similar.
fuente
Esto debería funcionar en cualquier shell, pero es un hack sucio .screenrc. Asume el control de la línea hardstatus para que funcione, lo que puede ser inaceptable para algunos usuarios. Pero funciona en gnome-terminal en el último Ubuntu, incluso sin la línea termcapinfo a continuación. Algunas situaciones pueden requerir ajustes más profundos (por ejemplo, no he probado en PuTTY).
Encontrado en este enlace .
fuente
fuente
screen
hardstatus
variable de pantalla configurada adecuadamente y que admite termcap / terminfohs|ts|fs|ds
.Esta página (que se ha vinculado anteriormente) es la solución, sin embargo , debe asegurarse de que la cadena de terminal de la entrada se alinee con la cadena de identificación de su terminal (es decir, en qué está configurada la variable TERM) de lo contrario no tendrá ningún efecto.
Aquí un resumen de lo que hice, que funcionó para mí después de años de no invertir suficiente tiempo para resolver esto:
Averigüe cuál es la cadena de identificación de su terminal ejecutando:
Probablemente dirá algo como 'xterm' o 'linux' o 'rxvt'.
Ahora agregue la siguiente línea a su archivo .screenrc (o cree uno si no existe) ubicado en su homedir (~ / .screenrc):
La clave es asegurarse de que 'xterm' sea la cadena de ID de su TERM que obtuvo arriba. Puede hacer varias líneas para cada tipo de término diferente que utilice.
Por ejemplo, tengo esto como mi archivo .screenrc porque utilizo xterms y el tipo de término 'linux' cuando hago SShing en un cuadro:
Esperemos que esto ayude y sea totalmente independiente de la cáscara. Recuerde que si ejecuta screen como root necesitaría modificar ~ root / .screenrc además de su propio archivo ~ / .screenrc como este.
fuente
Las instrucciones aquí me permitieron actualizar el título en rxvt de bash para mí, lo que tal vez no sea de ninguna ayuda, pero pensé que podría valer la pena investigarlo (sección Barra de estado informativa si el enlace no salta a la parte derecha de la página)
fuente