Estoy en un sistema Ubuntu (creo). Yo no tengo raíz, por lo que no puedo cambiar la configuración regional. Quiero hacer que mi perfil de terminal predeterminado use UTF-8 por defecto. Debería haber una manera de hacer esto, ya sea en el .gconf/apps/gnome-terminal/
directorio en alguna parte, o en una variable de entorno, o algo así. Sin embargo, parece que no puedo encontrarlo.
Editar con más detalles:
En una terminal, tengo:
grid-unv55$ locale
LANG=en_US.UTF-8
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="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
grid-unv55$ gnome-terminal
Cuando intento más un documento UTF en esa nueva terminal, obtengo:
\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd
\noise:bgspeech \ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd
Que aparece en mi pantalla como puntos. (los uffds estaban cortados y pegados. Dejé el "\ noise: bgspeech" allí para que pudieras ver ese ascii cortado y pegado correctamente)
~/.profile
- No~/.bashrc
, y no~/.bash_profile
cualquiera .Puede establecer la configuración regional
gnome-terminal
con el siguiente comando dondeDefault
está el nombre del perfil.fuente
LANG=en_US.UTF-8
en.bashrc
y reiniciarTenía un problema similar, y cuando se pone
LANG
en.bash_profile
no hacer el truco, descubrí que en Gnome, la configuración regional predeterminada se puede ajustar al comienzo de una sesión desde la pantalla de inicio de sesión GDM. Esto se puede hacer sin acceso de root.fuente
Acabo de registrarme
menu->terminal->set character encoding
es utf-8La terminal y bash no son lo mismo.
Comenzaría haciendo
cat utf-8-file
(cat y bash pasarán este archivo sin cambios a la terminal, (bueno, en realidad a stty, stty convertirá newline a carrage return, newline, etc.)) si esto muestra el archivo correctamente, entonces gnome-terminal está configurado. (Esto hasta ahora es todo lo que he hecho, ya que uso utf-8 en inglés; ya estaba configurado en Ubuntu 10.10 y Debian 6 para mí). Entonces, solo para configurar bash, etc.Relectura ~ / .bashrc
Si edita
~/.bashrc
debe volver a leerlo. ~/.bashrc
(o iniciar un nuevo shell) (no olvide el punto)fuente
Tuve un problema ahora que solucioné que puede ser relevante para los recién llegados con versiones más nuevas de GNOME (y gnome-terminal):
Para cualquier codificación de texto que desee usar, el shell (por ejemplo, bash) y el emulador de terminal (por ejemplo, gnome-terminal) deben usar la misma codificación. Entonces, por ejemplo, si el shell usa
en_US.utf8
y el emulador de terminal usaen_US.ISO-8859-1
(akalatin1
), entonces verá texto extraño en su terminal para cualquier programa con salida UTF-8.Ahora, no puedo configurar la codificación al iniciar sesión, como he visto sugerido sería posible. Esto podría deberse al hecho de que tenemos una versión anterior de GDM aquí en el trabajo. Por eso he necesitado una solución diferente.
De todos modos, GNOME 3 no parece originarse automáticamente
.bashrc
ni.profile
al iniciar sesión. Pero sí fuente.gnomerc
, en la que puede colocar variables de entorno que se exportarán a programas GNOME (por lo que puedo decir).Poner
export LANG="en_US.utf8"
en.gnomerc
tanto se inicia gnome-terminal utilizando una codificación UTF-8 por defecto, cuando se inicia una nueva instancia. (Cambie su ubicación según sus necesidades).¡Ojalá esto haya sido útil para alguien!
fuente
Como lo mencionaron otros usuarios, dile al shell con qué codificación estás usando
Ponga esto en .bashrc y gnome-terminal debería recogerlo en el próximo inicio de sesión.
Establezca la codificación para gnome-terminal sobre la marcha: Barra de menú> Terminal> Establecer codificación de caracteres
Establezca la codificación predeterminada permanentemente: gconf-editor> Aplicaciones> gnome-terminal> Perfiles> Predeterminado> codificación> utf-8
fuente
if [ -n "$BASH_VERSION" -a -f "$HOME/.bashrc"; then . "$HOME/.bashrc"; fi