#***********************************************************************
#*                                                                     *
#*  VisualAge for C++ for Windows, Version 3.5                         *
#*    Licensed Material - Property of IBM                              *
#*                                                                     *
#*  5801-ARR and Other Materials                                       *
#*                                                                     *
#*  (c) Copyright IBM Corp 1991, 1996. All rights reserved.            *
#*                                                                     *
#***********************************************************************


# Design notes and assumptions:
#
# ``Chinese character set'' is considered to consist of:
#       128 characters in ASCII (both graphic and control),
#      7745 characters in GB2312.1980-0
#       658 User Defined characters
#
# Names for Chinese specific characters are assigned as
# follows:
#       ASCII characters have their standard names defined
#       in the POSIX.2.
#       GB characters have names based on their code value written
#       in hexadecimal.
#
# This definition implicitly assume that underlying encoding
# is zh_CN.IBM-936

# Notes on LC_CTYPE:
#
#       Undefined code points are not included in any classes,
#       because they are not printable characters nor control
#       characters, though they *are* valid characters.

LC_CTYPE

# Upper and lower consist of:
#       Alphabets in ASCII,
#       Latin alphabets in GB2312.1980-0
#       Greek alphabets in GB2312.1980-0
#       Russian alphabets in GB2312.1980-0
#

upper  <A>;<B>;<C>;<D>;<E>;<F>;<G>;<H>;<I>;<J>;<K>;<L>;<M>;\
       <N>;<O>;<P>;<Q>;<R>;<S>;<T>;<U>;<V>;<W>;<X>;<Y>;<Z>

lower  <a>;<b>;<c>;<d>;<e>;<f>;<g>;<h>;<i>;<j>;<k>;<l>;<m>;\
       <n>;<o>;<p>;<q>;<r>;<s>;<t>;<u>;<v>;<w>;<x>;<y>;<z>

#
# Alpha Class
# Default to upper and lower
#

# Digital and xdigit contains ASCII character only, as required
# in the standard.

digit    <zero>;<one>;<two>;<three>;<four>;<five>;\
         <six>;<seven>;<eight>;<nine>

xdigit   <zero>;<one>;<two>;<three>;<four>;<five>;\
         <six>;<seven>;<eight>;<nine>;\
         <A>;<B>;<C>;<D>;<E>;<F>;\
         <a>;<b>;<c>;<d>;<e>;<f>

# blank class
#

blank    <space>;<tab>

# space class
#       Space characters in C locale
#       Chinese Space form GB2312.1980-0
#

space   <tab>;<newline>;<vertical-tab>;<form-feed>;<carriage-return>;<space>

# Control defined here are exactly the same as one defined in
# POSIX.2 D10.
# No locale specific characters are added.

cntrl   <alert>;<backspace>;<tab>;<newline>;<vertical-tab>;<form-feed>;\
        <carriage-return>;\
        <NUL>;<SOH>;<STX>;<ETX>;<EOT>;<ENQ>;<ACK>;<SO>;\
        <SI>;<DLE>;<DC1>;<DC2>;<DC3>;<DC4>;<NAK>;<SYN>;\
        <ETB>;<CAN>;<EM>;<SUB>;<ESC>;<IS4>;<IS3>;<IS2>;\
        <IS1>;<DEL>

# graph
#
#      including upper, lower, alpha, digit, xdigit
#      GB2312 printable characters
#      user defined characters
#

graph   <exclamation-mark>;<quotation-mark>;<number-sign>;\
        <dollar-sign>;<percent-sign>;<ampersand>;<apostrophe>;\
        <left-parenthesis>;<right-parenthesis>;<asterisk>;\
        <plus-sign>;<comma>;<hyphen>;<period>;<slash>;\
        <colon>;<semicolon>;<less-than-sign>;<equals-sign>;\
        <greater-than-sign>;<question-mark>;<commercial-at>;\
        <left-square-bracket>;<backslash>;<right-square-bracket>;\
        <circumflex>;<underscore>;<grave-accent>;\
        <left-brace>;<vertical-line>;<right-brace>;<tilde>;\
        <not>;<yen>;<overline>;<broken-bar>;\
        <A>;<B>;<C>;<D>;<E>;<F>;<G>;<H>;<I>;<J>;<K>;<L>;<M>;\
        <N>;<O>;<P>;<Q>;<R>;<S>;<T>;<U>;<V>;<W>;<X>;<Y>;<Z>;\
        <a>;<b>;<c>;<d>;<e>;<f>;<g>;<h>;<i>;<j>;<k>;<l>;<m>;\
        <n>;<o>;<p>;<q>;<r>;<s>;<t>;<u>;<v>;<w>;<x>;<y>;<z>;\
        <zero>;<one>;<two>;<three>;<four>;\
        <five>;<six>;<seven>;<eight>;<nine>;\
        <gb0201>;...;<gb0216>


# print
#       upper, lower, alpha, digit, xdigit
#       GB2312-80 printalble characters
#       Including space characters

print   <space>;\
        <exclamation-mark>;<quotation-mark>;<number-sign>;\
        <dollar-sign>;<percent-sign>;<ampersand>;<apostrophe>;\
        <left-parenthesis>;<right-parenthesis>;<asterisk>;\
        <plus-sign>;<comma>;<hyphen>;<period>;<slash>;\
        <colon>;<semicolon>;<less-than-sign>;<equals-sign>;\
        <greater-than-sign>;<question-mark>;<commercial-at>;\
        <left-square-bracket>;<backslash>;<right-square-bracket>;\
        <circumflex>;<underscore>;<grave-accent>;\
        <left-brace>;<vertical-line>;<right-brace>;<tilde>;\
        <not>;<yen>;<overline>;<broken-bar>;\
        <A>;<B>;<C>;<D>;<E>;<F>;<G>;<H>;<I>;<J>;<K>;<L>;<M>;\
        <N>;<O>;<P>;<Q>;<R>;<S>;<T>;<U>;<V>;<W>;<X>;<Y>;<Z>;\
        <a>;<b>;<c>;<d>;<e>;<f>;<g>;<h>;<i>;<j>;<k>;<l>;<m>;\
        <n>;<o>;<p>;<q>;<r>;<s>;<t>;<u>;<v>;<w>;<x>;<y>;<z>;\
        <zero>;<one>;<two>;<three>;<four>;\
        <five>;<six>;<seven>;<eight>;<nine>;\
        <gb0201>;...;<gb0216>

#
# Punct contains all characters to be specified as punctuation characters
#       symbols in ASCII
#       special characters in GB2312.1980-0
#

punct   <exclamation-mark>;<quotation-mark>;<number-sign>;\
        <dollar-sign>;<percent-sign>;<ampersand>;<apostrophe>;\
        <left-parenthesis>;<right-parenthesis>;<asterisk>;\
        <plus-sign>;<comma>;<hyphen>;<period>;<slash>;\
        <colon>;<semicolon>;<less-than-sign>;<equals-sign>;\
        <greater-than-sign>;<question-mark>;<commercial-at>;\
        <left-square-bracket>;<backslash>;<right-square-bracket>;\
        <circumflex>;<underscore>;<grave-accent>;\
        <left-brace>;<vertical-line>;<right-brace>;<tilde>;\
        <not>;<yen>;<overline>;<broken-bar>;\
        <gb0102>;...;<gb0194>;\
        <gb0217>;...;<gb0266>;<gb0269>;...;<gb0278>;<gb0281>;...;<gb0292>;\
        <gb0301>;...;<gb0315>;<gb0326>;...;<gb0332>;\
        <gb0359>;...;<gb0364>;<gb0391>;...;<gb0394>;\
        <gb0904>;...;<gb0979>;<gb9464>;...;<gb9494>


toupper  (<a>,<A>);(<b>,<B>);(<c>,<C>);(<d>,<D>);(<e>,<E>);\
         (<f>,<F>);(<g>,<G>);(<h>,<H>);(<i>,<I>);(<j>,<J>);\
         (<k>,<K>);(<l>,<L>);(<m>,<M>);(<n>,<N>);(<o>,<O>);\
         (<p>,<P>);(<q>,<Q>);(<r>,<R>);(<s>,<S>);(<t>,<T>);\
         (<u>,<U>);(<v>,<V>);(<w>,<W>);(<x>,<X>);(<y>,<Y>);\
         (<z>,<Z>)


tolower  (<A>,<a>);(<B>,<b>);(<C>,<c>);(<D>,<d>);(<E>,<e>);\
         (<F>,<f>);(<G>,<g>);(<H>,<h>);(<I>,<i>);(<J>,<j>);\
         (<K>,<k>);(<L>,<l>);(<M>,<m>);(<N>,<n>);(<O>,<o>);\
         (<P>,<p>);(<Q>,<q>);(<R>,<r>);(<S>,<s>);(<T>,<t>);\
         (<U>,<u>);(<V>,<v>);(<W>,<w>);(<X>,<x>);(<Y>,<y>);\
         (<Z>,<z>)

END LC_CTYPE


# Notes on LC_COLLATE
#       The following definition provide the straight forward collation
#       for all characters in Chinese locale.
#       The ordering is based on byte-by-byte comparison of codes
#

LC_COLLATE

order_start                forward
<NUL>
<SOH>
<STX>
<ETX>
<EOT>
<ENQ>
<ACK>
<alert>
<backspace>
<tab>
<newline>
<vertical-tab>
<form-feed>
<carriage-return>
<SO>
<SI>
<DLE>
<DC1>
<DC2>
<DC3>
<DC4>
<NAK>
<SYN>
<ETB>
<CAN>
<EM>
<SUB>
<ESC>
<IS4>
<IS3>
<IS2>
<IS1>
<space>
<exclamation-mark>
<quotation-mark>
<number-sign>
<dollar-sign>
<percent-sign>
<ampersand>
<apostrophe>
<left-parenthesis>
<right-parenthesis>
<asterisk>
<plus-sign>
<comma>
<hyphen>
<period>
<slash>
<zero>
<one>
<two>
<three>
<four>
<five>
<six>
<seven>
<eight>
<nine>
<colon>
<semicolon>
<less-than-sign>
<equals-sign>
<greater-than-sign>
<question-mark>
<commercial-at>
<A>
<B>
<C>
<D>
<E>
<F>
<G>
<H>
<I>
<J>
<K>
<L>
<M>
<N>
<O>
<P>
<Q>
<R>
<S>
<T>
<U>
<V>
<W>
<X>
<Y>
<Z>
<left-square-bracket>
<backslash>
<right-square-bracket>
<circumflex>
<underscore>
<grave-accent>
<a>
<b>
<c>
<d>
<e>
<f>
<g>
<h>
<i>
<j>
<k>
<l>
<m>
<n>
<o>
<p>
<q>
<r>
<s>
<t>
<u>
<v>
<w>
<x>
<y>
<z>
<left-brace>
<vertical-line>
<right-brace>
<tilde>
<not>
<yen>
<overline>
<broken-bar>
<DEL>
<gb0201>
<gb0202>
<gb0203>
<gb0204>
<gb0205>
<gb0206>
<gb0207>
<gb0208>
<gb0209>
<gb0210>
<gb0211>
<gb0212>
<gb0213>
<gb0214>
<gb0215>
<gb0216>

order_end

END LC_COLLATE


# LC_MESSAGES as in POSIX.2 D10
#       yesexpr: "^[yY<gb4239>]"
#       noexpr:  "^[yY<gb2381>]"
#

LC_MESSAGES

yesexpr "<circumflex><left-square-bracket><y><Y><gb4239><right-square-bracket>"
noexpr  "<circumflex><left-square-bracket><n><N><gb2381><right-square-bracket>"

END LC_MESSAGES


LC_MONETARY

int_curr_symbol               "<C><N><Y><space>"
currency_symbol               "<gb0304>"
mon_decimal_point             "<period>"
mon_thousands_sep             "<comma>"
mon_grouping                  "3;0"
positive_sign                 ""
negative_sign                 "<hyphen>"
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

decimal_point                 "<period>"
thousands_sep                 "<comma>"
grouping                      "3;0"

END LC_NUMERIC


LC_TIME

# Sunday Monday, and so on in Chinese Ideogram

abday    "<gb4053>";"<gb5027>";"<gb2294>";"<gb4093>";\
         "<gb4336>";"<gb4669>";"<gb3389>"

# Full weekday names

day      "<gb4839><gb3858><gb4053>";\
         "<gb4839><gb3858><gb5027>";\
         "<gb4839><gb3858><gb2294>";\
         "<gb4839><gb3858><gb4093>";\
         "<gb4839><gb3858><gb4336>";\
         "<gb4839><gb3858><gb4669>";\
         "<gb4839><gb3858><gb3389>"

# Twelve months in one year in Chinese Locale

abmon    "<space><one><gb5234>";"<space><two><gb5234>";\
         "<space><three><gb5234>";"<space><four><gb5234>";\
         "<space><five><gb5234>";"<space><six><gb5234>";\
         "<space><seven><gb5234>";"<space><eight><gb5234>";\
         "<space><nine><gb5234>";"<one><zero><gb5234>";\
         "<one><one><gb5234>";"<one><two><gb5234>"

mon      "<gb5027><gb5234>";"<gb2294><gb5234>";\
         "<gb4093><gb5234>";"<gb4336><gb5234>";\
         "<gb4669><gb5234>";"<gb3389><gb5234>";\
         "<gb3863><gb5234>";"<gb1643><gb5234>";\
         "<gb3037><gb5234>";"<gb4214><gb5234>";\
         "<gb4214><gb5027><gb5234>";"<gb4214><gb2294><gb5234>"

# Equivalent of AM/PM
#

am_pm    "<gb4147><gb4671>";"<gb4734><gb4671>"

# Era representation:
#  -:1:-0001/12/31:-*:<gb2511><gb5210><gb3916>:%N%o<gb3674>
#  +:1:0000/01/01:0000/12/31:<gb2511><gb5210>:%N<gb5210><gb3674>
#  +:1:0001/01/01:+*:<gb2511><gb5210>:%N%o<gb3674>

era      "<plus-sign><colon><one><colon><zero><zero><zero><one><slash>\
<zero><one><slash><zero><one><colon><plus-sign><asterisk>\
<colon><gb2511><gb5210><colon><percent-sign><E><C><percent-sign><E><y>\
<gb3674>;\
<plus-sign><colon><one><colon><zero><zero><zero><zero><slash>\
<zero><one><slash><zero><one><colon><zero><zero><zero>\
<zero><slash><one><two><slash><three><one><colon>\
<gb2511><gb5210><colon><percent-sign><E><C><gb5210>\
<gb3674>;\
<hyphen><colon><one><colon><hyphen><zero><zero><zero><one>\
<slash><one><two><slash><three><one><colon>\
<hyphen><asterisk><colon><gb2511><gb5210>\
<gb3916><colon><percent-sign><E><C><percent-sign><E><y>\
<gb3674>"

# Appropriate date and time representation
#     Expected output:
#        93 YEAR 7 MONTH 10 DAY Thursday 12 HOUR 30 MINUTE 12 SECOND
#     POSIX representation:
#        95/11/25m<gb5234>%d<gb4053>@(#) 89 1.1@(#)H<gb4217>%M<gb2354>%S<gb3575>
#

d_t_fmt  "<percent-sign><E><Y><percent-sign><m><gb5234><percent-sign>\
<d><gb4053>  <percent-sign><A>  <percent-sign><H><gb4217>\
<percent-sign><M><gb2354><percent-sign><S><gb3575>"


# Appropriate time representation
#       %H<gb4217>%M<gb2354>%S<gb3575>
#

t_fmt    "<percent-sign><H><colon><percent-sign><M><colon><percent-sign><S>"

# Approriate date representation
#       %y<gb3674>%m<gb5234>%d<gb4053>
#

d_fmt    "<percent-sign><y><gb3674><percent-sign><m><gb5234>\
<percent-sign><d><gb4053>"

# Alternate symbols for digits
#

#alt_digits "<gb3367>";"<gb5027>";"<gb2294>";"<gb4093>";"<gb4336>";\
#           "<gb4669>";"<gb3389>";"<gb3863>";"<gb1643>";"<gb3037>"

END LC_TIME



