blob: d58bf6b69729b4dc42b5a959b4174ba3e2a50d67 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
|
.\" $NetBSD: nl_langinfo.3,v 1.20 2011/04/14 05:50:49 jruoho Exp $
.\"
.\" Written by J.T. Conklin <jtc@NetBSD.org>.
.\" Public domain.
.\"
.Dd April 14, 2011
.Dt NL_LANGINFO 3
.Os
.Sh NAME
.Nm nl_langinfo
.Nd get locale information
.Sh LIBRARY
.Lb libc
.Sh SYNOPSIS
.In langinfo.h
.Ft char *
.Fn nl_langinfo "nl_item item"
.Sh DESCRIPTION
The
.Fn nl_langinfo
function returns a pointer to a string containing information
set by the program's locale.
.Pp
The names and values of
.Fa item
are defined in
.In langinfo.h .
The entries under Category indicate in which
.Xr setlocale 3
category each item is defined.
.Bl -column ERA_D_T_FMT LC_MESSAGES
.It Sy Constant Ta Sy Category Ta Sy Meaning
.It CODESET LC_CTYPE Codeset name
.It D_T_FMT LC_TIME String for formatting date and time
.It D_FMT LC_TIME Date format string
.It T_FMT LC_TIME Time format string
.It T_FMT_AMPM LC_TIME A.M. or P.M. time format string
.It AM_STR LC_TIME Ante-meridiem affix
.It PM_STR LC_TIME Post-meridiem affix
.It DAY_1 LC_TIME Name of the first day of the week (e.g.: Sunday)
.It DAY_2 LC_TIME Name of the second day of the week (e.g.: Monday)
.It DAY_3 LC_TIME Name of the third day of the week (e.g.: Tuesday)
.It DAY_4 LC_TIME Name of the fourth day of the week (e.g.: Wednesday)
.It DAY_5 LC_TIME Name of the fifth day of the week (e.g.: Thursday)
.It DAY_6 LC_TIME Name of the sixth day of the week (e.g.: Friday)
.It DAY_7 LC_TIME Name of the seventh day of the week (e.g.: Saturday)
.It ABDAY_1 LC_TIME Abbreviated name of the first day of the week
.It ABDAY_2 LC_TIME Abbreviated name of the second day of the week
.It ABDAY_3 LC_TIME Abbreviated name of the third day of the week
.It ABDAY_4 LC_TIME Abbreviated name of the fourth day of the week
.It ABDAY_5 LC_TIME Abbreviated name of the fifth day of the week
.It ABDAY_6 LC_TIME Abbreviated name of the sixth day of the week
.It ABDAY_7 LC_TIME Abbreviated name of the seventh day of the week
.It MON_1 LC_TIME Name of the first month of the year
.It MON_2 LC_TIME Name of the second month
.It MON_3 LC_TIME Name of the third month
.It MON_4 LC_TIME Name of the fourth month
.It MON_5 LC_TIME Name of the fifth month
.It MON_6 LC_TIME Name of the sixth month
.It MON_7 LC_TIME Name of the seventh month
.It MON_8 LC_TIME Name of the eighth month
.It MON_9 LC_TIME Name of the ninth month
.It MON_10 LC_TIME Name of the tenth month
.It MON_11 LC_TIME Name of the eleventh month
.It MON_12 LC_TIME Name of the twelfth month
.It ABMON_1 LC_TIME Abbreviated name of the first month
.It ABMON_2 LC_TIME Abbreviated name of the second month
.It ABMON_3 LC_TIME Abbreviated name of the third month
.It ABMON_4 LC_TIME Abbreviated name of the fourth month
.It ABMON_5 LC_TIME Abbreviated name of the fifth month
.It ABMON_6 LC_TIME Abbreviated name of the sixth month
.It ABMON_7 LC_TIME Abbreviated name of the seventh month
.It ABMON_8 LC_TIME Abbreviated name of the eighth month
.It ABMON_9 LC_TIME Abbreviated name of the ninth month
.It ABMON_10 LC_TIME Abbreviated name of the tenth month
.It ABMON_11 LC_TIME Abbreviated name of the eleventh month
.It ABMON_12 LC_TIME Abbreviated name of the twelfth month
.It ERA LC_TIME Era description segments
.It ERA_D_FMT LC_TIME Era date format string
.It ERA_D_T_FMT LC_TIME Era date and time format string
.It ERA_T_FMT LC_TIME Era time format string
.It ALT_DIGITS LC_TIME Alternative symbols for digits
.It RADIXCHAR LC_NUMERIC Radix character
.It THOUSEP LC_NUMERIC Separator for thousands
.It YESEXPR LC_MESSAGES Affirmative response expression
.It NOEXPR LC_MESSAGES Negative response expression
.\".It CRNCYSTR LC_MONETARY Local currency symbol
.El
.Sh RETURN VALUES
.Fn nl_langinfo
returns a pointer to an empty string if
.Fa item
is invalid.
.Sh EXAMPLES
The following example uses
.Fn nl_langinfo
to obtain the date and time format for the current locale:
.Pp
.Bd -literal -offset indent
#include \*[Lt]time.h\*[Gt]
#include \*[Lt]langinfo.h\*[Gt]
#include \*[Lt]locale.h\*[Gt]
int main(void)
{
char datestring[100];
struct tm *tm;
time_t t;
char *ptr;
t = time(NULL);
tm = localtime(\*[Am]t);
(void)setlocale(LC_ALL, "");
ptr = nl_langinfo(D_T_FMT);
strftime(datestring, sizeof(datestring), ptr, tm);
printf("%s\en", datestring);
return (0);
}
.Ed
.\" .Pp
.\" The following example uses
.\" .Fn nl_langinfo
.\" to obtain the setting of the currency symbol for the current locale:
.\" .Pp
.\" .Bd
.\" #include \*[Lt]langinfo.h\*[Gt]
.\" #include \*[Lt]locale.h\*[Gt]
.\" int main(void)
.\" {
.\" char *ptr;
.\" (void)setlocale(LC_ALL, "");
.\" ptr = nl_langinfo(CRNCYSTR);
.\" printf("%s", ptr);
.\" }
.\" .Ed
.Sh SEE ALSO
.Xr setlocale 3 ,
.Xr tm 3 ,
.Xr nls 7
.Sh STANDARDS
The
.Fn nl_langinfo
function conforms to
.St -p1003.1-2001 .
.Sh HISTORY
The
.Fn nl_langinfo
function appeared in
.Nx 1.0 .
|