1*53ee8cc1Swenshuai.xi /*- 2*53ee8cc1Swenshuai.xi * Copyright (c) 2001 Alexey Zelkin <phantom@FreeBSD.org> 3*53ee8cc1Swenshuai.xi * All rights reserved. 4*53ee8cc1Swenshuai.xi * 5*53ee8cc1Swenshuai.xi * Redistribution and use in source and binary forms, with or without 6*53ee8cc1Swenshuai.xi * modification, are permitted provided that the following conditions 7*53ee8cc1Swenshuai.xi * are met: 8*53ee8cc1Swenshuai.xi * 1. Redistributions of source code must retain the above copyright 9*53ee8cc1Swenshuai.xi * notice, this list of conditions and the following disclaimer. 10*53ee8cc1Swenshuai.xi * 2. Redistributions in binary form must reproduce the above copyright 11*53ee8cc1Swenshuai.xi * notice, this list of conditions and the following disclaimer in the 12*53ee8cc1Swenshuai.xi * documentation and/or other materials provided with the distribution. 13*53ee8cc1Swenshuai.xi * 14*53ee8cc1Swenshuai.xi * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15*53ee8cc1Swenshuai.xi * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16*53ee8cc1Swenshuai.xi * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17*53ee8cc1Swenshuai.xi * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18*53ee8cc1Swenshuai.xi * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19*53ee8cc1Swenshuai.xi * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20*53ee8cc1Swenshuai.xi * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21*53ee8cc1Swenshuai.xi * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22*53ee8cc1Swenshuai.xi * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23*53ee8cc1Swenshuai.xi * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24*53ee8cc1Swenshuai.xi * SUCH DAMAGE. 25*53ee8cc1Swenshuai.xi * 26*53ee8cc1Swenshuai.xi * $FreeBSD: src/include/langinfo.h,v 1.5 2002/03/23 17:24:53 imp Exp $ 27*53ee8cc1Swenshuai.xi */ 28*53ee8cc1Swenshuai.xi 29*53ee8cc1Swenshuai.xi #ifndef _LANGINFO_H_ 30*53ee8cc1Swenshuai.xi #define _LANGINFO_H_ 31*53ee8cc1Swenshuai.xi 32*53ee8cc1Swenshuai.xi #include <sys/cdefs.h> 33*53ee8cc1Swenshuai.xi 34*53ee8cc1Swenshuai.xi typedef int nl_item; 35*53ee8cc1Swenshuai.xi 36*53ee8cc1Swenshuai.xi /* Extract the category and item index from a constructed `nl_item' value. */ 37*53ee8cc1Swenshuai.xi #define _NL_ITEM_CATEGORY(item) ((int) (item) >> 16) 38*53ee8cc1Swenshuai.xi #define _NL_ITEM_INDEX(item) ((int) (item) & 0xffff) 39*53ee8cc1Swenshuai.xi 40*53ee8cc1Swenshuai.xi #define CODESET 0 /* codeset name */ 41*53ee8cc1Swenshuai.xi #define D_T_FMT 1 /* string for formatting date and time */ 42*53ee8cc1Swenshuai.xi #define D_FMT 2 /* date format string */ 43*53ee8cc1Swenshuai.xi #define T_FMT 3 /* time format string */ 44*53ee8cc1Swenshuai.xi #define T_FMT_AMPM 4 /* a.m. or p.m. time formatting string */ 45*53ee8cc1Swenshuai.xi #define AM_STR 5 /* Ante Meridian affix */ 46*53ee8cc1Swenshuai.xi #define PM_STR 6 /* Post Meridian affix */ 47*53ee8cc1Swenshuai.xi 48*53ee8cc1Swenshuai.xi /* week day names */ 49*53ee8cc1Swenshuai.xi #define DAY_1 7 50*53ee8cc1Swenshuai.xi #define DAY_2 8 51*53ee8cc1Swenshuai.xi #define DAY_3 9 52*53ee8cc1Swenshuai.xi #define DAY_4 10 53*53ee8cc1Swenshuai.xi #define DAY_5 11 54*53ee8cc1Swenshuai.xi #define DAY_6 12 55*53ee8cc1Swenshuai.xi #define DAY_7 13 56*53ee8cc1Swenshuai.xi 57*53ee8cc1Swenshuai.xi /* abbreviated week day names */ 58*53ee8cc1Swenshuai.xi #define ABDAY_1 14 59*53ee8cc1Swenshuai.xi #define ABDAY_2 15 60*53ee8cc1Swenshuai.xi #define ABDAY_3 16 61*53ee8cc1Swenshuai.xi #define ABDAY_4 17 62*53ee8cc1Swenshuai.xi #define ABDAY_5 18 63*53ee8cc1Swenshuai.xi #define ABDAY_6 19 64*53ee8cc1Swenshuai.xi #define ABDAY_7 20 65*53ee8cc1Swenshuai.xi 66*53ee8cc1Swenshuai.xi /* month names */ 67*53ee8cc1Swenshuai.xi #define MON_1 21 68*53ee8cc1Swenshuai.xi #define MON_2 22 69*53ee8cc1Swenshuai.xi #define MON_3 23 70*53ee8cc1Swenshuai.xi #define MON_4 24 71*53ee8cc1Swenshuai.xi #define MON_5 25 72*53ee8cc1Swenshuai.xi #define MON_6 26 73*53ee8cc1Swenshuai.xi #define MON_7 27 74*53ee8cc1Swenshuai.xi #define MON_8 28 75*53ee8cc1Swenshuai.xi #define MON_9 29 76*53ee8cc1Swenshuai.xi #define MON_10 30 77*53ee8cc1Swenshuai.xi #define MON_11 31 78*53ee8cc1Swenshuai.xi #define MON_12 32 79*53ee8cc1Swenshuai.xi 80*53ee8cc1Swenshuai.xi /* abbreviated month names */ 81*53ee8cc1Swenshuai.xi #define ABMON_1 33 82*53ee8cc1Swenshuai.xi #define ABMON_2 34 83*53ee8cc1Swenshuai.xi #define ABMON_3 35 84*53ee8cc1Swenshuai.xi #define ABMON_4 36 85*53ee8cc1Swenshuai.xi #define ABMON_5 37 86*53ee8cc1Swenshuai.xi #define ABMON_6 38 87*53ee8cc1Swenshuai.xi #define ABMON_7 39 88*53ee8cc1Swenshuai.xi #define ABMON_8 40 89*53ee8cc1Swenshuai.xi #define ABMON_9 41 90*53ee8cc1Swenshuai.xi #define ABMON_10 42 91*53ee8cc1Swenshuai.xi #define ABMON_11 43 92*53ee8cc1Swenshuai.xi #define ABMON_12 44 93*53ee8cc1Swenshuai.xi 94*53ee8cc1Swenshuai.xi #define ERA 45 /* era description segments */ 95*53ee8cc1Swenshuai.xi #define ERA_D_FMT 46 /* era date format string */ 96*53ee8cc1Swenshuai.xi #define ERA_D_T_FMT 47 /* era date and time format string */ 97*53ee8cc1Swenshuai.xi #define ERA_T_FMT 48 /* era time format string */ 98*53ee8cc1Swenshuai.xi #define ALT_DIGITS 49 /* alternative symbols for digits */ 99*53ee8cc1Swenshuai.xi 100*53ee8cc1Swenshuai.xi #define RADIXCHAR 50 /* radix char */ 101*53ee8cc1Swenshuai.xi #define THOUSEP 51 /* separator for thousands */ 102*53ee8cc1Swenshuai.xi 103*53ee8cc1Swenshuai.xi #define YESEXPR 52 /* affirmative response expression */ 104*53ee8cc1Swenshuai.xi #define NOEXPR 53 /* negative response expression */ 105*53ee8cc1Swenshuai.xi #define YESSTR 54 /* affirmative response for yes/no queries */ 106*53ee8cc1Swenshuai.xi #define NOSTR 55 /* negative response for yes/no queries */ 107*53ee8cc1Swenshuai.xi 108*53ee8cc1Swenshuai.xi #define CRNCYSTR 56 /* currency symbol */ 109*53ee8cc1Swenshuai.xi 110*53ee8cc1Swenshuai.xi #define D_MD_ORDER 57 /* month/day order (local extension) */ 111*53ee8cc1Swenshuai.xi 112*53ee8cc1Swenshuai.xi #define _NL_CTYPE_TRANSLIT_TAB_SIZE 58 113*53ee8cc1Swenshuai.xi #define _NL_CTYPE_TRANSLIT_FROM_IDX 59 114*53ee8cc1Swenshuai.xi #define _NL_CTYPE_TRANSLIT_FROM_TBL 60 115*53ee8cc1Swenshuai.xi #define _NL_CTYPE_TRANSLIT_TO_IDX 61 116*53ee8cc1Swenshuai.xi #define _NL_CTYPE_TRANSLIT_TO_TBL 62 117*53ee8cc1Swenshuai.xi #define _NL_CTYPE_TRANSLIT_DEFAULT_MISSING_LEN 63 118*53ee8cc1Swenshuai.xi #define _NL_CTYPE_TRANSLIT_DEFAULT_MISSING 64 119*53ee8cc1Swenshuai.xi #define _NL_CTYPE_TRANSLIT_IGNORE_LEN 65 120*53ee8cc1Swenshuai.xi #define _NL_CTYPE_TRANSLIT_IGNORE 66 121*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_1 70 122*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_2 71 123*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_3 72 124*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_4 73 125*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_5 74 126*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_6 75 127*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_7 76 128*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_8 77 129*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_9 78 130*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_10 79 131*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_11 80 132*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_12 81 133*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_13 82 134*53ee8cc1Swenshuai.xi #define _NL_CTYPE_EXTRA_MAP_14 83 135*53ee8cc1Swenshuai.xi 136*53ee8cc1Swenshuai.xi __BEGIN_DECLS 137*53ee8cc1Swenshuai.xi char *nl_langinfo(nl_item); 138*53ee8cc1Swenshuai.xi __END_DECLS 139*53ee8cc1Swenshuai.xi 140*53ee8cc1Swenshuai.xi #endif /* !_LANGINFO_H_ */ 141