.\" Automatically generated by Pod::Man 4.07 (Pod::Simple 3.32)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings. \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote. \*(C+ will
.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
.\" nothing in troff, for use with C<>.
.tr \(*W-
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
. ds -- \(*W-
. ds PI pi
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
. ds L" ""
. ds R" ""
. ds C` ""
. ds C' ""
'br\}
.el\{\
. ds -- \|\(em\|
. ds PI \(*p
. ds L" ``
. ds R" ''
. ds C`
. ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\"
.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD. Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.if !\nF .nr F 0
.if \nF>0 \{\
. de IX
. tm Index:\\$1\t\\n%\t"\\$2"
..
. if !\nF==2 \{\
. nr % 0
. nr F 2
. \}
.\}
.\" ========================================================================
.\"
.IX Title "Locale::Codes::Language 3perl"
.TH Locale::Codes::Language 3perl "2018-11-29" "perl v5.24.1" "Perl Programmers Reference Guide"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
Locale::Codes::Language \- standard codes for language identification
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& use Locale::Codes::Language;
\&
\& $lang = code2language(\*(Aqen\*(Aq); # $lang gets \*(AqEnglish\*(Aq
\& $code = language2code(\*(AqFrench\*(Aq); # $code gets \*(Aqfr\*(Aq
\&
\& @codes = all_language_codes();
\& @names = all_language_names();
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
This module provides access to standard codes used
for identifying languages, such as those as defined in \s-1ISO 639.\s0
.PP
Most of the routines take an optional additional argument which
specifies the code set to use. If not specified, the default \s-1ISO
639\s0 two-letter codes will be used.
.SH "SUPPORTED CODE SETS"
.IX Header "SUPPORTED CODE SETS"
There are several different code sets you can use for identifying
languages. A code set may be specified using either a name, or a
constant that is automatically exported by this module.
.PP
For example, the two are equivalent:
.PP
.Vb 2
\& $lang = code2language(\*(Aqen\*(Aq,\*(Aqalpha\-2\*(Aq);
\& $lang = code2language(\*(Aqen\*(Aq,LOCALE_LANG_ALPHA_2);
.Ve
.PP
The codesets currently supported are:
.IP "\fBalpha\-2, \s-1LOCALE_LANG_ALPHA_2\s0\fR" 4
.IX Item "alpha-2, LOCALE_LANG_ALPHA_2"
This is the set of two-letter (lowercase) codes from \s-1ISO 639\-1,\s0 such
as 'he' for Hebrew. It also includes additions to this set included
in the \s-1IANA\s0 language registry.
.Sp
This is the default code set.
.IP "\fBalpha\-3, \s-1LOCALE_LANG_ALPHA_3\s0\fR" 4
.IX Item "alpha-3, LOCALE_LANG_ALPHA_3"
This is the set of three-letter (lowercase) bibliographic codes from
\&\s-1ISO 639\-2\s0 and 639\-5, such as 'heb' for Hebrew. It also includes
additions to this set included in the \s-1IANA\s0 language registry.
.IP "\fBterm, \s-1LOCALE_LANG_TERM\s0\fR" 4
.IX Item "term, LOCALE_LANG_TERM"
This is the set of three-letter (lowercase) terminologic codes from
\&\s-1ISO 639.\s0
.SH "ROUTINES"
.IX Header "ROUTINES"
.IP "\fBcode2language(\s-1CODE\s0 [,CODESET] [,'retired'])\fR" 4
.IX Item "code2language(CODE [,CODESET] [,'retired'])"
.PD 0
.IP "\fBlanguage2code(\s-1NAME\s0 [,CODESET] [,'retired'])\fR" 4
.IX Item "language2code(NAME [,CODESET] [,'retired'])"
.IP "\fBlanguage_code2code(\s-1CODE ,CODESET ,CODESET2\s0)\fR" 4
.IX Item "language_code2code(CODE ,CODESET ,CODESET2)"
.IP "\fBall_language_codes([\s-1CODESET\s0] [,'retired'])\fR" 4
.IX Item "all_language_codes([CODESET] [,'retired'])"
.IP "\fBall_language_names([\s-1CODESET\s0] [,'retired'])\fR" 4
.IX Item "all_language_names([CODESET] [,'retired'])"
.IP "\fBLocale::Codes::Language::rename_language(\s-1CODE ,NEW_NAME\s0 [,CODESET])\fR" 4
.IX Item "Locale::Codes::Language::rename_language(CODE ,NEW_NAME [,CODESET])"
.IP "\fBLocale::Codes::Language::add_language(\s-1CODE ,NAME\s0 [,CODESET])\fR" 4
.IX Item "Locale::Codes::Language::add_language(CODE ,NAME [,CODESET])"
.IP "\fBLocale::Codes::Language::delete_language(\s-1CODE\s0 [,CODESET])\fR" 4
.IX Item "Locale::Codes::Language::delete_language(CODE [,CODESET])"
.IP "\fBLocale::Codes::Language::add_language_alias(\s-1NAME ,NEW_NAME\s0)\fR" 4
.IX Item "Locale::Codes::Language::add_language_alias(NAME ,NEW_NAME)"
.IP "\fBLocale::Codes::Language::delete_language_alias(\s-1NAME\s0)\fR" 4
.IX Item "Locale::Codes::Language::delete_language_alias(NAME)"
.IP "\fBLocale::Codes::Language::rename_language_code(\s-1CODE ,NEW_CODE\s0 [,CODESET])\fR" 4
.IX Item "Locale::Codes::Language::rename_language_code(CODE ,NEW_CODE [,CODESET])"
.IP "\fBLocale::Codes::Language::add_language_code_alias(\s-1CODE ,NEW_CODE\s0 [,CODESET])\fR" 4
.IX Item "Locale::Codes::Language::add_language_code_alias(CODE ,NEW_CODE [,CODESET])"
.IP "\fBLocale::Codes::Language::delete_language_code_alias(\s-1CODE\s0 [,CODESET])\fR" 4
.IX Item "Locale::Codes::Language::delete_language_code_alias(CODE [,CODESET])"
.PD
These routines are all documented in the Locale::Codes::API man page.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
.IP "Locale::Codes" 4
.IX Item "Locale::Codes"
The Locale-Codes distribution.
.IP "Locale::Codes::API" 4
.IX Item "Locale::Codes::API"
The list of functions supported by this module.
.IP "" 4
.IX Item ""
Source of the \s-1ISO 639\-2\s0 codes.
.IP "" 4
.IX Item ""
Source of the \s-1ISO 639\-5\s0 codes.
.IP "" 4
.IX Item ""
The \s-1IANA\s0 language subtag registry.
.SH "AUTHOR"
.IX Header "AUTHOR"
See Locale::Codes for full author history.
.PP
Currently maintained by Sullivan Beck (sbeck@cpan.org).
.SH "COPYRIGHT"
.IX Header "COPYRIGHT"
.Vb 3
\& Copyright (c) 1997\-2001 Canon Research Centre Europe (CRE).
\& Copyright (c) 2001\-2010 Neil Bowers
\& Copyright (c) 2010\-2015 Sullivan Beck
.Ve
.PP
This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.