Pensando que en modo consola (Crtl + Alt + F2) funcionaba al cerrar la sesi�n y volver a iniciarla, ejecut� otra sesi�n X desde otro terminal ("startx -- :1" pues lanzo las X a mano desde la consolas) y comprob� que en esa sesi�n al lanzar el "eterm" o el "xterm" la variable LC_ALL no estaba definida, y que el resto lo estaba como se supone que deb�an estar.

Aunque funciona, me deja un poco "desorientado" pues aunque no cerrase y lanzase de nuevo la sesi�n X , los "eterm" y "xterm" deber�an leer el ".basrc" cada vez que son lanzados. Realmente para todas las variables LC_*, LANG y LANGUAGE que defin�a, su cambio era reflejado al lanzar los "eterm" y "xterm", pero aunque no defin�a LC_ALL, esta segu�a apareciendo con alg�n valor que no sab�a de donde lo le�a (�podr�a tenerlo en alg�n tipo de cache?)

Por ahora como soluci�n temporal, mantendr� la variable LC_COLLATE=C, aunque creo que debe haber alg�n bug en los ficheros "/usr/share/i18n/locales/es_ES" y "/usr/share/i18n/locales/[EMAIL PROTECTED]" en sus secciones LC_COLLATE que es donde supongo que se definen las reglas de ordenaci�n (no obstante esto son suposiones, pues no soy un experto).

Esto ya como curiosidad:
�alguien podr�a recordarme como se hace que las consolas en modo texto vuelva a leer los archivos de configuraci�n sin salir y volver a entrar? (se que se puede hacer pero no recuerdo como) Igualmente, �hay alg�n m�todo para que las X re-lean los archivos de configuraci�n sin tener que cerrarlas y volverlas a abrir?


Daniel Pe�a wrote:

Gracias Santiago,
primero he instalado el paquete user-euro-es (y purgado el user-es) para tener tambi�n soporte para el euro (ejecutando "eurocastellanizar"). Despu�s he modificado el fichero /etc/language-euro-es para reflejar los cambios que sugieres. Este fichero se lee desde el ".bashrc" para intentar que el "eterm" o "xterm" tambi�n lo lean. En modo consola funciona perfectamente.

He ejecutado "dpkg-reconfigure locales" y a la pregunta "Which locale should be the default in the system environment?" elijo "None" para evitar que autom�ticamente asigne cualquier valor.

Pero utilizando las X, lanzando un "eterm" o un "xterm", no se como la variable LC_ALL se pone autom�ticamente a "[EMAIL PROTECTED]". He hecho un "grep -r 'LC_ALL' *" en "/etc" , en "/usr" y en "/home/MiHome" y no encuentro el script d�nde se fija la variable (supongo que debe haber algo parecido al ".bash_profile" o ".bashrc" para esos programas).

Santiago Vila wrote:

On Sat, 26 Jun 2004, Daniel Pe�a wrote:

Antes de nada indicar que utilizo Debian Woody (stable).
Al hacer un "ls" con una simple expresi�n regular "ls [A-Z][A-Z]*"
(trato de listar los ficheros cuyos nombres comiencen con 2 letras
may�sculas), inexplicablemete me lista todo el directorio y todos los
que cuelgan de �l sin tener en cuenta la expresi�n regular, como si
hubiese hecho un "ls *".

Tras horas de pruebas, se me enciende la bombilla: �No ser� algo
relaccionado con los locales? Tengo instalado el paquete "user-es" para
"castellanizar" Debian, y las variables de entorno LANG, LANGUAGE,
LC_ALL, LC_MESSAGES con el valor de "es_ES" (con los locales es_ES y
[EMAIL PROTECTED] generados). Con esto obtengo los mensajes del sistema y las
p�ginas "man" en castellano.

Tras hacer (en bash) "export LC_ALL=C" el "ls [A-Z][A-Z]*" funciona como
supongo que debe hacerlo, pero pierdo los mensajes del sistema y las
p�ginas "man" en castellano. Ahora est�n en ingl�s.
Tras hacer pruebas haciendo combinaciones entre todas las variables LC_*
(LC_CTYPE, LC_COLLATE, etc...) y los valores "C" y "es_ES" e incluso
"none", veo ejecutando el programa "locale" que da igual el valor que
tengan las variables LC_* mediante "export", pues el valor que se asigne
a LC_ALL, es el valor que toman el resto de LC_*.

Ahora la pregunta:
�C�mo podr�a obtener mensajes y p�ginas "man" en castellano y que el
"ls" funcione correctamente con esa expresi�n regular?


Prueba esto:

* No le des ning�n valor a la variable LC_ALL. En ninguna parte.
* export LANG=es_ES
* export LC_COLLATE=C

As� todas las variables valdr�n "es_ES" menos LC_COLLATE que valdr� "C"
y que por lo que parece, es la variable que determina cu�l ser� la
"traducci�n" de [A-Z].









Responder a