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.

% Spanish language locale for Venezuela
% Source: RAP
% Address: Sankt Jo//rgens Alle 8
%    DK-1615 Ko//benhavn V, Danmark
% Contact: Keld Simonsen
% Email: Keld.Simonsen@dkuug.dk
% Tel: +45 - 31226543
% Fax: +45 - 33256543
% Language: es
% Territory: VE
% Revision: 4.4
% Date: 1997-11-05
% Application: general
% Users: general

LC_IDENTIFICATION
title      "Spanish locale for Venezuela"
source     "RAP"
address    "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
contact    ""
email      "bug-glibc-locales@gnu.org"
tel        ""
fax        ""
language   "Spanish"
territory  "Venezuela"
revision   "1.0"
date       "2000-06-29"

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_COLLATE
copy "es_ES"
END LC_COLLATE

LC_CTYPE
copy "es_ES"
END LC_CTYPE

LC_MESSAGES
copy "es_ES"
END LC_MESSAGES

LC_MONETARY
% VEF
int_curr_symbol      "VEF "
currency_symbol      "Bs."
mon_decimal_point    ","
mon_thousands_sep    "."
mon_grouping         3;3
positive_sign        ""
negative_sign        "-"
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 "es_ES"
END LC_NUMERIC

LC_TIME
abday   "dom";"lun";/
	"mar";"mi<U00E9>";/
	"jue";"vie";/
	"s<U00E1>b"
day     "domingo";/
	"lunes";/
	"martes";/
	"mi<U00E9>rcoles";/
	"jueves";/
	"viernes";/
	"s<U00E1>bado"
abmon   "ene";"feb";/
	"mar";"abr";/
	"may";"jun";/
	"jul";"ago";/
	"sep";"oct";/
	"nov";"dic"
mon     "enero";/
	"febrero";/
	"marzo";/
	"abril";/
	"mayo";/
	"junio";/
	"julio";/
	"agosto";/
	"septiembre";/
	"octubre";/
	"noviembre";/
	"diciembre"
d_t_fmt "%a %d %b %Y %T %Z"
d_fmt   "%d//%m//%y"
t_fmt   "%T"
am_pm   "am";"pm"
t_fmt_ampm "%I:%M:%S %p"
week 7;19971130;1
END LC_TIME

LC_PAPER
copy "en_US"
END LC_PAPER

LC_TELEPHONE
tel_int_fmt    "+%c %a %l"
int_prefix     "58"
int_select  "00"
END LC_TELEPHONE

LC_MEASUREMENT
copy "i18n"
END LC_MEASUREMENT

LC_NAME
name_fmt    "%d%t%g%t%m%t%f"
END LC_NAME

LC_ADDRESS
postal_fmt    "%f%N%a%N%d%N%b%N%s %h %e %r%N%z %T%N%c%N"
country_name "Venezuela"
country_ab2   "VE"
country_ab3   "VEN"
country_num   862
country_car    "YV"
% español
lang_name     "espa<U00F1>ol"
lang_ab      "es"
lang_term    "spa"
lang_lib    "spa"
END LC_ADDRESS
