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.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Somali language locale for Somalia.
%
% Somali terms provided by Mohamed Diriye Abdullahi <diriyeam@magellan.umontreal.ca>
% Department of Linguistics and Translation, Université de Montréal, Montreal.
% Prepared and contributed to glibc by Daniel Yacob <locales@geez.org>.
%
% This locale data has been developed under the Yeha Project:
%      http://yeha.sourceforge.net/
%
% build with: localedef -f ISO-8859-1 -i so_SO so_SO
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


LC_IDENTIFICATION
%
title      "Somali language locale for Somalia"
source     "Ge'ez Frontier Foundation"
address    "7802 Solomon Seal Dr., Springfield, VA 22152, USA"
contact    ""
email      "locales@geez.org"
tel        ""
fax        ""
language   "Somali"
territory  "Somalia"
revision   "0.20"
date       "2003-07-05"

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


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%  Latin Character Set Specifc Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

LC_COLLATE
copy "iso14651_t1"
END LC_COLLATE

LC_CTYPE
copy "i18n"

translit_start
include  "translit_combining";""
translit_end
END LC_CTYPE


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%  Somalia Specific and Shared Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

LC_MEASUREMENT
copy "i18n"
END LC_MEASUREMENT


LC_MONETARY
%
int_curr_symbol       "SOS "
currency_symbol       "S"
mon_decimal_point     "."
mon_thousands_sep     ","
mon_grouping          3;3
positive_sign         ""
negative_sign         "-"
int_frac_digits       2
frac_digits           2
p_cs_precedes         1
p_sep_by_space        0
n_cs_precedes         1
n_sep_by_space        0
p_sign_posn           1
n_sign_posn           1
%
END LC_MONETARY


LC_NUMERIC
%
% This is the POSIX Locale definition for the LC_NUMERIC category.
%
decimal_point          "."
thousands_sep          ","
grouping               3;3
%
END LC_NUMERIC


LC_PAPER
copy "i18n"
END LC_PAPER


LC_TELEPHONE
%
% This is the ISO_IEC TR14652 Locale definition for the LC_TELEPHONE category.
%
tel_dom_fmt    "%a-%l"
tel_int_fmt    "%c-%a-%l"
int_prefix     "252"
int_select     "00"
END LC_TELEPHONE


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%  Somali Specific Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

LC_NAME
%
% This is the ISO_IEC TR14652 Locale definition for the LC_NAME category.
%
name_fmt    "%d%t%g%t%m%t%f"
name_gen    ""
name_mr     "Md"
name_mrs    "Mw"
name_miss   ""
name_ms     "Mw"
%
END LC_NAME


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%  Somali/DJ Specific Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

LC_ADDRESS
%
% This is the ISO_IEC TR14652 Locale definition for the LC_ADDRESS category.
%
postal_fmt    "%z%c%T%s%b%e%r"
country_name  "Soomaaliya"
country_post  "SOM"
country_ab2   "SO"
country_ab3   "SOM"
country_num   706
country_car   "SO"
% country_isbn  unknown, Need ISO 2108
lang_name     "Soomaali"
lang_ab       "so"
lang_term     "som"
lang_lib      "som"
%
END LC_ADDRESS


LC_MESSAGES
yesexpr "^[+1yY]"
noexpr  "^[-0nN]"
yesstr  "haa"
nostr   "maya"
END LC_MESSAGES


LC_TIME
%
% Abbreviated weekday names (%a)
%
abday    "Axd";/
         "Isn";/
         "Sal";/
         "Arb";/
         "Kha";/
         "Jim";/
         "Sab"
%
% Full weekday names (%A)
%
day      "Axad";/
         "Isniin";/
         "Salaaso";/
         "Arbaco";/
         "Khamiis";/
         "Jimco";/
         "Sabti"
%
% Abbreviated month names (%b)
%
abmon    "Kob";/
         "Lab";/
         "Sad";/
         "Afr";/
         "Sha";/
         "Lix";/
         "Tod";/
         "Sid";/
         "Sag";/
         "Tob";/
         "KIT";/
         "LIT"
%
% Full month names (%B)
%
mon      "Bisha Koobaad";/
         "Bisha Labaad";/
         "Bisha Saddexaad";/
         "Bisha Afraad";/
         "Bisha Shanaad";/
         "Bisha Lixaad";/
         "Bisha Todobaad";/
         "Bisha Sideedaad";/
         "Bisha Sagaalaad";/
         "Bisha Tobnaad";/
         "Bisha Kow iyo Tobnaad";/
         "Bisha Laba iyo Tobnaad"
%
% Equivalent of AM PM
%
am_pm    "subaxnimo";"galabnimo"
%
% Appropriate date representation (%x)
%
d_fmt   "%d//%m//%Y"
%
% Appropriate time representation (%X)
%
t_fmt "%l:%M:%S"
%
% Appropriate AM/PM time representation (%r)
%
t_fmt_ampm "%X %p"
%
% Appropriate date and time representation (%c)
%
d_t_fmt    "%A, %B %e, %Y %r %Z"
%
% Appropriate date representation (date(1))
%
date_fmt    "%A, %B %e, %r %Z %Y"
%
week 7;19971130;1
first_weekday 2
END LC_TIME
