Tengo este problema realmente extraño con los emuladores de terminal X. Quiero usar UTF-8 y funciona en cualquier otro lugar de mi sistema, pero no en terminales gráficos. Cuando empiezo, por ejemplo, Urxvt y presiono las teclas öäå, no muestra nada. Si inicio una nueva terminal Urxvt dentro de la terminal principal, todo funciona bien. Todo funciona también en tty (Crtl + Alt + F1).
Estamos utilizando like-open para conectar el dominio . No lo sé, pero ¿eso puede causar algunos problemas con las configuraciones regionales?
¿Qué he hecho antes de preguntar?
- Al probar diferentes terminales (Urxvt y xterm), ninguno funciona
- Intentando cambiar la fuente
- Incluso probé un entorno de escritorio diferente (impresionante y xfce)
- Probar diferentes shells (zsh, bash)
También lo he probado con diferentes usuarios. Un usuario local y uno que usa igualmente abierto para la autenticación de dominio. Con el usuario local todo funciona , incluso tienen la misma configuración regional.
Aquí se muestra la salida del entorno local en ejecución (ambos usuarios tienen la misma configuración regional):
LANG = en_US.UTF-8 LANGUAGE = en_US: en LC_CTYPE = "en_US.UTF-8" LC_NUMERIC = "en_US.UTF-8" LC_TIME = "en_US.UTF-8" LC_COLLATE = "en_US.UTF-8" LC_MONETARY = "en_US.UTF-8" LC_MESSAGES = "en_US.UTF-8" LC_PAPER = "en_US.UTF-8" LC_NAME = "en_US.UTF-8" LC_ADDRESS = "en_US.UTF-8" LC_TELEPHONE = "es_ES.UTF-8" LC_MEASUREMENT = "en_US.UTF-8" LC_IDENTIFICATION = "en_US.UTF-8" LC_ALL = en_US.UTF-8
Hasta donde tengo entendido correctamente, LC_CTYPE
es la variable de entorno que utiliza Urxvt.
No tengo idea de cómo solucionar esto, pero espero que alguien más lo tenga.
Respuestas:
Parece que está configurando $ LC_CTYPE en su .profile o .bashrc o lo que sea. Eso no se ha ejecutado antes de su primer terminal, que por lo tanto comienza sin eso en su entorno:
init - (se inicia) -> Administrador de pantalla - (se inicia) -> escritorio env - (se inicia) -> terminal - (se inicia) -> shell
Luego, el shell obtiene su archivo de inicio (.profile, .bashrc, .zshrc, .login, el que sea para su shell), que establece el entorno, y solo entonces cuando inicia el terminal, sabe qué configuración regional se supone que debe utilizar.
Debe configurar LC_CTYPE más arriba en la cadena: dónde y cómo, depende de su entorno de escritorio (espero que no esté usando "solo un administrador de ventanas", ¿probablemente gnome o KDE?), Administrador de pantalla (gdm o kdm o xdm o lightdm o lo que sea), variante init ("estilo sysv" tradicional o advenedizo).
fuente