/[gentoo]/xml/htdocs/doc/en/guide-localization.xml
Gentoo

Diff of /xml/htdocs/doc/en/guide-localization.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.1 Revision 1.18
1<?xml version='1.0'?> 1<?xml version='1.0' encoding='UTF-8'?>
2<?xml-stylesheet href="/xsl/guide.xsl" type="text/xsl"?> 2<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/guide-localization.xml,v 1.18 2005/02/05 14:53:36 swift Exp $ -->
3<guide> 3<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
4
5<guide link="/doc/en/guide-localization.xml">
4<title>Gentoo Linux Localization Instructions</title> 6<title>Gentoo Linux Localization Guide</title>
5<author><mail link="holler@ahsoftware.de"> 7<author title="Author">
6 Alexander Holler</mail> 8 Alexander Holler
7</author> 9</author>
10<author title="Translator/Editor">
11 <mail link="slucy@uchicago.edu">Steven Lucy</mail>
12</author>
13<author title="Editor">
14 <mail link="bennyc@gentoo.org">Benny Chuang</mail>
15</author>
16<author title="Editor">
17 <mail link="pylon@gentoo.org">Lars Weiler</mail>
18</author>
19<author title="Editor">
20 <mail link="dertobi123@gentoo.org">Tobias Scherbaum</mail>
21</author>
22<author title="Editor">
23 <mail link="flammie@gentoo.org">Flammie Pirinen</mail>
24</author>
8 25
9<abstract>This instructions explains the few steps you need to follow to use Gentoo Linux 26<abstract>
10with another language than english. It also explains what to do to get the Euro character shown.</abstract> 27This guide should help users localize their Gentoo Linux distribution to any
28European locale. It uses Germany as a case-study, since it is translated from
29the German doc. Includes configuration for use of the Euro currency symbol.
30</abstract>
11 31
12<chapter> 32<version>1.13</version>
13<title>Preface</title> 33<date>2005-02-05</date>
14<section>
15 <body>
16 <p>As I'm a German I explain how to enable the german language. If you want
17 another language, you just have to replace the german language code <i>de</i> with
18 the corresponding code for your country, e.g. <i>fr</i> for France or <i>es</i> for Spain.
19 </p>
20 </body>
21</section>
22</chapter>
23 34
24<chapter> 35<chapter>
25<title>Timezone</title> 36<title>Timezone</title>
26<section> 37<section>
27 <body> 38<body>
28 <p>To enable the right timezone <path>/etc/localtime</path> should point to the 39
29 appropriate file with the datas for your timezone. You will find those files
30 in <path>/usr/share/zoneinfo/</path>.
31<pre> 40<p>
41In order to keep time properly, <path>/etc/localtime</path> must point to
42the correct time zone data file. Look around in
43<path>/usr/share/zoneinfo/</path> and pick your timezone or a near-by big city.
44</p>
45
46<pre caption="setting the timezone">
32# <i>ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime</i> 47# <i>ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime</i>
48# <i>date</i>
49Sun Feb 16 08:26:44 CET 2003
33</pre> 50</pre>
34 </p>
35 </body>
36</section>
37</chapter>
38 51
39<chapter> 52<note>
40<title>Hardware clock</title> 53Make sure that the three-letter timezone indicator (in this case "CET")
54is correct for your area.
55</note>
56
57<note>
58You can set the value of <c>TZ</c> to be everything after the
59<path>/usr/share/zoneinfo</path> in your shell rc file
60(<path>.bash_profile</path> for bash) for a user-level setting. In this case
61<c>TZ="Europe/Berlin"</c>.
62</note>
63
64</body>
41<section> 65</section>
42 <body> 66</chapter>
43 <p>If your hardware clock is set to local time and not to GMT you have to correct 67
44 the variable <i>CLOCK</i> in <path>/etc/rc.conf</path>. 68<chapter>
69<title>System Clock</title>
70<section>
71<body>
72
45<pre> 73<p>
74In most Gentoo Linux installations, your system clock is set to
75UTC (or GMT, Greenwhich Mean Time) and then your timezone is
76taken into account to determine the actual, local time. If,
77for some reason, you need your system clock not to be in UTC,
78you will need to edit <path>/etc/rc.conf</path> and change the
79value of <c>CLOCK</c>.
80</p>
81
82<pre caption="local vs. GMT clock">
83<codenote>recommended:</codenote>
84CLOCK="UTC"
85<codenote>or:</codenote>
46 CLOCK="local" 86CLOCK="local"
47</pre> 87</pre>
48 </p>
49 </body>
50</section>
51</chapter>
52 88
53<chapter> 89</body>
54<title>Language</title>
55<section> 90</section>
56 <body> 91</chapter>
57 <p>Telling programms what language you prefer will be done with the environment variable 92
58 <i>LANG</i>. If you want to set the language system-wide for all users you should export 93<chapter>
59 <i>LANG</i> in <path>/etc/profile</path>. If not, this can be done in through your private 94<title>Locale system</title>
60 <path>.bashrc</path> in your home directory. You can find available languages in 95<section>
61 <path>/usr/share/i18n/locales</path>. 96<title>What are locales?</title>
97<body>
98
62<pre> 99<p>
100A Locale is a set of information that most programs use for determining
101country and language specific settings. The locales and their data
102are part of the system library and can be found
103at <path>/usr/share/locale</path> on most systems. A locale name is generally
104named <c>ab_CD</c >where <c>ab</c> is your two (or three) letter
105language code (as specified in ISO-639) and <c>CD</c> is your two letter country
106code (as specified in ISO-3199).
107</p>
108
109</body>
110</section>
111<section>
112<title>Environment variables for locales</title>
113<body>
114
115<p>
116Locale settings are stored in environment variables. These are typically
117set in the <path>/etc/env.d/02locale</path> (for system-wide
118settings) and <path>~/.bashrc</path> (for user-specific settings) file.
119The variables controlling different aspects of locale settings
120are given in the table below, those with highest precedence (ie. those
121that override settings below them) are at the top of the table. All variables
122take one name of a locale in <c>ab_CD</c> format given above.
123</p>
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>
189Most typically users only set the LANG variable and perhaps LC_CTYPE variable
190on user level by adding definitions to shells startup files defining
191the environment variable manually from command line:
192</p>
193
194<pre caption="setting the German locale">
63 export LANG="de_DE@euro" 195export LANG="de_DE@euro"
196</pre>
197
198<note>
199Append <c>@euro</c> to your locale if you want to use the Euro
200currency symbol (&#8364;)
201</note>
202
203<p>
204For message based localization to work in programs that support it, you will
205probably need to have programs compiled with the <c>nls</c> (Native language
206support) USE flag set. Most of the programs using nls also need the gettext
207library to extract and use localized messages. Of course, Gentoo's Portage will
208automatically install it when needed.
64</pre> 209</p>
65 </p>
66 </body>
67</section>
68</chapter>
69 210
70<chapter> 211</body>
71<title>Keyboard-layout (terminal)</title>
72<section> 212</section>
73 <body> 213<section>
74 <p>The keyboard-layout for terminal sessions is set through <i>KEYMAP</i> in 214<title>Generating Specific Locales</title>
75 <path>/etc/rc.conf</path>. You will find the appropriate tables in 215<body>
76 <path>/usr/share/keymaps</path>. If you aren't using composed characters with 216
77 tildes (e.g. &#245;), accent graph (e.g. &#232;) or similar, you could use the 217<p>
78 nodeadkeys-variants. This will save you to enter a space after typing letters 218If you use a locale that isn't available by default, you should use
79 like ~. 219<c>localedef</c> to generate your locale. For instance:
220</p>
221
222<pre caption="Generating a locale using localedef">
223# <i>localedef -c -i en_US -f ISO-8859-15 en_US.ISO-8859-15</i>
80<pre> 224</pre>
225
226<p>
227After having generated the locale, you can export the LANG variable as you see
228fit.
229</p>
230
231<pre caption="Exporting the LANG variable">
232# <i>export LANG="en_US.ISO-8859-15"</i>
233</pre>
234
235</body>
236</section>
237<section>
238<title>The userlocales USE flag</title>
239<body>
240
241<p>
242You will probably only use one or maybe two locales on your system. Up until now
243after compiling <c>glibc</c> a full set of all available locales has been
244created. As of now you can activate the <c>userlocales</c> USE flag und specify
245only the locales you will need in <path>/etc/locales.build</path>.
246</p>
247
248<pre caption="Activate the userlocales USE flag especially for glibc">
249echo "sys-libs/glibc userlocales" >> /etc/portage/package.use
250</pre>
251
252<p>
253Now specify the locales you want to be able to use:
254</p>
255
256<pre caption="Adding locales to /etc/locales.build">
257en_US/ISO-8859-1
258en_US.UTF-8/UTF-8
259de_DE/ISO-8859-1
260de_DE@euro/ISO-8859-15
261</pre>
262
263<p>
264The next step is to re-compile <c>glibc</c>. Of course you can defer this until
265the next <c>glibc</c> upgrade is available.
266</p>
267
268</body>
269</section>
270</chapter>
271
272<chapter>
273<title>Keyboard layout for the console</title>
274<section>
275<body>
276
277<p>
278The keyboard layout used by the console is set in
279<path>/etc/rc.conf</path> by the <c>KEYMAP</c> variable.
280Valid values can be found in
281<path>/usr/share/keymaps/<c>{arch}</c>/</path>.
282<path>i386</path> has further subdivisions into layout
283(<path>qwerty/</path>, <path>azerty/</path>, etc.). Some
284languages have multiple options, so you may wish to experiment
285to decide which one fits your needs best.
286</p>
287
288<pre caption="setting the console keymap">
289KEYMAP="de"
81 KEYMAP="de-latin1" 290KEYMAP="de-latin1"
82 # KEYMAP="de-latin1-nodeadkeys" 291KEYMAP="de-latin1-nodeadkeys"
83</pre> 292</pre>
84 </p>
85 </body>
86</section>
87</chapter>
88 293
89<chapter> 294</body>
90<title>Keyboard-layout (X server)</title>
91<section> 295</section>
92 <body> 296</chapter>
93 <p>The keyboard-layout for the X server is set with the option 297
94 <i>XkbLayout</i> in the file <path>/etc/X11/XF86Config</path>. 298<chapter>
299<title>Keyboard layout for the X server</title>
300<section>
301<body>
302
95<pre> 303<p>
304The keyboard layout to be used by the X server is specified
305in <path>/etc/X11/XF86Config</path> by the <c>XkbLayout</c>
306option.
307</p>
308
309<pre caption="setting the X keymap">
96 Section "InputDevice" 310 Section "InputDevice"
97 Identifier "Keyboard1" 311 Identifier "Keyboard1"
98 ... 312 ...
99 Option "XkbLayout" "de" 313 Option "XkbLayout" "de"
100 # Option XkbVariant" "nodeadkeys" 314 # Option "XkbVariant" "nodeadkeys"
101 ... 315 ...
102</pre> 316</pre>
103 </p>
104 </body>
105</section>
106</chapter>
107 317
108<chapter> 318</body>
109<title>Euro character (terminal)</title>
110<section> 319</section>
111 <body>
112 <p>If you want to see the Euro character in a session without using X, you have
113 to use a console font which contains it. The console font is set with
114 <i>CONSOLEFONT</i> in <path>/etc/rc.conf</path>. Available fonts will be find in
115 <path>/usr/share/consolefonts</path>.
116<pre>
117 CONSOLEFONT="lat0-16"
118</pre>
119 </p>
120 </body>
121</section>
122</chapter>
123
124<chapter> 320</chapter>
125 <title>Euro character (X server)</title> 321
126<section> 322<chapter>
127 <title>General</title> 323<title>KDE</title>
128 <body>
129 <p>Using the above settings and KDE you should already get the Euro character with
130 Alt-Gr-E in all KDE-programs. Remaining the non-KDE-programs.
131 </p><p>Unfortunately this is not as easy as the settings before. You have to set the right
132 font for every single X-program. So I will just explain how to enable the Euro character
133 for xterm and (X)Emacs. You can change the fonts for programs under X in your private
134 <path>.Xdefaults</path> in your home directory. To enable it for other (new) users you could
135 copy this file to <path>/etc/skel</path>.
136 </p>
137 </body>
138</section> 324<section>
325<body>
139 326
327<p>
328For KDE you have to install the kde-i18n package with the appropriate
329LINGUAS environment variable set:</p>
330
331<pre caption="Install localized KDE">
332# <i>LINGUAS="de" emerge kde-i18n</i>
333</pre>
334
335</body>
140<section> 336</section>
141 <title>Euro character for xterm</title> 337</chapter>
142 <body> 338
143 <p>Insert the following in your <path>.Xdefaults</path>: 339<chapter>
144<pre> 340<title>The Euro Symbol for the Console</title>
145 xterm*font: 7x13euro
146</pre>
147 </p>
148 </body>
149</section> 341<section>
342<body>
150 343
344<p>
345In order to get your console to display the Euro symbol, you
346will need to set <c>CONSOLEFONT</c> in
347<path>/etc/rc.conf</path> to a file found in
348<path>/usr/share/consolefonts/</path> (without the
349<c>.psfu.gz</c>). <c>lat9w-16</c> has the Euro symbol.
350</p>
351
352<pre caption="setting the console font">
353CONSOLEFONT="lat9w-16"
354</pre>
355
356</body>
151<section> 357</section>
152 <title>Euro character for (X)Emacs</title> 358</chapter>
153 <body> 359
154 <p>For (X)Emacs you define the font in <path>.Xdefaults</path> as shown below: 360<chapter>
361<title>The Euro Symbol in X</title>
362<section>
363<title>Most Applications</title>
364<body>
365
366<p>
367Getting the Euro symbol to work properly in X is a little
368bit tougher. The first thing you should do is change the <c>fixed</c>
369and <c>variable</c> definitions in
370<path>/usr/X11R6/lib/X11/fonts/misc/fonts.alias</path> to end
371in <c>iso8859-15</c> instead of <c>iso8859-1</c>.
372</p>
373
374<pre caption="setting default X fonts">
375fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15
376variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15
155<pre> 377</pre>
378
379<p>
380Some applications use their own font, and you will have to
381tell them separately to use a font with the Euro symbol. You
382can do this at a user-specific level in
383<path>.Xdefaults</path> (you can copy this file to
384<path>/etc/skel/</path> for use by new users), or at a global
385level for any application with a resource file in
386<path>/usr/X11R6/lib/X11/app-defaults/</path> (like xterm). In
387these files you generally have to change an existing line,
388rather than adding a new one. To change our xterm font, for
389instance:
390</p>
391
392<pre caption="setting fonts for xterm">
393<codenote>(in your home directory)</codenote>
394# <i>echo 'XTerm*font: fixed' >> .Xresources </i>
395# <i>xrdb -merge .Xresources</i>
396</pre>
397
398</body>
399</section>
400<section>
401<title>The Euro symbol in (X)Emacs</title>
402<body>
403
404<p>
405To use the Euro symbol in (X)Emacs, add the following to
406<path>.Xdefaults</path>:
407</p>
408
409<pre caption="setting the font for emacs">
156 Emacs.default.attributeFont: -*-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-15 410Emacs.default.attributeFont: -*-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-15
157</pre>
158 </p><p>If you are using XEmacs (not Emacs) you will have to tell him what to do with
159 the <i>EuroSign</i>. This will be done through a definition in
160 <path>.xemacs/init.el</path> in your home directory:
161<pre> 411</pre>
412
413<p>
414For XEmacs (not plain Emacs), you have to do a little
415more. In <path>/home/user/.xemacs/init.el</path>, add:
416</p>
417
418<pre caption="setting the font for xemacs">
162 (define-key global-map '(EuroSign) '[&#8364;]) 419(define-key global-map '(EuroSign) '[&#8364;])
163</pre> 420</pre>
164 <note>The character in the square brackets is the Euro character.</note> 421
165 </p> 422<note>
166 </body> 423The symbol in the []s is the Euro symbol.
424</note>
425
426</body>
427</section>
167</section> 428<section>
429<title>Language for OpenOffice</title>
430<body>
168 431
169</chapter> 432<note>
433Customized default language is not available for openoffice-bin ebuild. The
434default language in the openoffice-bin is ENUS.
435</note>
170 436
171<version>$Revision: 1.1 $</version> 437<p>
172<date>$Date: 2002/11/09 18:47:44 $</date> 438The default language for OpenOffice is set as "ENUS"(01). If you wish to
439change the default language for OpenOffice, check the ebuild for the
440default language code.
441</p>
442
443<pre caption="emerge openoffice with desired default language">
444# <i>LANGUAGE="01" emerge openoffice</i>
445<comment>01 is the ENUS language code for openoffice</comment>
446</pre>
447
448</body>
449</section>
450</chapter>
451
173</guide> 452</guide>

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.18

  ViewVC Help
Powered by ViewVC 1.1.20