comment_char    %
escape_char     /
% Gurajati Language Locale For India.
% Copied from hi_IN one, G Karunakar <karunakar@freedomink.org>
% Gujarati stuff from Tapan Parikh <tap2k@yahoo.com>
% Gujarati stuff Modified by Ankit Patel <ankit@redhat.com>

LC_IDENTIFICATION
title      "Gujarati Language Locale For India"
source     "IndLinux.org"
address    ""
contact    ""
email      "bug-glibc-locales@gnu.org"
tel        ""
fax        ""
language   "Gujarati"
territory  "India"
revision   "0.2"
date       "2004-14-09"
%
category  "gu_IN:2000";LC_IDENTIFICATION
category  "gu_IN:2000";LC_CTYPE
category  "gu_IN:2000";LC_COLLATE
category  "gu_IN:2000";LC_TIME
category  "gu_IN:2000";LC_NUMERIC
category  "gu_IN:2000";LC_MONETARY
category  "gu_IN:2000";LC_MESSAGES
category  "gu_IN:2000";LC_PAPER
category  "gu_IN:2000";LC_NAME
category  "gu_IN:2000";LC_ADDRESS
category  "gu_IN:2000";LC_TELEPHONE

END LC_IDENTIFICATION

LC_CTYPE
copy "i18n"

% Gujarati uses the alternate digits U+0AE6..U+0AEF
outdigit <U0AE6>..<U0AEF>

% This is used in the scanf family of functions to read Gujarati numbers
% using "%Id" and such.
map to_inpunct; /
  (<U0030>,<U0AE6>); /
  (<U0031>,<U0AE7>); /
  (<U0032>,<U0AE8>); /
  (<U0033>,<U0AE9>); /
  (<U0034>,<U0AEA>); /
  (<U0035>,<U0AEB>); /
  (<U0036>,<U0AEC>); /
  (<U0037>,<U0AED>); /
  (<U0038>,<U0AEE>); /
  (<U0039>,<U0AEF>); 

translit_start
include "translit_combining";""
translit_end
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.
% These are generated based on XML base Locale definition file
% for IBM Class for Unicode/Java
%
int_curr_symbol       "<U0049><U004E><U0052><U0020>"
currency_symbol       "<U0AB0><U0AC1>"
mon_decimal_point     "<U002E>"
mon_thousands_sep     "<U002C>"
mon_grouping          3
positive_sign         "<U002B>"
negative_sign         "<U002D>"
int_frac_digits       2
frac_digits           2
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           1
%
END LC_MONETARY


LC_NUMERIC
copy "hi_IN"
END LC_NUMERIC

LC_TIME
% This is the POSIX Locale definition for the LC_TIME category.
% These are generated based on XML base Locale definition file
% for IBM Class for Unicode/Java
%
% Abbreviated weekday names (%a)
abday		"<U0AB0><U0AB5><U0ABF>";/
		"<U0AB8><U0ACB><U0AAE>";/
		"<U0AAE><U0A82><U0A97><U0AB3>";/
		"<U0AAC><U0AC1><U0AA7>";/
		"<U0A97><U0AC1><U0AB0><U0AC1>";/
		"<U0AB6><U0AC1><U0A95><U0ACD><U0AB0>";/
		"<U0AB6><U0AA8><U0ABF>"

%
% Full weekday names (%A)
day		"<U0AB0><U0AB5><U0ABF><U0AB5><U0ABE><U0AB0>";/
		"<U0AB8><U0ACB><U0AAE><U0AB5><U0ABE><U0AB0>";/
		"<U0AAE><U0A82><U0A97><U0AB3><U0AB5><U0ABE><U0AB0>";/
		"<U0AAC><U0AC1><U0AA7><U0AB5><U0ABE><U0AB0>";/
		"<U0A97><U0AC1><U0AB0><U0AC1><U0AB5><U0ABE><U0AB0>";/
		"<U0AB6><U0AC1><U0A95><U0ACD><U0AB0><U0AB5><U0ABE><U0AB0>";/
		"<U0AB6><U0AA8><U0ABF><U0AB5><U0ABE><U0AB0>"

% Abbreviated month names (%b)
abmon 		"<U0A9C><U0ABE><U0AA8>";/
		"<U0AAB><U0AC7><U0AAC>";/
		"<U0AAE><U0ABE><U0AB0>";/
		"<U0A8F><U0AAA><U0ACD><U0AB0>";/
		"<U0AAE><U0AC7>";/
		"<U0A9C><U0AC1><U0AA8>";/
		"<U0A9C><U0AC1><U0AB2>";/
		"<U0A93><U0A97>";/
		"<U0AB8><U0AAA><U0ACD><U0A9F>";/
		"<U0A93><U0A95><U0ACD><U0A9F>";/
		"<U0AA8><U0ACB><U0AB5>";/
		"<U0AA1><U0ABF><U0AB8>"

%
% Full month names (%B)
mon	"<U0A9C><U0ABE><U0AA8><U0ACD><U0AAF><U0AC1><U0A86><U0AB0><U0AC0>";/
	"<U0AAB><U0AC7><U0AAC><U0ACD><U0AB0><U0AC1><U0A86><U0AB0><U0AC0>";/
	"<U0AAE><U0ABE><U0AB0><U0ACD><U0A9A>";/
	"<U0A8F><U0AAA><U0ACD><U0AB0><U0ABF><U0AB2>";/
	"<U0AAE><U0AC7>";/
	"<U0A9C><U0AC1><U0AA8>";/
	"<U0A9C><U0AC1><U0AB2><U0ABE><U0A87>";/
	"<U0A93><U0A97><U0AB8><U0ACD><U0A9F>";/
	"<U0AB8><U0AAA><U0ACD><U0A9F><U0AC7><U0AAE><U0ACD><U0AAC><U0AB0>";/
	"<U0A93><U0A95><U0ACD><U0A9F><U0ACB><U0AAC><U0AB0>";/
	"<U0AA8><U0AB5><U0AC7><U0AAE><U0ACD><U0AAC><U0AB0>";/
	"<U0AA1><U0ABF><U0AB8><U0AC7><U0AAE><U0ACD><U0AAC><U0AB0>"

%
% Equivalent of AM PM
am_pm		"<U0AB8><U0AB5><U0ABE><U0AB0><U0AC7>";/
		"<U0AB8><U0ABE><U0A82><U0A9C><U0AC7>"

% *** There aren't any Devanagari characters below, so for time being
% *** maintain same for Gujarati also,  Karunakar

%
% Appropriate date and time representation
% %A %d %b %Y%I:%M:%S  %Z
d_t_fmt     "<U0025><U0041><U0020><U0025><U0064><U0020><U0025><U0062>/
<U0020><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><U0020><U0025><U0062>/
<U0020><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>"
%
date_fmt       "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
<U0025><U005A><U0020><U0025><U0059>"
END LC_TIME

LC_MESSAGES
yesexpr "<U005E><U005B><U0079><U0059><U0AB9><U005D>"
noexpr  "<U005E><U005B><U006E><U004E><U0AA8><U005D>"
END LC_MESSAGES


LC_PAPER
copy "hi_IN"
END LC_PAPER


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    "<U0A9C><U0ABE><U0AA4><U0ABF>"
name_mr     "<U0AB6><U0ACD><U0AB0><U0AC0><U0AAE><U0ABE><U0AA8>"
name_mrs    "<U0AB6><U0ACD><U0AB0><U0AC0><U0AAE><U0AA4><U0ABF>"
name_miss   "<U0A95><U0AC1><U0AAE><U0ABE><U0AB0><U0AC0>"
name_ms     "<U0AB8><U0AB6><U0ACD><U0AB0><U0AC0>"

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_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
END LC_ADDRESS


LC_TELEPHONE
copy "hi_IN"
END LC_TELEPHONE


LC_MEASUREMENT
copy "hi_IN"
END LC_MEASUREMENT
