2012-05-09 630 views
8

Estoy cambiando aplicaciones de terminal, desde Terminal.app de OSX a Google Chrome Secure Shell app, y la manera en que las líneas divisorias entre paneles en una ventana en tmux cambian de una terminal a la otra.tmux: línea divisoria del panel pantalla diferencia entre terminales

En Terminal.app la línea divisoria es sólo eso, una línea:

En Secure Shell, la línea divisoria se representa como una línea de q s:

Puedo pensar en tres casos posibles:

  1. Esta es una configuración que puedo arreglar desde dentro de mi caparazón.
  2. Esta es una configuración que puedo solucionar a partir de las preferencias de Secure Shell.
  3. Esta es una configuración que aún no es compatible con las preferencias de Secure Shell.

Pero no estoy seguro de qué se trata. Me encantaría hackearlo si es el caso n. ° 3, pero no estoy seguro de cuál es la responsabilidad de mostrar una línea frente a q s, así que no puedo ponerme en pie para comenzar a buscar en Google y aprender lo que hay que hacer .

+0

parece Estoy buscando cómo maneja [personajes de dibujo de cuadro] (http://en.wikipedia.org/wiki/Box-drawing_character), así que es un lugar para comenzar. – rampion

Respuesta

3

Su emulador de terminal (Google Chrome Secure Shell) no soporta el juego de caracteres alternativo (ASC) capacidad que se anuncia por la entrada de base de datos terminfo especificado por la variable de entorno TERM en efecto cuando se ha conectado para (o comenzó) su tmux sesión.

El proyecto Chromium tiene an issue con respecto al soporte del juego de caracteres en el emulador de terminal que utiliza la aplicación Chrome.


por la VT100 User Guide, Table 3-9: Special Graphics Characters, cuando se “establecen gráficos especiales” está activada, q se usa para llamar la “Línea horizontal - Escanear 5”.

En terminfo, los caracteres de gráficos especiales VT100 están disponibles como parte de la funcionalidad de conjunto de caracteres alternativo (ACS); vea la sección "Line Graphics" del terminfo(5) man page.


Si está utilizando tmux 1.4 o posterior, y Google Chrome Secure Shell compatible con UTF-8, entonces usted debería ser capaz de obtener UTF-8 caracteres de línea, dando -u a su tmux clientes (o teniendo UTF-8 presente en LC_ALL, LC_CTYPE o LANG cuando ejecuta tmux cliente).

Como alternativa, puede configurar tmux a desarmar las capacidades terminfo relacionados con ACS (en su ~/.tmux.conf):

# Google Chrome Secure Shell does not (yet) support ACS; do not use it (for now). 
set-option -ga terminal-overrides ',*:[email protected]:[email protected]:[email protected]:[email protected]' 

tmux caerá de nuevo a la línea ASCII dibujo (por ejemplo -, |, y +) si el cliente adjunto no es compatible con UTF-8, y la entrada de la base de datos terminfo de TERM (no ajustada por terminal-overrides) no anuncia las capacidades de ACS.

Nota: Básicamente deberá reiniciar su servidor tmux (salir de todas las sesiones) antes de que el cambio de configuración surta efecto.

+0

respuesta increíble. Usé tu sugerencia para usar 'tmux -u' para adjuntar a mi sesión y funcionó perfectamente. – rampion

1

Secure Shell no hace caracteres de dibujo de línea en este momento. Que se añadirán en breve

3

tuve misma edición (masilla) y se fija mediante el cambio variable de entorno LANG usando los siguientes comandos

export LANG="en_US:en" 

entonces corro tmux y las líneas se mostraron correctamente

creo que sirve

+0

Esto resuelve el problema de una línea horz que se muestra en la masilla como acento a (parece un ') - Gracias user1841286 – ChrisAdmin

Cuestiones relacionadas