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.

% 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-09-14"

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 "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
copy "hi_IN"
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><U0ACD><U0AAF><U0AC1>";/
		"<U0AAB><U0AC7><U0AAC><U0ACD><U0AB0><U0AC1>";/
		"<U0AAE><U0ABE><U0AB0><U0ACD><U0A9A>";/
		"<U0A8F><U0AAA><U0ACD><U0AB0><U0ABF><U0AB2>";/
		"<U0AAE><U0AC7>";/
		"<U0A9C><U0AC2><U0AA8>";/
		"<U0A9C><U0AC1><U0AB2><U0ABE><U0A88>";/
		"<U0A91><U0A97><U0AB8><U0ACD><U0A9F>";/
		"<U0AB8><U0AAA><U0ACD><U0A9F><U0AC7>";/
		"<U0A91><U0A95><U0ACD><U0A9F><U0ACB>";/
		"<U0AA8><U0AB5><U0AC7>";/
		"<U0AA1><U0ABF><U0AB8><U0AC7>"

%
% 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><U0AC2><U0AA8>";/
	"<U0A9C><U0AC1><U0AB2><U0ABE><U0A88>";/
	"<U0A91><U0A97><U0AB8><U0ACD><U0A9F>";/
	"<U0AB8><U0AAA><U0ACD><U0A9F><U0AC7><U0AAE><U0ACD><U0AAC><U0AB0>";/
	"<U0A91><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
d_t_fmt     "%A %d %b %Y %I:%M:%S %p %Z"
%
% Appropriate date representation
d_fmt       "%A %d %b %Y"
%
% Appropriate time representation
t_fmt       "%I:%M:%S  %Z"
%
% Appropriate 12 h time representation (%r)
t_fmt_ampm  "%I:%M:%S %p %Z"
week 7;19971130;1
END LC_TIME

LC_MESSAGES
yesexpr "^[+1yY<U0AB9>]"
noexpr  "^[-0nN<U0AA8>]"
yesstr  "<U0AB9><U0ABE>"
nostr   "<U0AA8><U0AB9><U0AC0><U0A82>"
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    "%p%t%f%t%g"
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  "%z%c%T%s%b%e%r"
country_name "<U0AAD><U0ABE><U0AB0><U0AA4>"
country_ab2 "IN"
country_ab3 "IND"
country_num 356
country_car "IND"
% ગુજરાતી
lang_name    "<U0A97><U0AC1><U0A9C><U0AB0><U0ABE><U0AA4><U0AC0>"
lang_ab      "gu"
lang_term    "guj"
lang_lib    "guj"
END LC_ADDRESS


LC_TELEPHONE
copy "hi_IN"
END LC_TELEPHONE


LC_MEASUREMENT
copy "hi_IN"
END LC_MEASUREMENT
