2 * Copyright (c) 2001 Alexey Zelkin <phantom@FreeBSD.org>
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 * $FreeBSD: src/include/langinfo.h,v 1.5 2002/03/23 17:24:53 imp Exp $
33 #include <sys/config.h>
34 #include <sys/cdefs.h>
40 /* POSIX and BSD defined items have to stick to the original values
41 to maintain backward compatibility. */
42 _NL_CTYPE_CODESET_NAME = 0, /* codeset name */
43 #define CODESET _NL_CTYPE_CODESET_NAME
44 D_T_FMT, /* string for formatting date and time */
45 #define D_T_FMT D_T_FMT
46 D_FMT, /* date format string */
48 T_FMT, /* time format string */
50 T_FMT_AMPM, /* a.m. or p.m. time formatting string */
51 #define T_FMT_AMPM T_FMT_AMPM
52 AM_STR, /* Ante Meridian affix */
54 PM_STR, /* Post Meridian affix */
73 /* abbreviated week day names */
75 #define ABDAY_1 ABDAY_1
77 #define ABDAY_2 ABDAY_2
79 #define ABDAY_3 ABDAY_3
81 #define ABDAY_4 ABDAY_4
83 #define ABDAY_5 ABDAY_5
85 #define ABDAY_6 ABDAY_6
87 #define ABDAY_7 ABDAY_7
109 #define MON_10 MON_10
111 #define MON_11 MON_11
113 #define MON_12 MON_12
115 /* abbreviated month names */
117 #define ABMON_1 ABMON_1
119 #define ABMON_2 ABMON_2
121 #define ABMON_3 ABMON_3
123 #define ABMON_4 ABMON_4
125 #define ABMON_5 ABMON_5
127 #define ABMON_6 ABMON_6
129 #define ABMON_7 ABMON_7
131 #define ABMON_8 ABMON_8
133 #define ABMON_9 ABMON_9
135 #define ABMON_10 ABMON_10
137 #define ABMON_11 ABMON_11
139 #define ABMON_12 ABMON_12
141 ERA, /* era description segments */
143 ERA_D_FMT, /* era date format string */
144 #define ERA_D_FMT ERA_D_FMT
145 ERA_D_T_FMT, /* era date and time format string */
146 #define ERA_D_T_FMT ERA_D_T_FMT
147 ERA_T_FMT, /* era time format string */
148 #define ERA_T_FMT ERA_T_FMT
149 ALT_DIGITS, /* alternative symbols for digits */
150 #define ALT_DIGITS ALT_DIGITS
152 RADIXCHAR, /* radix char */
153 #define RADIXCHAR RADIXCHAR
154 THOUSEP, /* separator for thousands */
155 #define THOUSEP THOUSEP
157 YESEXPR, /* affirmative response expression */
158 #define YESEXPR YESEXPR
159 NOEXPR, /* negative response expression */
160 #define NOEXPR NOEXPR
161 YESSTR, /* affirmative response for yes/no queries */
162 #define YESSTR YESSTR
163 NOSTR, /* negative response for yes/no queries */
166 CRNCYSTR, /* currency symbol */
167 #define CRNCYSTR CRNCYSTR
169 D_MD_ORDER, /* month/day order (BSD extension) */
170 #define D_MD_ORDER D_MD_ORDER
172 _NL_TIME_DATE_FMT = 84, /* date fmt used by date(1) (GNU extension) */
173 #define _DATE_FMT _NL_TIME_DATE_FMT
175 #ifdef __HAVE_LOCALE_INFO__
176 _NL_CTYPE_MB_CUR_MAX,
177 _NL_MESSAGES_CODESET,
179 #ifdef __HAVE_LOCALE_INFO_EXTENDED__
183 Always maintain the order and position of existing entries!
184 Always append new entry to the list, prior to the definition
185 of _NL_LOCALE_EXTENDED_LAST_ENTRY. */
187 _NL_LOCALE_EXTENDED_FIRST_ENTRY,
189 _NL_CTYPE_OUTDIGITS0_MB,
190 _NL_CTYPE_OUTDIGITS1_MB,
191 _NL_CTYPE_OUTDIGITS2_MB,
192 _NL_CTYPE_OUTDIGITS3_MB,
193 _NL_CTYPE_OUTDIGITS4_MB,
194 _NL_CTYPE_OUTDIGITS5_MB,
195 _NL_CTYPE_OUTDIGITS6_MB,
196 _NL_CTYPE_OUTDIGITS7_MB,
197 _NL_CTYPE_OUTDIGITS8_MB,
198 _NL_CTYPE_OUTDIGITS9_MB,
199 _NL_CTYPE_OUTDIGITS0_WC,
200 _NL_CTYPE_OUTDIGITS1_WC,
201 _NL_CTYPE_OUTDIGITS2_WC,
202 _NL_CTYPE_OUTDIGITS3_WC,
203 _NL_CTYPE_OUTDIGITS4_WC,
204 _NL_CTYPE_OUTDIGITS5_WC,
205 _NL_CTYPE_OUTDIGITS6_WC,
206 _NL_CTYPE_OUTDIGITS7_WC,
207 _NL_CTYPE_OUTDIGITS8_WC,
208 _NL_CTYPE_OUTDIGITS9_WC,
255 _NL_TIME_WT_FMT_AMPM,
258 _NL_TIME_WERA_D_T_FMT,
260 _NL_TIME_WALT_DIGITS,
263 _NL_NUMERIC_GROUPING,
264 _NL_NUMERIC_DECIMAL_POINT_WC,
265 _NL_NUMERIC_THOUSANDS_SEP_WC,
267 _NL_MONETARY_INT_CURR_SYMBOL,
268 _NL_MONETARY_CURRENCY_SYMBOL,
269 _NL_MONETARY_MON_DECIMAL_POINT,
270 _NL_MONETARY_MON_THOUSANDS_SEP,
271 _NL_MONETARY_MON_GROUPING,
272 _NL_MONETARY_POSITIVE_SIGN,
273 _NL_MONETARY_NEGATIVE_SIGN,
274 _NL_MONETARY_INT_FRAC_DIGITS,
275 _NL_MONETARY_FRAC_DIGITS,
276 _NL_MONETARY_P_CS_PRECEDES,
277 _NL_MONETARY_P_SEP_BY_SPACE,
278 _NL_MONETARY_N_CS_PRECEDES,
279 _NL_MONETARY_N_SEP_BY_SPACE,
280 _NL_MONETARY_P_SIGN_POSN,
281 _NL_MONETARY_N_SIGN_POSN,
282 _NL_MONETARY_INT_P_CS_PRECEDES,
283 _NL_MONETARY_INT_P_SEP_BY_SPACE,
284 _NL_MONETARY_INT_N_CS_PRECEDES,
285 _NL_MONETARY_INT_N_SEP_BY_SPACE,
286 _NL_MONETARY_INT_P_SIGN_POSN,
287 _NL_MONETARY_INT_N_SIGN_POSN,
288 _NL_MONETARY_CODESET,
289 _NL_MONETARY_WINT_CURR_SYMBOL,
290 _NL_MONETARY_WCURRENCY_SYMBOL,
291 _NL_MONETARY_WMON_DECIMAL_POINT,
292 _NL_MONETARY_WMON_THOUSANDS_SEP,
293 _NL_MONETARY_WPOSITIVE_SIGN,
294 _NL_MONETARY_WNEGATIVE_SIGN,
296 _NL_MESSAGES_WYESEXPR,
297 _NL_MESSAGES_WNOEXPR,
298 _NL_MESSAGES_WYESSTR,
303 /* This MUST be the last entry since it's used to check for an array
304 index in nl_langinfo(). */
305 _NL_LOCALE_EXTENDED_LAST_ENTRY
307 #endif /* __HAVE_LOCALE_INFO_EXTENDED__ */
308 #endif /* __HAVE_LOCALE_INFO__ */
313 char *nl_langinfo(nl_item);
316 #endif /* !_LANGINFO_H_ */