GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿Por qué la anulación de la variable de entorno Lang no me cambia el idioma?

Estoy tratando de ejecutar una aplicación en otro idioma como mi entorno actual. Para empezar simple, quería cambiar el idioma de ls .

Esto es lo que leí por todas partes (ver más abajo para preguntas relacionadas):establecer LANG a una de las configuraciones regionales admitidas, por ejemplo:

LANG=nl_NL.UTF-8 ls /nonexistent

para que muestre la salida en holandés (NL).

Sin embargo, sigo obteniendo resultados en inglés:

$ LANG=nl_NL.UTF-8 ls -al /nonexistent
ls: cannot access /nonexistent: No such file or directory

Mi entorno actual:

$ locale
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=

Para estar seguro, he comprobado:

  • La configuración regional es compatible:

    $ grep nl_NL /usr/share/i18n/SUPPORTED 
    nl_NL.UTF-8 UTF-8
    nl_NL ISO-8859-1
    [email protected] ISO-8859-15
    
  • Se genera la configuración regional:

    sudo locale-gen nl_NL.UTF-8
    

    y sudo dpkg-reconfigure locales también muestra que se genera.

  • Instalado el paquete de idioma holandés (ya instalado):

    sudo apt-get install language-pack-nl
    

¿Qué más he probado?

  • Uso de export para configurar ambos LANG y LANGUAGE en lugar de anteponer el comando.
  • Configuración también LC_ALL .

Irónicamente, algunas (¡solo algunas!) aplicaciones GUI están en holandés, ¡pero no las he configurado en absoluto!

Estoy en Kubuntu 12.04 (.2), ​​en lo que importa.

Preguntas similares (en vano):

  • ¿Es posible cambiar el idioma de la interfaz de usuario temporalmente?
  • ¿Cómo anular la configuración regional del sistema con un solo comando?
  • Cambiar temporalmente el idioma de los mensajes/advertencias/errores del terminal (se demostró que funciona, pero no me funciona a mí)
  • ¿Cómo agrego la configuración regional al servidor de ubuntu?

¿Qué está mal en mi sistema? ¿Dónde depurar esto más?

Respuesta aceptada:

Porque IDIOMA, que tiene prioridad sobre IDIOMA, está configurado y sin cambios.

$ LANGUAGE=nl ls /nonexistent
ls: kan geen toegang krijgen tot /nonexistent: Bestand of map bestaat niet

Hay más información en la documentación de GNU gettext:

GNU gettext da preferencia a LANGUAGE sobre LC_ALL y LANG para el manejo de mensajes, pero aún necesita tener LANG (o LC_ALL) configurado en el idioma principal; esto es requerido por otras partes de las bibliotecas del sistema.


Ubuntu
  1. ¿Por qué el documento principal Shell Here no funciona para el subcomando en Dash pero Bash funciona?

  2. ¿Por qué Regex en Bash funciona solo si es una variable y no directamente?

  3. ¿La contraseña para el sistema de archivos cifrados no se actualiza cuando cambio la contraseña de usuario?

  4. ¿Por qué Ctrl+\ (barra invertida) ya no elimina el proceso?

  5. ¿La variable de entorno Maven no funciona en otra terminal?

Por qué usar el escritorio Pantheon para Linux Elementary OS

Ubuntu:¿por qué no se muestran estos personajes elegantes en el aviso?

¿Por qué Network Manager siempre solicita la contraseña del conjunto de claves?

¿Cómo escanear las unidades flash en busca de virus de Windows mientras está en Linux? (no Clamav)?

¿Por qué hay dos íconos en el iniciador de Unity para Nautilus?

¿Qué es la variable de entorno XDG_VTNR?