comment_char %
escape_char  /
%
% Amazigh Language Locale for Algeria (latin)
% Source: 
% Contact: Pablo Saratxaga
% Email: <pablo@mandrakesoft.com>
% Language: ber
% Territory: DZ
% Revision: 0.1
% Date: 2002-04-16
% Application: general
% Users: general
% Charset: UTF-8
% Distribution and use is free, also
% for commercial purposes.

LC_IDENTIFICATION
title "Amazigh language locale for Algeria (latin)"
source ""
address ""
contact "Pablo Saratxaga"
email "pablo@mandrakesoft.com"
tel ""
fax ""
language "Amazigh"
territory "Algeria"
revision "0.1"
date "2002-04-16"

category ber_DZ:2000;LC_IDENTIFICATION
category ber_DZ:2000;LC_CTYPE
category ber_DZ:2000;LC_COLLATE
category ber_DZ:2000;LC_TIME
category ber_DZ:2000;LC_NUMERIC
category ber_DZ:2000;LC_PAPER
category ber_DZ:2000;LC_TELEPHONE
category ber_DZ:2000;LC_MEASUREMENT
category ber_DZ:2000;LC_ADDRESS
category ber_DZ:2000;LC_MONETARY
category ber_DZ:2000;LC_MESSAGES

END LC_IDENTIFICATION

%
% TODO: check LC_COLLATE
% TODO: fix LC_TIME, LC_MONETARY, LC_MESSAGES, LC_NAME, LC_ADDRESS

LC_COLLATE
% The latin amazigh alphabet is:       
% <a>, <eps>, <b>, <b*>, <c>, <c<>, <d>, <d-.>, <e>, <f>, <g>, <g*>, <g(>, 
% <h>, <h-.>, <i>, <j>, <k>, <k*>, <l>, <m>, <n>, <q>, <q*>, <gam>, <gam*>,
% <r>, <r-.>, <s>, <s-.>, <t>, <t-.>, <u>, <w>, <x>, <x*>, <y>, <z>, <z-.>
%
% arabic alphabet:

copy "iso14651_t1"

collating-symbol <eps>
%collating-symbol <b*>
collating-symbol <c<>
collating-symbol <d-.>
%collating-symbol <g*>
collating-symbol <g(>
collating-symbol <h-.>
%collating-symbol <k*>
%collating-symbol <q*>
collating-symbol <gam>
%collating-symbol <gam*>
collating-symbol <r-.>
collating-symbol <s-.>
collating-symbol <t-.>
%collating-symbol <x*>
collating-symbol <z-.>

reorder-after <a>
<eps>
%reorder-after <b>
%<b*>
reorder-after <c>
<c<>
reorder-after <d>
<d-.>
reorder-after <g>
%<g*>
<g(>
reorder-after <h>
<h-.>
%reorder-after <k>
%<k*>
reorder-after <q>
%<q*>
<gam>
%<gam*>
reorder-after <r>
<r-.>
reorder-after <s>
<s-.>
reorder-after <t>
<t-.>
%reorder-after <x>
%<x*>
reorder-after <z>
<z-.>

reorder-after <U0061>
<U025B> <eps>;<PCL>;<MIN>;IGNORE
reorder-after <U0041>
<U0190> <eps>;<PCL>;<CAP>;IGNORE

reorder-after <U0063>
<U010D> <c<>;<CAR>;<MIN>;IGNORE
reorder-after <U0043>
<U010C> <c<>;<CAR>;<CAP>;IGNORE

reorder-after <U0064>
<U1E0D> <d-.>;<PCT>;<MIN>;IGNORE
reorder-after <U0044>
<U1E0C> <d-.>;<PCT>;<CAP>;IGNORE

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

reorder-after <U0068>
<U1E25> <h-.>;<PCT>;<MIN>;IGNORE
reorder-after <U0048>
<U1E24> <h-.>;<PCT>;<CAP>;IGNORE

reorder-after <U0071>
<U0263> <gam>;<PCL>;<MIN>;IGNORE
reorder-after <U0051>
<U0194> <gam>;<PCL>;<CAP>;IGNORE

reorder-after <U0072>
<U1E5B> <r-.>;<PCT>;<MIN>;IGNORE
reorder-after <U0052>
<U1E5A> <r-.>;<PCT>;<CAP>;IGNORE

reorder-after <U0073>
<U1E63> <s-.>;<PCT>;<MIN>;IGNORE
reorder-after <U0053>
<U1E62> <s-.>;<PCT>;<CAP>;IGNORE

reorder-after <U0074>
<U1E6D> <t-.>;<PCT>;<MIN>;IGNORE
reorder-after <U0054>
<U1E6C> <t-.>;<PCT>;<CAP>;IGNORE

reorder-after <U007A>
<U1E93> <z-.>;<PCT>;<MIN>;IGNORE
reorder-after <U005A>
<U1E92> <z-.>;<PCT>;<CAP>;IGNORE

reorder-end

END LC_COLLATE

LC_CTYPE
copy "i18n"

translit_start
include "translit_combining";""
translit_end
END LC_CTYPE

LC_MESSAGES
% FIXME: yes/no
yesstr  "<U0062><U0259><U006C><U0069>"
nostr   "<U0079><U006F><U0078>"
yesexpr "<U005E><U005B><U0042><U0062><U005D><U002E><U002A>"
noexpr  "<U005E><U005B><U0059><U0079><U004E><U006E><U005D><U002E><U002A>"
END LC_MESSAGES

LC_MONETARY
% This is the POSIX Locale definition the LC_MONETARY category.
% These are generated based on XML base Locale difintion file
% for IBM Class for Unicode/Java
%
int_curr_symbol       "<U0044><U005A><U0044><U0020>"
currency_symbol       "<U062F><U002E><U062C><U002E>"
mon_decimal_point     "<U002E>"
mon_thousands_sep     "<U002C>"
mon_grouping          3
positive_sign         ""
negative_sign         "<U002D>"
int_frac_digits       3
frac_digits           3
p_cs_precedes         1
p_sep_by_space        1
n_cs_precedes         1
n_sep_by_space        1
p_sign_posn           1
n_sign_posn           2
%
END LC_MONETARY


LC_NUMERIC
% This is the POSIX Locale definition for the LC_NUMERIC  category.
%
decimal_point          "<U002E>"
thousands_sep          "<U002C>"
grouping               3
%
END LC_NUMERIC

% FIXME
LC_TIME
day     "<U0062><U0061><U007A><U0061><U0072><U0020><U0067><U00FC><U006E><U00FC>";/
        "<U0062><U0069><U0072><U0069><U006E><U0063><U0069><U0020><U0067><U00FC><U006E>";/
        "<U0069><U006B><U0069><U006E><U0063><U0069><U0020><U0067><U00FC><U006E>";/
        "<U00FC><U00E7><U00FC><U006E><U0063><U00FC><U0020><U0067><U00FC><U006E>";/
        "<U0064><U00F6><U0072><U0064><U00FC><U006E><U0063><U00FC><U0020><U0067><U00FC><U006E>";/
        "<U0062><U0065><U015F><U0069><U006E><U0063><U0069><U0020><U0067><U00FC><U006E>";/
        "<U0061><U006C><U0074><U0131><U006E><U0063><U0131><U0020><U0067><U00FC><U006E>"
abday   "<U0062><U0061><U007A>";/
        "<U0062><U0069><U0072>";/
        "<U0069><U006B><U0069>";/
        "<U00FC><U00E7><U00FC>";/
        "<U0064><U00F6><U0072>";/
        "<U0062><U0065><U015F>";/
        "<U0061><U006C><U0074>"
mon     "<U0079><U0061><U006E><U0076><U0061><U0072>";/
        "<U0066><U0065><U0076><U0072><U0061><U006C>";/
        "<U006D><U0061><U0072><U0074>";/
        "<U0061><U0070><U0072><U0065><U006C>";/
        "<U006D><U0061><U0079>";/
        "<U0069><U0079><U0075><U006E>";/
        "<U0069><U0079><U0075><U006C>";/
        "<U0061><U0076><U0071><U0075><U0073><U0074>";/
        "<U0073><U0065><U006E><U0074><U0079><U0061><U0062><U0072>";/
        "<U006F><U006B><U0074><U0079><U0061><U0062><U0072>";/
        "<U006E><U006F><U0079><U0061><U0062><U0072>";/
        "<U0064><U0065><U006B><U0061><U0062><U0072>"
abmon   "<U0059><U0061><U006E>";/
        "<U0046><U0065><U0076>";/
        "<U004D><U0061><U0072>";/
        "<U0041><U0070><U0072>";/
        "<U004D><U0061><U0079>";/
        "<U0130><U0079><U006E>";/
        "<U0130><U0079><U006C>";/
        "<U0041><U0076><U0071>";/
        "<U0053><U0065><U006E>";/
        "<U004F><U006B><U0074>";/
        "<U004E><U006F><U0079>";/
        "<U0044><U0065><U006B>"
d_t_fmt "<U0025><U0041><U002C><U0020><U0025><U0064><U0020><U0025><U0042><U0020><U0025><U0059><U0020><U0025><U0054>"
d_fmt     "<U0025><U0064><U002E><U0025><U006D><U002E><U0025><U0059>"
t_fmt     "<U0025><U0054>"
am_pm     "";""
t_fmt_ampm ""
END LC_TIME

LC_PAPER
height      297
width       210
END LC_PAPER

LC_MEASUREMENT
measurement 1
END LC_MEASUREMENT

LC_NAME
% This is the ISO_IEC TR14652 Locale definition for the
% LC_NAME category.
%
name_fmt    "<U0025><U0070><U0025><U0074><U0025><U0066><U0025><U0074>/
<U0025><U0067>"
name_gen    "<U002D><U0073><U0061><U006E>"
name_mr     "<U004D><U0072><U002E>"
name_mrs    "<U004D><U0072><U0073><U002E>"
name_miss   "<U004D><U0069><U0073><U0073><U002E>"
name_ms     "<U004D><U0073><U002E>"

END LC_NAME


LC_ADDRESS
% This is the ISO_IEC TR14652 Locale definition for the
% LC_ADDRESS
postal_fmt  "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
<U0025><U0062><U0025><U0065><U0025><U0072>"

%country_name ""
%country_post ""
country_ab2 "<U0044><U005A>"
country_ab3 "<U0044><U005A><U0041>"
country_num 12
%country_isbn ""
%country_car ""
lang_name "<U0074><U0061><U006D><U0061><U007A><U0069><U0067><U0068><U0074>"
%lang_ab 
lang_term "<U0062><U0065><U0072>"
lang_lib "<U0062><U0065><U0072>"


END LC_ADDRESS


LC_TELEPHONE
% This is the ISO_IEC TR14652 Locale definition for the
%
tel_int_fmt "<U002B><U0025><U0063><U0020><U003B><U0025><U0061><U0020>/
<U003B><U0025><U006C>"
int_prefix  "<U0032><U0031><U0033>"

END LC_TELEPHONE


