Provided by: manpages-es_1.55-10_all bug

NOMBRE

       locale - Descripcion del soporte para multiples idiomas

SINOPSIS

       #include <locale.h>

DESCRIPCI'ON

       Una  localizacion  (locale)  es  un  conjunto  de  reglas  culturales e
       idiomaticas que abarcan  aspectos  tales  como  el  idioma  usado  para
       mensajes,  diferentes  juegos  de caracteres, convenios lexicograficos,
       etc. Un  programa  debe  poder  determinar  su  localizacion  y  actuar
       apropiadamente para poder ser transportado a diferentes culturas.

       El fichero de cabecera <locale.h> declara los tipos de datos, funciones
       y macros utilizados en esta tarea.

       Las funciones que  se  declaran  son  setlocale()  para  establecer  la
       localizacion  actual, y localeconv() para obtener informacion acerca de
       formatos numericos.

       Un programa puede necesitar varias categorias de informacion local, las
       cuales se determinan utilizando macros.  Usando una de estas categorias
       como primer argumento para la funcion setlocale() es posible  modificar
       uno de los siguientes atributos para que usen la localizacion adecuada:

       LC_COLLATE
              Usado  para cambiar el comportamiento de las funciones strcoll()
              y strxfrm(),  que  comparan  cadenas  de  caracteres  usando  el
              alfabeto  local.  Por  ejemplo, el caracter Aleman B (`ese aguda
              alemana') se alfabetiza como "ss".

       LC_TYPE
              Modifica el comportamiento de  las  funciones  que  manipulan  y
              clasifican  caracteres,  tales como isupper() y toupper(), y las
              funciones de caracteres multi-byte como mblen() o wctomb().

       LC_MONETARY
              Modifica la informacion devuelta por localeconv()  que  describe
              el  formato  en  que  los numeros deben ser impresos, incluyendo
              detalles tales como el uso del punto o  la  coma  decimal.  Esta
              informacion es usada internamente por la funcion strfmon().

       LC_MESSAGES
              Cambia el idioma en el que se muestran los mensajes, y como debe
              ser una respuesta afirmativa o negativa. La biblioteca de  C  de
              GNU  contiene  las  funciones gettext(), ngettext(), y rpmatch()
              para facilitar el uso de esta informacion.  La  familia  GNU  de
              funciones  gettext  tambien  obedecen  a  la variable de entorno
              LANGUAGE.

       LC_NUMERIC
              cambia la informacion empleada por  las  familias  de  funciones
              printf()  y  scanf()  cuando  se les informa de que utilicen las
              caracteristicas  locales.   Esta   informacion   tambien   puede
              obtenerse con la funcion localeconv().

       LC_TIME
              Modifica el comportamiento de la funcion strftime() para mostrar
              la hora actual usando el formato local apropiado;  por  ejemplo,
              en  casi  toda Europa se utiliza el formato de 24 horas mientras
              que en Estados Unidos se emplea el de 12 horas.

       LC_ALL Todas las categorias anteriores.

       Si el segundo argumento de la funcion setlocale() es una cadena  vacia,
       "",  se  usa  la  localizacion  predeterminada.  Esta  localizacion  se
       determina de la siguiente forma:

       1.     Si la variable de entorno LC_ALL existe  y  tiene  un  valor  no
              nulo, se usa este valor.

       2.     Si existe una variable de entorno con el mismo nombre que una de
              las categorias, y su valor es no nulo, se  usa  ese  valor  para
              dicha categoria.

       3.     Si  la  variable de entorno LANG, existe y su valor no es vacio,
              se usa dicho valor.

       Se puede obtener informacion sobre el formato numerico local usando  la
       estructura  struct  lconv  devuelta por la funcion localeconv().  Dicha
       estructura tiene la siguiente declaracion:

       struct lconv
       {
         /* Informacion numerica no monetaria. */

         char *decimal_point;        /* Caracter usado como punto decimal. */
         char *thousands_sep;        /* Separador de miles. */
         /* Cada elemento indica el numero de digitos en cada grupo;
            los elementos con indices altos estan hacia la izquierda.
            Un elemento con valor CHAR_MAX indica que a partir de esa
            posicion no se deben agrupar mas digitos.
            Un elemento con valor 0 indica que se debe usar el elemento
            anterior para todos los grupos hacia la izquierda. */
         char *grouping;

         /* Informacion monetaria. */

         /* Los primeros tres caracteres son el simbolo monetario segun
            ISO 4217. El cuarto caracter es el separador. El quinto
            caracter es ' '. */
         char *int_curr_symbol;
         char *currency_symbol;      /* Simbolo monetario local. */
         char *mon_decimal_point;    /* Caracter usado como punto decimal. */
         char *mon_thousands_sep;    /* Separador de miles. */
         char *mon_grouping;         /* Igual que el campo `grouping'(arriba) */
         char *positive_sign;        /* Signo para valores positivos. */
         char *negative_sign;        /* Signo para valores negativos. */
         char int_frac_digits;       /* Digitos fraccionales internacionales. */
         char frac_digits;           /* Digitos fraccionales locales. */
         char p_cs_precedes;         /* 1 si el simbolo monetario precede a un
                                          valor positivo, 0 si lo sucede. */

         char p_sep_by_space;        /* 1 si un espacio separa el simbolo
                                          monetario de un valor positivo. */

         char n_cs_precedes;         /* 1 si el simbolo monetario precede a
                                          un valor negativo, 0 si lo sucede. */

         char n_sep_by_space;        /* 1 si un espacio separa el simbolo
                                          monetario de un valor negativo. */

         /* Posiciones de los signos positivo y negativo:
            0 Parentesis rodean a la cantidad y al simbolo monetario.
            1 El signo precede a la cantidad y al simbolo monetario.
            2 El signo sucede a la cantidad y al simbolo monetario.
            3 El signo precede en forma inmediata al simbolo monetario.
            4 El signo sucede en forma inmediata al simbolo monetario. */
         char p_sign_posn;
         char n_sign_posn;
       };

CONFORME A

       POSIX.1
       Las funciones gettext de GNU estan especificadas en LI18NUX2000.

V'EASE TAMBI'EN

       setlocale(3), localeconv(3), locale(1),  localedef(1),  nl_langinfo(3),
       gettext(3),    ngettext(3),    rpmatch(3),    strfmon(3),   strcoll(3),
       strxfrm(3), strftime(3)