comment_char    %
escape_char     /

% 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  "en_SG:2000";LC_IDENTIFICATION
category  "en_SG:2000";LC_CTYPE
category  "en_SG:2000";LC_COLLATE
category  "en_SG:2000";LC_TIME
category  "en_SG:2000";LC_NUMERIC
category  "en_SG:2000";LC_MONETARY
category  "en_SG:2000";LC_MESSAGES
category  "en_SG:2000";LC_PAPER
category  "en_SG:2000";LC_NAME
category  "en_SG:2000";LC_ADDRESS
category  "en_SG:2000";LC_TELEPHONE

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       "<U0053><U0047><U0044><U0020>"
currency_symbol       "<U0024>"
mon_decimal_point     "<U002E>"
mon_thousands_sep     "<U002C>"
mon_grouping          3
positive_sign         ""
negative_sign         "<U002D>"
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          "<U002E>"
thousands_sep          "<U002C>"
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 difintion file
% for IBM Class for Unicode.
%
% Abbreviated weekday names (%a)
abday       "<U0053><U0075><U006E>";"<U004D><U006F><U006E>";/
            "<U0054><U0075><U0065>";"<U0057><U0065><U0064>";/
            "<U0054><U0068><U0075>";"<U0046><U0072><U0069>";/
            "<U0053><U0061><U0074>"
%
% Full weekday names (%A)
day         "<U0053><U0075><U006E><U0064><U0061><U0079>";"<U004D><U006F><U006E><U0064><U0061><U0079>";/
            "<U0054><U0075><U0065><U0073><U0064><U0061><U0079>";"<U0057><U0065><U0064><U006E><U0065><U0073><U0064><U0061><U0079>";/
            "<U0054><U0068><U0075><U0072><U0073><U0064><U0061><U0079>";"<U0046><U0072><U0069><U0064><U0061><U0079>";/
            "<U0053><U0061><U0074><U0075><U0072><U0064><U0061><U0079>"
%
% Abbreviated month names (%b)
abmon       "<U004A><U0061><U006E>";"<U0046><U0065><U0062>";/
            "<U004D><U0061><U0072>";"<U0041><U0070><U0072>";/
            "<U004D><U0061><U0079>";"<U004A><U0075><U006E>";/
            "<U004A><U0075><U006C>";"<U0041><U0075><U0067>";/
            "<U0053><U0065><U0070>";"<U004F><U0063><U0074>";/
            "<U004E><U006F><U0076>";"<U0044><U0065><U0063>"
%
% Full month names (%B)
mon         "<U004A><U0061><U006E><U0075><U0061><U0072><U0079>";"<U0046><U0065><U0062><U0072><U0075><U0061><U0072><U0079>";/
            "<U004D><U0061><U0072><U0063><U0068>";"<U0041><U0070><U0072><U0069><U006C>";/
            "<U004D><U0061><U0079>";"<U004A><U0075><U006E><U0065>";/
            "<U004A><U0075><U006C><U0079>";"<U0041><U0075><U0067><U0075><U0073><U0074>";/
            "<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";"<U004F><U0063><U0074><U006F><U0062><U0065><U0072>";/
            "<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";"<U0044><U0065><U0063><U0065><U006D><U0062><U0065><U0072>"
%
% Equivalent of AM PM
am_pm       "<U0041><U004D>";"<U0050><U004D>"
%
% Appropriate date and time representation
% %A %d,%B,%Y %I:%M:%S  %Z
d_t_fmt     "<U0025><U0041><U0020><U0025><U0064><U002C><U0025><U0042><U002C><U0025><U0059><U0020><U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0070><U0020><U0025><U005A>"
%
% Appropriate date representation
% %A %d,%B,%Y
d_fmt       "<U0025><U0041><U0020><U0025><U0064><U002C><U0025><U0042><U002C><U0025><U0059>"
%
% Appropriate time representation
% %I:%M:%S  %Z
t_fmt       "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0020><U0025><U005A>"
%
% Appropriate 12 h time representation (%r)
t_fmt_ampm  "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0070><U0020><U0025><U005A>"
%
END LC_TIME


LC_MESSAGES
% This is the POSIX Locale definition for the LC_MESSAGES category
% generated by IBM Basic CountryPack Transformer.
% These are generated based on XML base Locale difintion file
% for IBM Class for Unicode.
%
% ^[yY]
yesexpr     "<U005E><U005B><U0079><U0059><U005D>"

% Syntax on Unicode Regular Expression Guidelines TR#18
% yesexpr     "<U005E><U005B><U0079><U0059><U005D>"

%
% ^[nN]
noexpr      "<U005E><U005B><U006E><U004E><U005D>"

% Syntax on Unicode Regular Expression Guidelines TR#18
% noexpr      "<U005E><U005B><U006E><U004E><U005D>"
%

% Yes
yesstr      "<U0059><U0065><U0073>"
%
% No
nostr       "<U004E><U006F>"
%
END LC_MESSAGES


LC_PAPER
% This is the ISO_IEC TR14652 Locale definition for the LC_PAPER category
% generated by IBM Basic CountryPack Transformer.
height      297
width       210

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    "<U0025><U0070><U0025><U0074><U0025><U0066><U0025><U0074><U0025><U0067>"
name_gen    ""
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 category
% generated by IBM Basic CountryPack Transformer.
postal_fmt  "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U0062><U0025><U0065><U0025><U0072>"
country_ab2   "<U0053><U0047>"
country_ab3   "<U0053><U0047><U0050>"
country_num   702
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 "<U002B><U0025><U0063><U0020><U003B><U0025><U0061><U0020><U003B><U0025><U006C>"

END LC_TELEPHONE


LC_MEASUREMENT
% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT
% category generated by IBM Basic CountryPack Transformer.
measurement 1

END LC_MEASUREMENT
