unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OpenBSD-3.6)
Page:
Section:
Apropos / Subsearch:
optional field



Locale::Language(Perl Programmers Reference GLocale::Language(3p)


NAME
       Locale::Language - ISO two letter codes for language iden-
       tification (ISO 639)

SYNOPSIS
           use Locale::Language;

           $lang = code2language('en');        # $lang gets 'English'
           $code = language2code('French');    # $code gets 'fr'

           @codes   = all_language_codes();
           @names   = all_language_names();

DESCRIPTION
       The "Locale::Language" module provides access to the ISO
       two-letter codes for identifying languages, as defined in
       ISO 639. You can either access the codes via the "conver-
       sion routines" (described below), or via the two functions
       which return lists of all language codes or all language
       names.

CONVERSION ROUTINES
       There are two conversion routines: "code2language()" and
       "language2code()".

       code2language()
           This function takes a two letter language code and
           returns a string which contains the name of the lan-
           guage identified. If the code is not a valid language
           code, as defined by ISO 639, then "undef" will be
           returned.

               $lang = code2language($code);

       language2code()
           This function takes a language name and returns the
           corresponding two letter language code, if such
           exists.  If the argument could not be identified as a
           language name, then "undef" will be returned.

               $code = language2code('French');

           The case of the language name is not important.  See
           the section "KNOWN BUGS AND LIMITATIONS" below.

QUERY ROUTINES
       There are two function which can be used to obtain a list
       of all language codes, or all language names:

       "all_language_codes()"
           Returns a list of all two-letter language codes.  The
           codes are guaranteed to be all lower-case, and not in
           any particular order.




perl v5.8.5                 2002-11-06                          1





Locale::Language(Perl Programmers Reference GLocale::Language(3p)


       "all_language_names()"
           Returns a list of all language names for which there
           is a corresponding two-letter language code. The names
           are capitalised, and not returned in any particular
           order.

EXAMPLES
       The following example illustrates use of the "code2lan-
       guage()" function.  The user is prompted for a language
       code, and then told the corresponding language name:

           $| = 1;    # turn off buffering

           print "Enter language code: ";
           chop($code = <STDIN>);
           $lang = code2language($code);
           if (defined $lang)
           {
               print "$code = $lang\n";
           }
           else
           {
               print "'$code' is not a valid language code!\n";
           }

KNOWN BUGS AND LIMITATIONS
       o   In the current implementation, all data is read in
           when the module is loaded, and then held in memory.  A
           lazy implementation would be more memory friendly.

       o   Currently just supports the two letter language codes
           - there are also three-letter codes, and numbers.
           Would these be of any use to anyone?

SEE ALSO
       Locale::Country
           ISO codes for identification of country (ISO 3166).
           Supports 2-letter, 3-letter, and numeric country
           codes.

       Locale::Script
           ISO codes for identification of written scripts (ISO
           15924).

       Locale::Currency
           ISO three letter codes for identification of curren-
           cies and funds (ISO 4217).

       ISO 639:1988 (E/F)
           Code for the representation of names of languages.

       http://lcweb.loc.gov/standards/iso639-2/langhome.html
           Home page for ISO 639-2.




perl v5.8.5                 2002-11-06                          2





Locale::Language(Perl Programmers Reference GLocale::Language(3p)


AUTHOR
       Neil Bowers <neilATbowers.com>

COPYRIGHT
       Copyright (C) 2002-2004, Neil Bowers.

       Copyright (c) 1997-2001 Canon Research Centre Europe
       (CRE).

       This module is free software; you can redistribute it
       and/or modify it under the same terms as Perl itself.














































perl v5.8.5                 2002-11-06                          3