| 1 | <?xml version='1.0' encoding='UTF-8'?> |
1 | <?xml version='1.0' encoding='UTF-8'?> |
| 2 | <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/guide-localization.xml,v 1.15 2004/11/01 20:15:44 dertobi123 Exp $ --> |
2 | <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/guide-localization.xml,v 1.18 2005/02/05 14:53:36 swift Exp $ --> |
| 3 | <!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
3 | <!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
| 4 | |
4 | |
| 5 | <guide link="/doc/en/guide-localization.xml"> |
5 | <guide link="/doc/en/guide-localization.xml"> |
| 6 | <title>Gentoo Linux Localization Guide</title> |
6 | <title>Gentoo Linux Localization Guide</title> |
| 7 | <author title="Author"> |
7 | <author title="Author"> |
| 8 | <mail link="holler@gentoo.de">Alexander Holler</mail> |
8 | Alexander Holler |
| 9 | </author> |
9 | </author> |
| 10 | <author title="Translator/Editor"> |
10 | <author title="Translator/Editor"> |
| 11 | <mail link="slucy@uchicago.edu">Steven Lucy</mail> |
11 | <mail link="slucy@uchicago.edu">Steven Lucy</mail> |
| 12 | </author> |
12 | </author> |
| 13 | <author title="Editor"> |
13 | <author title="Editor"> |
| … | |
… | |
| 16 | <author title="Editor"> |
16 | <author title="Editor"> |
| 17 | <mail link="pylon@gentoo.org">Lars Weiler</mail> |
17 | <mail link="pylon@gentoo.org">Lars Weiler</mail> |
| 18 | </author> |
18 | </author> |
| 19 | <author title="Editor"> |
19 | <author title="Editor"> |
| 20 | <mail link="dertobi123@gentoo.org">Tobias Scherbaum</mail> |
20 | <mail link="dertobi123@gentoo.org">Tobias Scherbaum</mail> |
|
|
21 | </author> |
|
|
22 | <author title="Editor"> |
|
|
23 | <mail link="flammie@gentoo.org">Flammie Pirinen</mail> |
| 21 | </author> |
24 | </author> |
| 22 | |
25 | |
| 23 | <abstract> |
26 | <abstract> |
| 24 | This guide should help users localize their Gentoo Linux distribution to any |
27 | This guide should help users localize their Gentoo Linux distribution to any |
| 25 | European locale. It uses Germany as a case-study, since it is translated from |
28 | European locale. It uses Germany as a case-study, since it is translated from |
| 26 | the German doc. Includes configuration for use of the Euro currency symbol. |
29 | the German doc. Includes configuration for use of the Euro currency symbol. |
| 27 | </abstract> |
30 | </abstract> |
| 28 | |
31 | |
| 29 | <version>1.11</version> |
32 | <version>1.13</version> |
| 30 | <date>November 1, 2004</date> |
33 | <date>2005-02-05</date> |
| 31 | |
34 | |
| 32 | <chapter> |
35 | <chapter> |
| 33 | <title>Timezone</title> |
36 | <title>Timezone</title> |
| 34 | <section> |
37 | <section> |
| 35 | <body> |
38 | <body> |
| … | |
… | |
| 86 | </body> |
89 | </body> |
| 87 | </section> |
90 | </section> |
| 88 | </chapter> |
91 | </chapter> |
| 89 | |
92 | |
| 90 | <chapter> |
93 | <chapter> |
| 91 | <title>POSIX Locale</title> |
94 | <title>Locale system</title> |
|
|
95 | <section> |
|
|
96 | <title>What are locales?</title> |
|
|
97 | <body> |
|
|
98 | |
|
|
99 | <p> |
|
|
100 | A Locale is a set of information that most programs use for determining |
|
|
101 | country and language specific settings. The locales and their data |
|
|
102 | are part of the system library and can be found |
|
|
103 | at <path>/usr/share/locale</path> on most systems. A locale name is generally |
|
|
104 | named <c>ab_CD</c >where <c>ab</c> is your two (or three) letter |
|
|
105 | language code (as specified in ISO-639) and <c>CD</c> is your two letter country |
|
|
106 | code (as specified in ISO-3199). |
|
|
107 | </p> |
|
|
108 | |
|
|
109 | </body> |
| 92 | <section> |
110 | </section> |
| 93 | <title>Using Existing Locales</title> |
111 | <section> |
|
|
112 | <title>Environment variables for locales</title> |
| 94 | <body> |
113 | <body> |
| 95 | |
114 | |
| 96 | <p> |
|
|
| 97 | The next step is to set the <c>LANG</c> shell variable, which |
|
|
| 98 | is used by your shell and window manager (and some other |
|
|
| 99 | applications). Valid values can be found in |
|
|
| 100 | <path>/usr/share/locale</path> and generally take the form |
|
|
| 101 | <c>ab_CD</c>, where <c>ab</c> is your two letter language code |
|
|
| 102 | and <c>CD</c> is your two letter country code. The <c>_CD</c> |
|
|
| 103 | is left off if your language is only (or primarily) spoken in |
|
|
| 104 | one country. <c>LANG</c> can be set in |
|
|
| 105 | <path>/etc/profile</path> if you want it to take effect |
|
|
| 106 | system-wide, or in <path>~/.bashrc</path> as a user-specific |
|
|
| 107 | setting. |
|
|
| 108 | </p> |
115 | <p> |
|
|
116 | Locale settings are stored in environment variables. These are typically |
|
|
117 | set in the <path>/etc/env.d/02locale</path> (for system-wide |
|
|
118 | settings) and <path>~/.bashrc</path> (for user-specific settings) file. |
|
|
119 | The variables controlling different aspects of locale settings |
|
|
120 | are given in the table below, those with highest precedence (ie. those |
|
|
121 | that override settings below them) are at the top of the table. All variables |
|
|
122 | take one name of a locale in <c>ab_CD</c> format given above. |
|
|
123 | </p> |
| 109 | |
124 | |
|
|
125 | <table> |
|
|
126 | <tr> |
|
|
127 | <th>Variable name</th> |
|
|
128 | <th>Explanation</th> |
|
|
129 | </tr> |
|
|
130 | <tr> |
|
|
131 | <ti>LC_ALL</ti> |
|
|
132 | <ti> |
|
|
133 | Define all locale settings at once. This is the top level setting for |
|
|
134 | locales which will override any other setting. |
|
|
135 | </ti> |
|
|
136 | </tr> |
|
|
137 | <tr> |
|
|
138 | <ti>LC_COLLATE</ti> |
|
|
139 | <ti> |
|
|
140 | Define alphabetical ordering of strings. This affects eg. output of sorted |
|
|
141 | dir listing. |
|
|
142 | </ti> |
|
|
143 | </tr> |
|
|
144 | <tr> |
|
|
145 | <ti>LC_CTYPE</ti> |
|
|
146 | <ti> |
|
|
147 | Define the character handling properties for the system. This determines |
|
|
148 | which characters are seen as part of alphabet, numeric and so on. This also |
|
|
149 | determines the character set used, if applicable. |
|
|
150 | </ti> |
|
|
151 | </tr> |
|
|
152 | <tr> |
|
|
153 | <ti>LC_MESSAGES</ti> |
|
|
154 | <ti> |
|
|
155 | Programs' localizations for applications that use message based localization |
|
|
156 | scheme (majority of Gnu programs, see next chapters for closer information |
|
|
157 | which do, and how to get the programs, that don't, to work). |
|
|
158 | </ti> |
|
|
159 | </tr> |
|
|
160 | <tr> |
|
|
161 | <ti>LC_MONETARY</ti> |
|
|
162 | <ti>Defines currency units and formatting of currency type numeric values.</ti> |
|
|
163 | </tr> |
|
|
164 | <tr> |
|
|
165 | <ti>LC_NUMERIC</ti> |
|
|
166 | <ti> |
|
|
167 | Defines formatting of numeric values which aren't monetary. Affects things |
|
|
168 | such as thousand separator and decimal separator. |
|
|
169 | </ti> |
|
|
170 | </tr> |
|
|
171 | <tr> |
|
|
172 | <ti>LC_TIME</ti> |
|
|
173 | <ti>Defines formatting of dates and times.</ti> |
|
|
174 | </tr> |
|
|
175 | <tr> |
|
|
176 | <ti>LC_PAPER</ti> |
|
|
177 | <ti>Defines default paper size.</ti> |
|
|
178 | </tr> |
|
|
179 | <tr> |
|
|
180 | <ti>LANG</ti> |
|
|
181 | <ti> |
|
|
182 | Defines all locale settings at once. This setting can be overridden by |
|
|
183 | individual LC_* settings above or even by LC_ALL. |
|
|
184 | </ti> |
|
|
185 | </tr> |
|
|
186 | </table> |
|
|
187 | |
|
|
188 | <p> |
|
|
189 | Most typically users only set the LANG variable and perhaps LC_CTYPE variable |
|
|
190 | on user level by adding definitions to shells startup files defining |
|
|
191 | the environment variable manually from command line: |
|
|
192 | </p> |
|
|
193 | |
| 110 | <pre caption="setting the POSIX locale"> |
194 | <pre caption="setting the German locale"> |
| 111 | export LANG="de_DE@euro" |
195 | export LANG="de_DE@euro" |
| 112 | </pre> |
196 | </pre> |
| 113 | |
197 | |
| 114 | <note> |
198 | <note> |
| 115 | Appended <c>@euro</c> to your locale if you want to use the new Euro |
199 | Append <c>@euro</c> to your locale if you want to use the Euro |
| 116 | currency symbol (€) |
200 | currency symbol (€) |
| 117 | </note> |
201 | </note> |
|
|
202 | |
|
|
203 | <p> |
|
|
204 | For message based localization to work in programs that support it, you will |
|
|
205 | probably need to have programs compiled with the <c>nls</c> (Native language |
|
|
206 | support) USE flag set. Most of the programs using nls also need the gettext |
|
|
207 | library to extract and use localized messages. Of course, Gentoo's Portage will |
|
|
208 | automatically install it when needed. |
|
|
209 | </p> |
| 118 | |
210 | |
| 119 | </body> |
211 | </body> |
| 120 | </section> |
212 | </section> |
| 121 | <section> |
213 | <section> |
| 122 | <title>Generating Specific Locales</title> |
214 | <title>Generating Specific Locales</title> |
| … | |
… | |
| 159 | |
251 | |
| 160 | <p> |
252 | <p> |
| 161 | Now specify the locales you want to be able to use: |
253 | Now specify the locales you want to be able to use: |
| 162 | </p> |
254 | </p> |
| 163 | |
255 | |
| 164 | <pre caption="nano -w /etc/locales.build"> |
256 | <pre caption="Adding locales to /etc/locales.build"> |
| 165 | en_US/ISO-8859-1 |
257 | en_US/ISO-8859-1 |
| 166 | en_US.UTF-8/UTF-8 |
258 | en_US.UTF-8/UTF-8 |
| 167 | de_DE/ISO-8859-1 |
259 | de_DE/ISO-8859-1 |
| 168 | de_DE@euro/ISO-8859-15 |
260 | de_DE@euro/ISO-8859-15 |
| 169 | </pre> |
261 | </pre> |