comment_char %
escape_char /

% This file is part of the GNU C Library and contains locale data.
% The Free Software Foundation does not claim any copyright interest
% in the locale data contained in this file.  The foregoing does not
% affect the license of the GNU C Library as a whole.  It does not
% exempt you from the conditions of the license if your use would
% otherwise be governed by that license.

% Azeri Language Locale for Azerbaijan (latin)
% Source:
% Contact: Pablo Saratxaga
% Email: <pablo@mandrakesoft.com>
% Language: az
% Territory: AZ
% Revision: 0.6
% Date: 2003-12-06
% Application: general
% Users: general

LC_IDENTIFICATION
title "Azeri language locale for Azerbaijan (latin)"
source ""
address ""
contact "Pablo Saratxaga"
email "pablo@mandrakesoft.com"
tel ""
fax ""
language "Azerbaijani"
territory "Azerbaijan"
revision "0.4"
date "2001-01-26"

category "i18n:2012";LC_IDENTIFICATION
category "i18n:2012";LC_CTYPE
category "i18n:2012";LC_COLLATE
category "i18n:2012";LC_TIME
category "i18n:2012";LC_NUMERIC
category "i18n:2012";LC_PAPER
category "i18n:2012";LC_TELEPHONE
category "i18n:2012";LC_MEASUREMENT
category "i18n:2012";LC_ADDRESS
category "i18n:2012";LC_MONETARY
category "i18n:2012";LC_MESSAGES
END LC_IDENTIFICATION

%
% TODO: check LC_COLLATE
% TODO: fix LC_MONETARY

LC_COLLATE
% The new (1991) latin azeri alphabet is:
% <a>, <b>, <c>, <c,>, <d>, <e>, <sw>, <f>, <g>, <g(>, <h>, <x>,
% <i> (dotless i), <i.> (i with dot), <j>, <k>, <q>, <l>, <m>, <n>, <o>,
% <o:>, <p>, <r>, <s>, <s,>, <t>, <u>, <u:>, <v>, <y>, <z>
%
% cyrillic alphabet:
% <a=>, <b=>, <g=>, <g-=>, <d=>, <e=>, <sw=>, <z%>, <z=>, <i=>, <y=>,
% <j%>, <k=>, <k//=>, <l=>, <m=>, <n=>, <o=>, <o-=>, <p=>, <r=>, <s=>,
% <t=>, <u=>, <u'=>, <f=>, <h=>, <h'=>, <c%>, <c%//=>, <s%>

copy "iso14651_t1"

collating-symbol <c,>
collating-symbol <sw>
collating-symbol <g(>
collating-symbol <i.>
collating-symbol <o:>
collating-symbol <s,>
collating-symbol <u:>

collating-symbol <g-=>
collating-symbol <sw=>
collating-symbol <k//=>
collating-symbol <o-=>
collating-symbol <u'=>
collating-symbol <h'=>
collating-symbol <c%//=>

reorder-after <c>
<c,>
reorder-after <e>
<sw>
reorder-after <g>
<g(>
reorder-after <h>
<x>
<i>
<i.>
<j>
<k>
<q>
reorder-after <o>
<o:>
reorder-after <s>
<s,>
reorder-after <u>
<u:>

reorder-after <CYR-GHE>
<g-=>
reorder-after <CYR-IE>
<sw=>
reorder-after <CYR-KA>
<k//=>
reorder-after <CYR-O>
<o-=>
reorder-after <CYR-OUBRE>
<u'=>
reorder-after <CYR-HA>
<h'=>
reorder-after <CYR-CHE>
<c%//=>

reorder-after <U0063>
<U00E7> <c,>;<CDI>;<MIN>;IGNORE
reorder-after <U0043>
<U00C7> <c,>;<CDI>;<CAP>;IGNORE

reorder-after <U0065>
<U0259> <sw>;<PCL>;<MIN>;IGNORE
reorder-after <U0045>
<U018F> <sw>;<PCL>;<CAP>;IGNORE

reorder-after <U0067>
<U011F> <g(>;<BRE>;<MIN>;IGNORE
reorder-after <U0047>
<U011E> <g(>;<BRE>;<CAP>;IGNORE

reorder-after <U0068>
<U0131> <i>;<BAS>;<MIN>;IGNORE
<U0069> <i.>;<PCT>;<MIN>;IGNORE
reorder-after <U0048>
<U0049> <i>;<BAS>;<CAP>;IGNORE
<U0130> <i.>;<PCT>;<CAP>;IGNORE

reorder-after <U006F>
<U00F6> <o:>;<REU>;<MIN>;IGNORE
reorder-after <U004F>
<U00D6> <o:>;<REU>;<CAP>;IGNORE

reorder-after <U0073>
<U015F> <s,>;<CDI>;<MIN>;IGNORE
reorder-after <U0053>
<U015E> <s,>;<CDI>;<CAP>;IGNORE

reorder-after <U0075>
<U00FC> <u:>;<REU>;<MIN>;IGNORE
reorder-after <U0055>
<U00DC> <u:>;<REU>;<CAP>;IGNORE

reorder-after <U0433>
<U0493> <g-=>;<PCL>;<MIN>;IGNORE
reorder-after <U0413>
<U0492> <g-=>;<PCL>;<CAP>;IGNORE

reorder-after <U0435>
<U04D9> <sw=>;<PCL>;<MIN>;IGNORE
reorder-after <U0415>
<U04D8> <sw=>;<PCL>;<CAP>;IGNORE

reorder-after <U043A>
<U049D> <k//=>;<PCL>;<MIN>;IGNORE
reorder-after <U041A>
<U049C> <k//=>;<PCL>;<CAP>;IGNORE

reorder-after <U043E>
<U04E9> <o-=>;<PCL>;<MIN>;IGNORE
reorder-after <U041E>
<U04E8> <o-=>;<PCL>;<CAP>;IGNORE

reorder-after <U0443>
<U04AF> <u'=>;<PCL>;<MIN>;IGNORE
reorder-after <U0423>
<U04AE> <u'=>;<PCL>;<CAP>;IGNORE

reorder-after <U0445>
<U04BB> <h'=>;<PCL>;<MIN>;IGNORE
reorder-after <U0425>
<U04BA> <h'=>;<PCL>;<CAP>;IGNORE

reorder-after <U0447>
<U04B9> <c%//=>;<PCL>;<MIN>;IGNORE
reorder-after <U0427>
<U04B8> <c%//=>;<PCL>;<CAP>;IGNORE

reorder-end

END LC_COLLATE

LC_CTYPE
copy "tr_TR"
translit_start

% schwa -> a:
<U0259> "<U00E4>"
<U018F> "<U00C4>"

translit_end

END LC_CTYPE

LC_MESSAGES
% No is "yox"; that conflicts with English "yes". The man page of
% rpmatch says: “Regardless  of  the  locale, responses  matching  ^[Yy]  are
% always accepted as affirmative, and those matching ^[Nn] are
% always accepted as negative.”. But that is not quite right, actually
% yesexpr "^[+1Bb]" and noexpr  "^[-0YyNn]" make a response matching “^[Yy]”
% accepted as *negative*. So the expressions below do work as they
% should for Azeri.
yesexpr "^[+1bBhH]"
noexpr  "^[-0YyNn]"
yesstr  "h<U0259>"
nostr   "yox"
END LC_MESSAGES

LC_MONETARY
int_curr_symbol           "AZN "
currency_symbol           "<U20BC>"
mon_decimal_point         "."
mon_thousands_sep         "<U202F>"
mon_grouping              3;3
positive_sign             ""
negative_sign             "-"
int_frac_digits           2
frac_digits               2
p_cs_precedes             0
p_sep_by_space            1
n_cs_precedes             0
n_sep_by_space            1
p_sign_posn               1
n_sign_posn               1
END LC_MONETARY

LC_NUMERIC
decimal_point             ","
thousands_sep             "."
grouping                  3;3
END LC_NUMERIC

LC_TIME
day     "bazar g<U00FC>n<U00FC>";/
        "bazar ert<U0259>si";/
        "<U00E7><U0259>r<U015F><U0259>nb<U0259> ax<U015F>am<U0131>";/
        "<U00E7><U0259>r<U015F><U0259>nb<U0259>";/
        "c<U00FC>m<U0259> ax<U015F>am<U0131>";/
        "c<U00FC>m<U0259>";/
        "<U015F><U0259>nb<U0259>"
abday   "baz";/
        "ber";/
        "<U00E7>ax";/
        "<U00E7><U0259>r";/
        "cax";/
        "c<U00FC>m";/
        "<U015F>nb"
mon     "yanvar";/
        "fevral";/
        "mart";/
        "aprel";/
        "may";/
        "iyun";/
        "iyul";/
        "avqust";/
        "sentyabr";/
        "oktyabr";/
        "noyabr";/
        "dekabr"
abmon   "Yan";/
        "Fev";/
        "Mar";/
        "Apr";/
        "May";/
        "<U0130>yn";/
        "<U0130>yl";/
        "Avq";/
        "Sen";/
        "Okt";/
        "Noy";/
        "Dek"
d_t_fmt "%A, %d %B %Y %T"
d_fmt     "%d.%m.%Y"
t_fmt     "%T"
am_pm     "";""
t_fmt_ampm ""
week 7;19971130;1
first_weekday 2
END LC_TIME

LC_PAPER
copy "i18n"
END LC_PAPER

LC_MEASUREMENT
copy "i18n"
END LC_MEASUREMENT

LC_ADDRESS
% FIXME
postal_fmt "???"
country_name "Az<U0259>rbaycan"
country_ab2 "AZ"
country_ab3 "AZE"
country_num 031
country_car    "AZ"
% Azərbaycanca
lang_name    "az<U0259>rbaycan dili"
lang_ab      "az"
lang_term    "aze"
lang_lib    "aze"
END LC_ADDRESS

LC_TELEPHONE
tel_int_fmt "+%c %a %l"
int_prefix "994"
int_select "00"
END LC_TELEPHONE

LC_NAME
% FIXME
name_fmt "???"
END LC_NAME
