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.

% English language locale for Singapore.
% Contributed by Kentaroh Noji <knoji@jp.ibm.com> and
% Tetsuji Orita <orita@jp.ibm.com>.

LC_IDENTIFICATION
title      "English language locale for Singapore"
source     "IBM Globalization Center of Competency, Yamato Software Laboratory"
address    "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact    ""
email      "bug-glibc-locales@gnu.org"
tel         ""
fax         ""
language    "English"
territory   "Singapore"
revision    "1.0"
date        "2000,October,27 (XML source:2000,July,20)"

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_MONETARY
category "i18n:2012";LC_MESSAGES
category "i18n:2012";LC_PAPER
category "i18n:2012";LC_NAME
category "i18n:2012";LC_ADDRESS
category "i18n:2012";LC_TELEPHONE
category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION

LC_CTYPE
copy "en_GB"
END LC_CTYPE

LC_COLLATE

% Copy the template from ISO/IEC 14651
copy "iso14651_t1"

END LC_COLLATE


LC_MONETARY
% This is the POSIX Locale definition the LC_MONETARY category
% generated by IBM Basic CountryPack Transformer.
% These are generated based on XML base Locale defintion file
% for IBM Class for Unicode.
%
int_curr_symbol       "SGD "
currency_symbol       "$"
mon_decimal_point     "."
mon_thousands_sep     ","
mon_grouping          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           0
%
END LC_MONETARY


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


LC_TIME
% This is the POSIX Locale definition for the LC_TIME category
% generated by IBM Basic CountryPack Transformer.
% These are generated based on XML base Locale definition file
% for IBM Class for Unicode.
%
% Abbreviated weekday names (%a)
abday       "Sun";"Mon";"Tue";"Wed";"Thu";"Fri";"Sat"
%
% Full weekday names (%A)
day         "Sunday";"Monday";/
            "Tuesday";"Wednesday";/
            "Thursday";"Friday";/
            "Saturday"
%
% Abbreviated month names (%b)
abmon       "Jan";"Feb";/
            "Mar";"Apr";/
            "May";"Jun";/
            "Jul";"Aug";/
            "Sep";"Oct";/
            "Nov";"Dec"
%
% Full month names (%B)
mon         "January";"February";/
            "March";"April";/
            "May";"June";/
            "July";"August";/
            "September";"October";/
            "November";"December"
%
% Equivalent of AM PM
am_pm       "AM";"PM"
%
% Appropriate date and time representation
d_t_fmt     "%a %d %b %Y %r"
%
% Appropriate date representation
d_fmt       "%d//%m//%Y"
%
% Appropriate time representation
t_fmt       "%T"
%
% Appropriate 12 h time representation (%r)
t_fmt_ampm  "%I:%M:%S %p"
%
week 7;19971130;1
END LC_TIME


LC_MESSAGES
copy "en_US"
END LC_MESSAGES


LC_PAPER
copy "i18n"
END LC_PAPER


LC_NAME
% This is the ISO_IEC TR14652 Locale definition for the LC_NAME category
% generated by IBM Basic CountryPack Transformer.
%
%
name_fmt    "%p%t%f%t%g"
name_gen    ""
name_mr     "Mr."
name_mrs    "Mrs."
name_miss   "Miss."
name_ms     "Ms."

END LC_NAME


LC_ADDRESS
% This is the ISO_IEC TR14652 Locale definition for the LC_ADDRESS category
% generated by IBM Basic CountryPack Transformer.
postal_fmt  "%z%c%T%s%b%e%r"
country_name "Singapore"
country_ab2   "SG"
country_ab3   "SGP"
country_num   702
country_car   "SGP"
lang_name     "English"
lang_ab      "en"
lang_term    "eng"
lang_lib    "eng"
END LC_ADDRESS


LC_TELEPHONE
% This is the ISO_IEC TR14652 Locale definition for the LC_TELEPHONE
% generated by IBM Basic CountryPack Transformer.
tel_int_fmt "+%c ;%a ;%l"
int_prefix "65"
int_select "001"
END LC_TELEPHONE


LC_MEASUREMENT
copy "i18n"
END LC_MEASUREMENT
