Difference between revisions of "Locale (Español)"

From ArchWiki
Jump to: navigation, search
(Locales (Españo): iniciado)
 
(marcado como desactualizado)
 
(47 intermediate revisions by 13 users not shown)
Line 1: Line 1:
{{ translateme }}
+
[[Category:Localization (Español)]]
 +
[[ar:Locale]]
 +
[[cs:Locale]]
 +
[[de:Locale]]
 +
[[en:Locale]]
 +
[[fr:Locale]]
 +
[[it:Locale]]
 +
[[ja:ロケール]]
 +
[[ko:Locale]]
 +
[[nl:Locale]]
 +
[[pt:Locale]]
 +
[[ru:Locale]]
 +
[[zh-hans:Locale]]
 +
{{Translateme (Español)|Desactualizado.}}
 +
Los locales se utilizan en Linux para definir el idioma que el usuario utiliza. En la medida que los locales definen los juegos de caracteres utilizados, establecer la configuración regional correcta es especialmente importante si el idioma contiene caracteres no ASCII.
  
[[Category:Internationalization (English)]]
+
Los nombres de los «locales» {{ic|(configuración regional)}} se definen utilizando el siguiente formato:
[[Category:HOWTOs (English)]]
+
<idioma>_<territorio>.<codeset>[@<modificadores>]
{{i18n_links_start}}
 
{{i18n_entry|Deutsch|Locales konfigurieren (Deutsch)}}
 
{{i18n_entry|English|Configuring locales}}
 
{{i18n_entry|Español|Locales}}
 
{{i18n_entry|Česky|Nastavení locales}}
 
{{i18n_entry|Українська|Локаль}}
 
{{i18n_entry|简体中文|Locales (简体中文)}}
 
{{i18n_links_end}}
 
  
==Introducción==
+
==Activar el «locale» necesario==
Los locales son utilizados en Linux para definir cual lenguaje utiliza el usuario. Como los locales definene también el mapa de carácteres que utiliza el usuario, ajustar el locale correcto es especialmente importante si el lenguaje contiene carácteres fuera del ASCII.
 
  
El [[Locale Naming|Nombrado Locale]] esta definido como sigue:
+
Antes de que un locale puede utilizarse en el sistema, tiene que ser activado primero. Para mostrar una lista de todos las versiones locales disponibles, utilice la orden:
  <lang>_<territory>.<codeset>[@<modifiers>]
+
   
 +
$ locale -a
  
En está guia configuramos un sistema que utiliza el locale es_MX.UTF-8, pero puede seguirse este artículo facilmente si se desea configurar otro locale diferente.
+
Para habilitar un locale, descomente el nombre del locale en el archivo {{ic|/etc/locale.gen}}. Este archivo contiene todos los locales disponibles que se pueden utilizar en el sistema. El proceso es reversible deshabilitando (comentando) el locale. Después de que los locales necesarios están habilitados, el sistema necesita ser actualizado con las nuevas configuraciones regionales:
  
==Habilitando el locale necesario==
+
# locale-gen
Primero es necesario que se habiliten los locales que se quieren soportar en el sistema. Para habilitar o deshabilirarlos, se utiliza el archivo <code>/etc/locale.gen</code>. Este contiene todos los locale que se pueden habilitar, y sólo se tiene que descomentar las lineas que se desean.
 
  
Como se quiere una configuración UTF-8 en español para el sistema, habilitamos es_MX.UTF-8. Pero por compatibilidad con los programas que no soportan UTF-8 aún, es recomendable dar soporte a cualquier otro locale, también con el prefijo es_MX. Teniendo esto en mente, habilitamos este conjuno de locales:
+
Para mostrar ahora los locales actualmente en uso, escriba:
  es_MX.UTF-8    UTF-8
+
   
  es_MX  ISO-8859-1
+
  $ locale
  
Después de haber habilitado los locales necesarios, se tendra que ejecutar el comando <code>locale-gen</code> como usuario root para actualizarlos:
+
{{Sugerencia|Aunque lo más probable es que se utilice un solo idioma en su máquina, puede ser útil o incluso necesario habilitar otros locales también. Si usted está funcionando en un sistema multi-usuario con  usuarios que no hablan, por ejemplo, en_US, sus otros locales personales deben, del mismo modo, ser soportados en su sistema.}}
 +
 
 +
===Ejemplo ES Español===
 +
 
 +
Primero descomente los locales siguientes en {{ic|/etc/locale.gen}}:
 +
 
 +
es_ES.UTF-8 UTF-8
 +
 
 +
A continuación, actualice el sistema como root:
 +
 
  # locale-gen
 
  # locale-gen
Generating locales...
 
  es_MX.UTF-8... done
 
  es_MX.ISO-8859-1... done
 
Generation complete.
 
  
{{Box Note|''Pensando en que la mayoría sólo pone un lenguaje puede ser de ayuda o incluso necesario habilitar otros locales también. Por ejemplo si se ejecuta un sistema multiusuarios con usuarios que no hablan es_MX, no estarán felices hasta que su locale individual este al menos proporcionado por el sistema.''}}
+
==Configuración del locale de todo el sistema==
 +
 
 +
Para definir la configuración regional de todo el sistema, establezca la variable {{ic|LANG}} en {{ic|/etc/locale.conf}}.
 +
 
 +
El contenido de {{ic|locale.conf}} es una lista de líneas separadas que definen las variables del entorno: además de {{ic|LANG}}, es compatible con todas las variables {{ic|LC_*}}, con excepción de {{ic|LC_ALL}}.
 +
 
 +
{{Nota|El archivo {{ic|/etc/locale.conf}} no existe por defecto, hay que crearlo manualmente.}}
 +
 
 +
{{Sugerencia| Si la salida de {{ic|locale}} durante la instalación es de su agrado, puede guardarla haciendo: {{ic| # locale &#124; cat > /etc/locale.conf}} mientras se encuentra en el entorno chroot.}}
  
==Setting system wide locale==
+
{{hc|/etc/locale.conf|2= LANG="es_ES.UTF-8"}}
To define which locale should be used by the system, you can easily add your locale to your '''/etc/rc.conf''' file. As we've just added ISO-8859 support just for (backward-)compability, we add en_US.utf-8 here:
 
LOCALE="en_US.utf8"
 
  
The system wide locale will be updated after rebooting your computer.
+
He aquí un ejemplo de configuración avanzada:
  
'''Important:''' You need to type the name of the locale '''exactly''' as shown in the output of <tt>`locale -a`</tt>. E.g. <tt>LOCALE="en_US.utf8"</tt> is valid, while <tt>LOCALE="en_US.UTF-8"</tt> is not.
+
{{hc|/etc/locale.conf|2=
 +
# Habilitar UTF-8 con valores españoles.
 +
LANG="es_ES.UTF-8"
  
==Setting per user locale==
+
# Mantener el orden predeterminado (por ejemplo, los archivos que comienzan con un '.' (punto)
As we discussed earlier, some users might want to define a different locale than the system-wide locale.
+
# se mostrarán al principio en un listado del contenido del directorio).
In this case, you can export LC_ALL in your '''~/.bashrc'''.
+
LC_COLLATE="C"
For example you can use the en_US.iso8859 locale, though there is no advantage of using it.
 
export LC_ALL=en_US.iso8859
 
  
Your locales will be updated as soon as you re-source your ~/.bashrc. This happens on login or alternatively you can type:
+
# Establecer la fecha al formato DD-MM-YYYY  (comprobación con «date +%c»)
 +
LC_TIME="es_ES.UTF-8"
 +
}}
 +
Puede establecer la configuración regional («locale») por defecto en {{ic|locale.conf}} o bien usando {{ic|localectl}}, por ejemplo:
 +
 
 +
# localectl set-locale LANG="es_ES.UTF-8"
 +
 
 +
Consulte {{man|1|localectl}} y {{man|5|locale.conf}} para más detalles.
 +
 
 +
La configuración regional de todo el sistema estará completamente actualizada después de reiniciar y quedará establecida para las sesiones individuales iniciadas.
 +
 
 +
==Configuración de locales de reserva==
 +
 
 +
En los programas que usan gettext para las traducciones comparadas, la opción {{ic|LANGUAGE}} se añade además de las variables habituales. Esto permite a los usuarios especificar una [http://www.gnu.org/software/gettext/manual/gettext.html#The-LANGUAGE-variable lista] de locales que se utilizarán en ese orden. Si la traducción de la configuración regional preferida no está disponible, otra de un escenario similar se utilizará en lugar de la predeterminada. Por ejemplo, un usuario argentino puede desear recurrir a la ortografía española, en defecto de la argentina, antes que a la de Chile, por ejemplo:
 +
{{hc|~/.bashrc|2=
 +
export LANGUAGE="es_AR:es_ES:es"
 +
}}
 +
o, para todo el sistema:
 +
{{hc|/etc/locale.conf|2=
 +
LANG="es_AR"
 +
LANGUAGE="es_AR:es_ES:es"
 +
}}
 +
 
 +
==Configuración de locales de usuarios==
 +
 
 +
Como mencionamos anteriormente, algunos usuarios podrían querer definir una configuración regional distinta a la definida de forma global para todo el sistema.
 +
 
 +
=== Establecer la configuración regional en el archivo de inicio de la shell ===
 +
Para ello, exporte la variable {{ic|LANG}} con el local especificado al archivo {{ic|~/.bashrc}}. Por ejemplo, para utilizar el locale {{ic|es_ES.UTF-8}}:
 +
export LANG=es_ES.UTF-8
 +
 
 +
Los locales se actualizarán la próxima vez que sea leído {{ic|~/.bashrc}}. Puede actualizar, ya sea reiniciando sesión o de forma manual:  
 
  $ source ~/.bashrc
 
  $ source ~/.bashrc
  
==Setting language==
+
===Establecer la configuración regional en {{ic|.locale.conf}}===
The language in which the system interacts with the user is also determined by the locales, namely the locale LC_LANG.
+
El script {{ic|etc/profile.d/locale.sh}} sobrescribe la configuración regional ''para todo el sistema'' con la que se encuentra en {{ic|$HOME/.config/locale.conf}}, si existe. Este archivo no existe de forma predeterminada, con lo que habrá que crearlo y poner la configuración regional del idioma deseado.
To set the preferred language, you have to export the LC_LANG variable in your ~/.bashrc.
 
export LC_LANG=en_EN.utf8
 
After sourcing your ~/.bashrc, programs ought to use the defined language, at least they do if they're using proper internationalization.
 
  
==Setting starting weekday==
+
{{hc|$HOME/.config/locale.conf|<nowiki>
In a lot of countries the first day of the week is Monday. To do change or add the following lines under the LC_TIME section in ''/usr/share/i18n/locales/<your_locale>''
+
LANG="es_ES.UTF-8"
 +
LANGUAGE="es_ES.UTF-8"
 +
</nowiki>}}
 +
 
 +
==Configuración de la intercalación==
 +
 
 +
La intercalación, (colación o clasificación), es un poco diferente a lo anterior. La clasificación es un mecanismo torpe, dado que locales diferentes se comportan de modo diverso. Para evitar posibles problemas, Arch utiliza la configuración {{ic|1=LC_COLLATE="C"}} en {{ic|/etc/profile}}. Sin embargo, este método es considerado obsoleto. Para habilitar este comportamiento, solo tiene que añadir la siguiente variable a {{ic|/etc/locale.conf}}:
 +
 
 +
LC_COLLATE="C"
 +
 
 +
Ahora, la orden {{ic|ls}} mostrará primero los archivos que comienzan con un punto, luego los nombres de los archivos que comiencen con mayúsculas y, después, los que comiencen con minúsculas. Tenga en cuenta que sin una opción {{ic|LC_COLLATE}}, las aplicaciones volverán a los valores especificados en {{ic|LC_ALL}} o {{ic|LANG}}, pero la configuración de {{ic| LC_COLLATE }} se sobrescribirá si {{ic|LC_ALL}} está definida. Si ésto crea problemas, asegúrese de que no se ha establecido ningún valor para LC_ALL añadiendo lo siguiente en el archivo {{ic|/etc/profile}}:
 +
export LC_ALL=
 +
Tenga en cuenta que LC_ALL es la única variable LC que '''no puede''' ser configurada en {{ic|/etc/locale.conf}}.
 +
 
 +
==Configuración del primer día de la semana==
 +
 
 +
En muchos países, el primer día de la semana es el lunes. Para regular este comportamiento, cambie o agregue las líneas siguientes de la sección {{ic|LC_TIME}} en {{ic|/usr/share/i18n/locales/<tus_locales> (por ejemplo, es_ES)}}:
  
 
  week            7;19971130;5
 
  week            7;19971130;5
 
  first_weekday  2
 
  first_weekday  2
 
  first_workday  2
 
  first_workday  2
And then run
 
  
# locale-gen
+
Y a continuación, actualice el sistema:
and restart X.
+
 
 +
  # locale-gen
 +
 
 +
==Solución de problemas==
 +
 
 +
===Mi terminal no es compatible con UTF-8 ===
  
==Troubleshooting==
+
Desafortunadamente, algunos terminales no son compatibles con UTF-8. En este caso, usted tiene que utilizar un terminal diferente. Aquí tiene una lista con algunos terminales que tienen soporte para UTF-8:
===How can I obtain the available locale names?===
 
You can get the correct names of all available locales with this command:
 
$ locale -a
 
===How can I see which locale I am using?===
 
Which locale is currently in use is viewable simply by typing:
 
$ locale
 
===My terminal doesn't support UTF-8 characters===
 
Unfortunately some terminals don't support UTF-8. In this case, you have to use a different terminal.
 
  
'''List of terminals that support UTF-8:'''
+
* vte-based terminals
* gnome-terminal
 
 
* gnustep-terminal
 
* gnustep-terminal
 
* konsole
 
* konsole
 
* [[mlterm]]
 
* [[mlterm]]
* urxvt (rxvt-unicode)
+
* [[rxvt-unicode]]
* xfce-terminal
+
* [[xterm]]
* xterm
+
 
'''Note:''' This list may be incomplete.
+
====Xterm no es compatible con UTF-8====
 +
 
 +
xterm solo es compatible con UTF-8 si lo ejecuta como {{ic|uxterm}} o {{ic|xterm -u8}}.
 +
 
 +
====Gnome-terminal o rxvt-unicode no es compatible con UTF-8====
 +
 
 +
Es necesario poner en marcha estas aplicaciones desde una localización UTF-8 o caerá el soporte UTF-8. Activar el locale {{ic|en_US.UTF-8}}  (o su locale UTF-8 alternativo) como se explicó anteriormente, y establézcalo como el idioma por defecto, reiniciando, a continuación, el sistema.
  
===xterm doesn't support UTF-8 characters for me===
+
==Véase también==
xterm only supports UTF-8 if you run it as uxterm or xterm -u8.
 
  
==Links==
+
* [http://www.gentoo.org/doc/en/guide-localization.xml Guía de Gentoo Linux sobre localización]
[http://gentoo-wiki.com/HOWTO_localedef GentooWiki: Localdef]
+
* [http://www.gentoo-wiki.info/Locales Gentoo Wiki Archives: Locales]
 +
* [http://demo.icu-project.org/icu-bin/locexp?_=en_US&x=col Test interactivo ICU sobre la clasificación]
 +
* [http://www.openi18n.org/ Free Standards Group Open Internationalisation Initiative]
 +
* [http://pubs.opengroup.org/onlinepubs/007908799/xbd/locale.html ''The Single UNIX Specification'' definition of Locale] by The Open Group
 +
* [https://help.ubuntu.com/community/EnvironmentVariables#Locale_setting_variables Locale environment variables]

Latest revision as of 10:49, 21 October 2018

Tango-preferences-desktop-locale.pngEste artículo o sección necesita ser traducido.Tango-preferences-desktop-locale.png

Notas: Desactualizado. (Discusión en Talk:Locale (Español)#)

Los locales se utilizan en Linux para definir el idioma que el usuario utiliza. En la medida que los locales definen los juegos de caracteres utilizados, establecer la configuración regional correcta es especialmente importante si el idioma contiene caracteres no ASCII.

Los nombres de los «locales» (configuración regional) se definen utilizando el siguiente formato:

<idioma>_<territorio>.<codeset>[@<modificadores>]

Activar el «locale» necesario

Antes de que un locale puede utilizarse en el sistema, tiene que ser activado primero. Para mostrar una lista de todos las versiones locales disponibles, utilice la orden:

$ locale -a

Para habilitar un locale, descomente el nombre del locale en el archivo /etc/locale.gen. Este archivo contiene todos los locales disponibles que se pueden utilizar en el sistema. El proceso es reversible deshabilitando (comentando) el locale. Después de que los locales necesarios están habilitados, el sistema necesita ser actualizado con las nuevas configuraciones regionales:

# locale-gen

Para mostrar ahora los locales actualmente en uso, escriba:

$ locale
Sugerencia: Aunque lo más probable es que se utilice un solo idioma en su máquina, puede ser útil o incluso necesario habilitar otros locales también. Si usted está funcionando en un sistema multi-usuario con usuarios que no hablan, por ejemplo, en_US, sus otros locales personales deben, del mismo modo, ser soportados en su sistema.

Ejemplo ES Español

Primero descomente los locales siguientes en /etc/locale.gen:

es_ES.UTF-8 UTF-8

A continuación, actualice el sistema como root:

# locale-gen

Configuración del locale de todo el sistema

Para definir la configuración regional de todo el sistema, establezca la variable LANG en /etc/locale.conf.

El contenido de locale.conf es una lista de líneas separadas que definen las variables del entorno: además de LANG, es compatible con todas las variables LC_*, con excepción de LC_ALL.

Nota: El archivo /etc/locale.conf no existe por defecto, hay que crearlo manualmente.
Sugerencia: Si la salida de locale durante la instalación es de su agrado, puede guardarla haciendo: # locale | cat > /etc/locale.conf mientras se encuentra en el entorno chroot.
/etc/locale.conf
LANG="es_ES.UTF-8"

He aquí un ejemplo de configuración avanzada:

/etc/locale.conf
# Habilitar UTF-8 con valores españoles.
LANG="es_ES.UTF-8"

# Mantener el orden predeterminado (por ejemplo, los archivos que comienzan con un '.' (punto)
# se mostrarán al principio en un listado del contenido del directorio).
LC_COLLATE="C"

# Establecer la fecha al formato DD-MM-YYYY  (comprobación con «date +%c»)
LC_TIME="es_ES.UTF-8"

Puede establecer la configuración regional («locale») por defecto en locale.conf o bien usando localectl, por ejemplo:

# localectl set-locale LANG="es_ES.UTF-8"

Consulte localectl(1) y locale.conf(5) para más detalles.

La configuración regional de todo el sistema estará completamente actualizada después de reiniciar y quedará establecida para las sesiones individuales iniciadas.

Configuración de locales de reserva

En los programas que usan gettext para las traducciones comparadas, la opción LANGUAGE se añade además de las variables habituales. Esto permite a los usuarios especificar una lista de locales que se utilizarán en ese orden. Si la traducción de la configuración regional preferida no está disponible, otra de un escenario similar se utilizará en lugar de la predeterminada. Por ejemplo, un usuario argentino puede desear recurrir a la ortografía española, en defecto de la argentina, antes que a la de Chile, por ejemplo:

~/.bashrc
export LANGUAGE="es_AR:es_ES:es"

o, para todo el sistema:

/etc/locale.conf
LANG="es_AR"
LANGUAGE="es_AR:es_ES:es"

Configuración de locales de usuarios

Como mencionamos anteriormente, algunos usuarios podrían querer definir una configuración regional distinta a la definida de forma global para todo el sistema.

Establecer la configuración regional en el archivo de inicio de la shell

Para ello, exporte la variable LANG con el local especificado al archivo ~/.bashrc. Por ejemplo, para utilizar el locale es_ES.UTF-8:

export LANG=es_ES.UTF-8

Los locales se actualizarán la próxima vez que sea leído ~/.bashrc. Puede actualizar, ya sea reiniciando sesión o de forma manual:

$ source ~/.bashrc

Establecer la configuración regional en .locale.conf

El script etc/profile.d/locale.sh sobrescribe la configuración regional para todo el sistema con la que se encuentra en $HOME/.config/locale.conf, si existe. Este archivo no existe de forma predeterminada, con lo que habrá que crearlo y poner la configuración regional del idioma deseado.

$HOME/.config/locale.conf
LANG="es_ES.UTF-8"
LANGUAGE="es_ES.UTF-8"

Configuración de la intercalación

La intercalación, (colación o clasificación), es un poco diferente a lo anterior. La clasificación es un mecanismo torpe, dado que locales diferentes se comportan de modo diverso. Para evitar posibles problemas, Arch utiliza la configuración LC_COLLATE="C" en /etc/profile. Sin embargo, este método es considerado obsoleto. Para habilitar este comportamiento, solo tiene que añadir la siguiente variable a /etc/locale.conf:

LC_COLLATE="C"

Ahora, la orden ls mostrará primero los archivos que comienzan con un punto, luego los nombres de los archivos que comiencen con mayúsculas y, después, los que comiencen con minúsculas. Tenga en cuenta que sin una opción LC_COLLATE, las aplicaciones volverán a los valores especificados en LC_ALL o LANG, pero la configuración de LC_COLLATE se sobrescribirá si LC_ALL está definida. Si ésto crea problemas, asegúrese de que no se ha establecido ningún valor para LC_ALL añadiendo lo siguiente en el archivo /etc/profile:

export LC_ALL=

Tenga en cuenta que LC_ALL es la única variable LC que no puede ser configurada en /etc/locale.conf.

Configuración del primer día de la semana

En muchos países, el primer día de la semana es el lunes. Para regular este comportamiento, cambie o agregue las líneas siguientes de la sección LC_TIME en /usr/share/i18n/locales/<tus_locales> (por ejemplo, es_ES):

week            7;19971130;5
first_weekday   2
first_workday   2

Y a continuación, actualice el sistema:

 # locale-gen

Solución de problemas

Mi terminal no es compatible con UTF-8

Desafortunadamente, algunos terminales no son compatibles con UTF-8. En este caso, usted tiene que utilizar un terminal diferente. Aquí tiene una lista con algunos terminales que tienen soporte para UTF-8:

Xterm no es compatible con UTF-8

xterm solo es compatible con UTF-8 si lo ejecuta como uxterm o xterm -u8.

Gnome-terminal o rxvt-unicode no es compatible con UTF-8

Es necesario poner en marcha estas aplicaciones desde una localización UTF-8 o caerá el soporte UTF-8. Activar el locale en_US.UTF-8 (o su locale UTF-8 alternativo) como se explicó anteriormente, y establézcalo como el idioma por defecto, reiniciando, a continuación, el sistema.

Véase también