| 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.28 2005/06/24 18:04:15 fox2mike Exp $ --> |
2 | <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/guide-localization.xml,v 1.64 2012/05/27 22:28:07 nightmorph 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> |
| 6 | <title>Gentoo Linux Localization Guide</title> |
6 | <title>Gentoo Linux Localization Guide</title> |
| 7 | <author title="Author"> |
7 | <author title="Author"> |
| 8 | Alexander Holler |
8 | Alexander Holler |
| 9 | </author> |
9 | </author> |
| 10 | <author title="Translator/Editor"> |
10 | <author title="Translator/Editor"> |
| … | |
… | |
| 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> |
21 | </author> |
| 22 | <author title="Editor"> |
22 | <author title="Editor"> |
| 23 | <mail link="flammie@gentoo.org">Flammie Pirinen</mail> |
23 | <mail link="flammie@gentoo.org">Flammie Pirinen</mail> |
|
|
24 | </author> |
|
|
25 | <author title="Editor"> |
|
|
26 | <mail link="nightmorph"/> |
|
|
27 | </author> |
|
|
28 | <author title="Editor"> |
|
|
29 | <mail link="klondike"/> |
| 24 | </author> |
30 | </author> |
| 25 | |
31 | |
| 26 | <abstract> |
32 | <abstract> |
| 27 | This guide should help users localize their Gentoo Linux distribution to any |
33 | This guide should help users localize their Gentoo Linux distribution to any |
| 28 | European locale. It uses Germany as a case-study, since it is translated from |
34 | European locale. It uses Germany as a case-study, since it is translated from |
| 29 | the German doc. Includes configuration for use of the euro currency symbol. |
35 | the German doc. Includes configuration for use of the euro currency symbol. |
| 30 | </abstract> |
36 | </abstract> |
| 31 | |
37 | |
| 32 | <version>1.19</version> |
38 | <version>3</version> |
| 33 | <date>2005-06-24</date> |
39 | <date>2012-05-27</date> |
| 34 | |
40 | |
| 35 | <chapter> |
41 | <chapter> |
| 36 | <title>Time zone</title> |
42 | <title>Time zone</title> |
| 37 | <section> |
43 | <section> |
| 38 | <body> |
44 | <body> |
| 39 | |
45 | |
| 40 | <p> |
46 | <p> |
| 41 | In order to keep time properly, <path>/etc/localtime</path> must point to |
47 | In order to keep time properly, you need to select your timezone so that your |
| 42 | the correct time zone data file. Look around in |
48 | system knows where it is located. Look for your timezone in |
| 43 | <path>/usr/share/zoneinfo/</path> and pick your timezone or a near-by big city. |
49 | <path>/usr/share/zoneinfo</path>. You then set your timezone in |
|
|
50 | <path>/etc/timezone</path>. Please avoid the |
|
|
51 | <path>/usr/share/zoneinfo/Etc/GMT*</path> timezones as their names do not |
|
|
52 | indicate the expected zones. For instance, <path>GMT-8</path> is in fact GMT+8. |
| 44 | </p> |
53 | </p> |
| 45 | |
54 | |
| 46 | <pre caption="setting the timezone"> |
55 | <pre caption="Setting the timezone information"> |
|
|
56 | # <i>ls /usr/share/zoneinfo</i> |
|
|
57 | <comment>(Suppose you want to use Brussels)</comment> |
|
|
58 | <comment>(First copy the proper zone to localtime)</comment> |
| 47 | # <i>ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime</i> |
59 | # <i>cp /usr/share/zoneinfo/Europe/Brussels /etc/localtime</i> |
|
|
60 | <comment>(Now specify your timezone)</comment> |
|
|
61 | # <i>nano -w /etc/timezone</i> |
|
|
62 | Europe/Brussels |
|
|
63 | |
| 48 | # <i>date</i> |
64 | # <i>date</i> |
| 49 | Sun Feb 16 08:26:44 CET 2003 |
65 | Wed Mar 8 00:46:05 CET 2006 |
| 50 | </pre> |
66 | </pre> |
| 51 | |
67 | |
| 52 | <note> |
68 | <note> |
| 53 | Make sure that the three-letter timezone indicator (in this case "CET") |
69 | Make sure that the timezone indicator (in this case "CET") |
| 54 | is correct for your area. |
70 | is correct for your area. |
| 55 | </note> |
71 | </note> |
| 56 | |
72 | |
| 57 | <note> |
73 | <note> |
| 58 | You can set the value of <c>TZ</c> to be everything after the |
74 | You can set the value of <c>TZ</c> to be everything after the |
| … | |
… | |
| 73 | <p> |
89 | <p> |
| 74 | In most Gentoo Linux installations, your hardware clock is set to |
90 | In most Gentoo Linux installations, your hardware clock is set to |
| 75 | UTC (or GMT, Greenwich Mean Time) and then your timezone is |
91 | UTC (or GMT, Greenwich Mean Time) and then your timezone is |
| 76 | taken into account to determine the actual, local time. If, |
92 | taken into account to determine the actual, local time. If, |
| 77 | for some reason, you need your hardware clock not to be in UTC, |
93 | for some reason, you need your hardware clock not to be in UTC, |
| 78 | you will need to edit <path>/etc/conf.d/clock</path> and change the |
94 | you will need to edit <path>/etc/conf.d/hwclock</path> (or if you use Gentoo |
|
|
95 | BSD: <path>/etc/conf.d/adjkerntz</path>) and change the |
| 79 | value of <c>CLOCK</c> from <c>UTC</c> to <c>local</c>. |
96 | value of <c>clock</c> from <c>UTC</c> to <c>local</c>. |
| 80 | </p> |
97 | </p> |
| 81 | |
98 | |
| 82 | <pre caption="local vs. GMT clock"> |
99 | <pre caption="local vs. GMT clock"> |
| 83 | <comment>(recommended:)</comment> |
100 | <comment>(recommended:)</comment> |
| 84 | CLOCK="UTC" |
101 | clock="UTC" |
| 85 | <comment>(or:)</comment> |
102 | <comment>(or:)</comment> |
| 86 | CLOCK="local" |
103 | clock="local" |
| 87 | </pre> |
104 | </pre> |
| 88 | |
105 | |
| 89 | </body> |
106 | </body> |
| 90 | </section> |
107 | </section> |
| 91 | </chapter> |
108 | </chapter> |
| … | |
… | |
| 95 | <section> |
112 | <section> |
| 96 | <title>What are locales?</title> |
113 | <title>What are locales?</title> |
| 97 | <body> |
114 | <body> |
| 98 | |
115 | |
| 99 | <p> |
116 | <p> |
| 100 | A Locale is a set of information that most programs use for determining |
117 | A Locale is a set of information that most programs use for determining country |
| 101 | country and language specific settings. The locales and their data |
118 | and language specific settings. The locales and their data are part of the |
| 102 | are part of the system library and can be found |
119 | system library and can be found at <path>/usr/share/locale</path> on most |
| 103 | at <path>/usr/share/locale</path> on most systems. A locale name is generally |
120 | systems. A locale name is generally named <c>ab_CD</c> where <c>ab</c> is your |
| 104 | named <c>ab_CD</c> where <c>ab</c> is your two (or three) letter |
121 | two (or three) letter language code (as specified in ISO-639) and <c>CD</c> is |
| 105 | language code (as specified in ISO-639) and <c>CD</c> is your two letter country |
122 | your two letter country code (as specified in ISO-3166). Variants are often |
| 106 | code (as specified in ISO-3199). |
123 | appended to locale names, e.g. <c>en_GB.UTF-8</c> or <c>de_DE@euro</c>. Please |
|
|
124 | explore <uri link="http://en.wikipedia.org/wiki/Locale">Wikipedia</uri> to read |
|
|
125 | more about locales and related articles. |
| 107 | </p> |
126 | </p> |
| 108 | |
127 | |
| 109 | </body> |
128 | </body> |
| 110 | </section> |
|
|
| 111 | <section> |
129 | </section> |
|
|
130 | <section id="variables"> |
| 112 | <title>Environment variables for locales</title> |
131 | <title>Environment variables for locales</title> |
| 113 | <body> |
132 | <body> |
| 114 | |
133 | |
| 115 | <p> |
134 | <p> |
| 116 | Locale settings are stored in environment variables. These are typically |
135 | Locale settings are stored in environment variables. These are typically |
| 117 | set in the <path>/etc/env.d/02locale</path> (for system-wide |
136 | set in the <path>/etc/env.d/02locale</path> (for system-wide |
| 118 | settings) and <path>~/.bashrc</path> (for user-specific settings) file. |
137 | settings) and <path>~/.bashrc</path> (for user-specific settings) file. |
| 119 | The variables controlling different aspects of locale settings |
138 | The variables controlling different aspects of locale settings |
| 120 | are given in the table below, those with highest precedence (ie. those |
139 | are given in the table below. All of them |
| 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. |
140 | take one name of a locale in <c>ab_CD</c> format given above. |
| 123 | </p> |
141 | </p> |
| 124 | |
142 | |
| 125 | <table> |
143 | <table> |
| 126 | <tr> |
144 | <tr> |
| 127 | <th>Variable name</th> |
145 | <th>Variable name</th> |
| 128 | <th>Explanation</th> |
146 | <th>Explanation</th> |
| 129 | </tr> |
147 | </tr> |
| 130 | <tr> |
148 | <tr> |
| 131 | <ti>LC_ALL</ti> |
149 | <ti>LANG</ti> |
| 132 | <ti> |
150 | <ti> |
| 133 | Define all locale settings at once. This is the top level setting for |
151 | Defines all locale settings at once, while allowing further individual |
| 134 | locales which will override any other setting. |
152 | customization via the LC_* settings below. |
| 135 | </ti> |
153 | </ti> |
| 136 | </tr> |
154 | </tr> |
| 137 | <tr> |
155 | <tr> |
| 138 | <ti>LC_COLLATE</ti> |
156 | <ti>LC_COLLATE</ti> |
| 139 | <ti> |
157 | <ti> |
| 140 | Define alphabetical ordering of strings. This affects eg. output of sorted |
158 | Define alphabetical ordering of strings. This affects e.g. output of sorted |
| 141 | directory listing. |
159 | directory listing. |
| 142 | </ti> |
160 | </ti> |
| 143 | </tr> |
161 | </tr> |
| 144 | <tr> |
162 | <tr> |
| 145 | <ti>LC_CTYPE</ti> |
163 | <ti>LC_CTYPE</ti> |
| … | |
… | |
| 175 | <tr> |
193 | <tr> |
| 176 | <ti>LC_PAPER</ti> |
194 | <ti>LC_PAPER</ti> |
| 177 | <ti>Defines default paper size.</ti> |
195 | <ti>Defines default paper size.</ti> |
| 178 | </tr> |
196 | </tr> |
| 179 | <tr> |
197 | <tr> |
| 180 | <ti>LANG</ti> |
198 | <ti>LC_ALL</ti> |
| 181 | <ti> |
199 | <ti> |
| 182 | Defines all locale settings at once. This setting can be overridden by |
200 | A special variable for overriding all other settings. |
| 183 | individual LC_* settings above or even by LC_ALL. |
|
|
| 184 | </ti> |
201 | </ti> |
| 185 | </tr> |
202 | </tr> |
| 186 | </table> |
203 | </table> |
| 187 | |
204 | |
| 188 | <note> |
205 | <note> |
| 189 | Even though most programs work with LC_ALL only, some of them misbehave if |
206 | Some programs are written in such a way that they expect traditional English |
| 190 | LC_ALL is set but LANG isn't. If you want to play safe, set them <e>both</e>. |
207 | ordering of the alphabet, while some locales, most notably the Estonian one, use |
|
|
208 | a different ordering. Therefore it's recommended to explicitly set LC_COLLATE to C |
|
|
209 | when dealing with system-wide settings. |
| 191 | </note> |
210 | </note> |
| 192 | |
211 | |
| 193 | <p> |
212 | <warn> |
| 194 | Most typically users only set the LANG variable and perhaps LC_CTYPE variable |
213 | Using LC_ALL is strongly discouraged as it can't be overridden later on. Please |
| 195 | on user level by adding definitions to shells startup files defining |
214 | use it only when testing and <e>never</e> set it in a startup file. |
| 196 | the environment variable manually from command line: |
215 | </warn> |
|
|
216 | |
| 197 | </p> |
217 | <p> |
|
|
218 | Most typically users only set the LANG variable on the global basis. This |
|
|
219 | example is for a unicode German locale: |
|
|
220 | </p> |
| 198 | |
221 | |
| 199 | <pre caption="setting the German locale"> |
222 | <pre caption="Setting the default system locale in /etc/env.d/02locale"> |
| 200 | export LANG="de_DE@euro" |
223 | LANG="de_DE.UTF-8" |
|
|
224 | LC_COLLATE="C" |
| 201 | </pre> |
225 | </pre> |
| 202 | |
226 | |
| 203 | <note> |
227 | <note> |
| 204 | Append <c>@euro</c> to your locale if you want to use the Euro |
228 | Use <c>de_DE@euro</c> as your LANG if you want to use the Euro currency symbol |
| 205 | currency symbol (€) |
229 | (€) on non UTF-8 based locales. |
| 206 | </note> |
230 | </note> |
|
|
231 | |
|
|
232 | <p> |
|
|
233 | It's also possible, and pretty common especially in a more traditional UNIX |
|
|
234 | environment, to leave the global settings unchanged, i.e. in the "<c>C</c>" |
|
|
235 | locale. Users can still specify their preferred locale in their own shell RC |
|
|
236 | file: |
|
|
237 | </p> |
|
|
238 | |
|
|
239 | <pre caption="Setting the user locale in ~/.bashrc"> |
|
|
240 | export LANG="de_DE.UTF-8" |
|
|
241 | export LC_COLLATE="C" |
|
|
242 | </pre> |
|
|
243 | |
|
|
244 | <p> |
|
|
245 | Another way of configuring system is to leave it in the default C locale, but |
|
|
246 | enable UTF-8 character representation at the same time. This option is achieved |
|
|
247 | using the following settings in <path>/etc/env.d/02locale</path>: |
|
|
248 | </p> |
|
|
249 | |
|
|
250 | <pre caption="Using traditional C locale while specifying UTF-8"> |
|
|
251 | LC_CTYPE=de_DE.UTF-8 |
|
|
252 | </pre> |
|
|
253 | |
|
|
254 | <p> |
|
|
255 | Using the above snippet, users will be able to see localized file names |
|
|
256 | properly, while not being forced to your preferred language. |
|
|
257 | </p> |
| 207 | |
258 | |
| 208 | <p> |
259 | <p> |
| 209 | For message based localization to work in programs that support it, you will |
260 | For message based localization to work in programs that support it, you will |
| 210 | probably need to have programs compiled with the <c>nls</c> (Native language |
261 | probably need to have programs compiled with the <c>nls</c> (Native language |
| 211 | support) USE flag set. Most of the programs using nls also need the gettext |
262 | support) USE flag set. Most of the programs using nls also need the gettext |
| 212 | library to extract and use localized messages. Of course, Gentoo's Portage will |
263 | library to extract and use localized messages. Of course, Portage will |
| 213 | automatically install it when needed. |
264 | automatically install it when needed. |
| 214 | </p> |
265 | </p> |
| 215 | |
266 | |
|
|
267 | <p> |
|
|
268 | Once you have set the right locale, be sure to update your environment |
|
|
269 | variables to make your system aware of the change: |
|
|
270 | </p> |
|
|
271 | |
|
|
272 | <pre caption="Update the environment"> |
|
|
273 | <comment>(For system-wide default locale:)</comment> |
|
|
274 | # <i>env-update && source /etc/profile</i> |
|
|
275 | |
|
|
276 | <comment>(For user-specific locale:)</comment> |
|
|
277 | $ <i>source ~/.bashrc</i> |
|
|
278 | </pre> |
|
|
279 | |
|
|
280 | <p> |
|
|
281 | After this, you will need to kill your X server by pressing |
|
|
282 | <c>Ctrl-Alt-Backspace</c>, log out, then log in as user. |
|
|
283 | </p> |
|
|
284 | |
|
|
285 | <p> |
|
|
286 | Now, verify that the changes have taken effect: |
|
|
287 | </p> |
|
|
288 | |
|
|
289 | <pre caption="Verify env changes"> |
|
|
290 | $ <i>locale</i> |
|
|
291 | </pre> |
|
|
292 | |
|
|
293 | <p> |
|
|
294 | There is also additional localisation variable called LINGUAS, which affects |
|
|
295 | to localisation files that get installed in gettext-based programs, and decides |
|
|
296 | used localisation for some specific software packages, such as |
|
|
297 | <c>kde-base/kde-l10n</c> and <c>app-office/openoffice</c>. The variable |
|
|
298 | takes in <e>space</e>-separated list of language codes, and suggested |
|
|
299 | place to set it is <path>/etc/make.conf</path>: |
|
|
300 | </p> |
|
|
301 | |
|
|
302 | <pre caption="Setting LINGUAS in make.conf"> |
|
|
303 | # <i>nano -w /etc/make.conf</i> |
|
|
304 | <comment>(Add in the LINGUAS variable. For instance, |
|
|
305 | for German, Finnish and English:)</comment> |
|
|
306 | LINGUAS="de fi en" |
|
|
307 | </pre> |
|
|
308 | |
|
|
309 | |
| 216 | </body> |
310 | </body> |
| 217 | </section> |
311 | </section> |
| 218 | <section> |
312 | <section> |
| 219 | <title>Generating Specific Locales</title> |
313 | <title>Generating Specific Locales</title> |
| 220 | <body> |
314 | <body> |
| 221 | |
315 | |
| 222 | <p> |
316 | <p> |
| 223 | If you use a locale that isn't available by default, you should use |
|
|
| 224 | <c>localedef</c> to generate your locale. For instance: |
|
|
| 225 | </p> |
|
|
| 226 | |
|
|
| 227 | <pre caption="Generating a locale using localedef"> |
|
|
| 228 | # <i>localedef -c -i en_US -f ISO-8859-15 en_US.ISO-8859-15</i> |
|
|
| 229 | </pre> |
|
|
| 230 | |
|
|
| 231 | <p> |
|
|
| 232 | After having generated the locale, you can export the LANG variable as you see |
|
|
| 233 | fit. |
|
|
| 234 | </p> |
|
|
| 235 | |
|
|
| 236 | <pre caption="Exporting the LANG variable"> |
|
|
| 237 | # <i>export LANG="en_US.ISO-8859-15"</i> |
|
|
| 238 | </pre> |
|
|
| 239 | |
|
|
| 240 | </body> |
|
|
| 241 | </section> |
|
|
| 242 | <section> |
|
|
| 243 | <title>The userlocales USE flag</title> |
|
|
| 244 | <body> |
|
|
| 245 | |
|
|
| 246 | <p> |
|
|
| 247 | You will probably only use one or maybe two locales on your system. Up until now |
317 | You will probably only use one or maybe two locales on your system. You can |
| 248 | after compiling <c>glibc</c> a full set of all available locales has been |
|
|
| 249 | created. As of now you can activate the <c>userlocales</c> USE flag and specify |
|
|
| 250 | only the locales you will need in <path>/etc/locales.build</path>. |
318 | specify locales you will need in <path>/etc/locale.gen</path>. |
| 251 | </p> |
|
|
| 252 | |
|
|
| 253 | <pre caption="Activate the userlocales USE flag especially for glibc"> |
|
|
| 254 | echo "sys-libs/glibc userlocales" >> /etc/portage/package.use |
|
|
| 255 | </pre> |
|
|
| 256 | |
|
|
| 257 | <p> |
319 | </p> |
| 258 | Now specify the locales you want to be able to use: |
|
|
| 259 | </p> |
|
|
| 260 | |
320 | |
| 261 | <pre caption="Adding locales to /etc/locales.build"> |
321 | <pre caption="Adding locales to /etc/locale.gen"> |
| 262 | en_US/ISO-8859-1 |
322 | en_GB ISO-8859-1 |
| 263 | en_US.UTF-8/UTF-8 |
323 | en_GB.UTF-8 UTF-8 |
| 264 | de_DE/ISO-8859-1 |
324 | de_DE ISO-8859-1 |
| 265 | de_DE@euro/ISO-8859-15 |
325 | de_DE@euro ISO-8859-15 |
| 266 | </pre> |
326 | </pre> |
| 267 | |
327 | |
|
|
328 | <p> |
|
|
329 | The next step is to run <c>locale-gen</c>. It will generate all the locales you |
|
|
330 | have specified in the <path>/etc/locale.gen</path> file. |
| 268 | <p> |
331 | </p> |
| 269 | The next step is to re-compile <c>glibc</c>. Of course you can defer this until |
332 | |
| 270 | the next <c>glibc</c> upgrade is available. |
333 | <note> |
|
|
334 | <c>locale-gen</c> is available in <c>glibc-2.3.6-r4</c> and newer. If you have |
|
|
335 | an older version of glibc, you should update it now. |
|
|
336 | </note> |
|
|
337 | |
|
|
338 | <p> |
|
|
339 | You can verify that your selected locales are available by running <c>locale |
|
|
340 | -a</c>. |
| 271 | </p> |
341 | </p> |
| 272 | |
342 | |
| 273 | </body> |
343 | </body> |
| 274 | </section> |
344 | </section> |
| 275 | </chapter> |
345 | </chapter> |
| … | |
… | |
| 279 | <section> |
349 | <section> |
| 280 | <body> |
350 | <body> |
| 281 | |
351 | |
| 282 | <p> |
352 | <p> |
| 283 | The keyboard layout used by the console is set in |
353 | The keyboard layout used by the console is set in |
| 284 | <path>/etc/conf.d/keymaps</path> by the <c>KEYMAP</c> variable. |
354 | <path>/etc/conf.d/keymaps</path> by the <c>keymap</c> variable. |
| 285 | Valid values can be found in |
355 | Valid values can be found in |
| 286 | <path>/usr/share/keymaps/<c>{arch}</c>/</path>. |
356 | <path>/usr/share/keymaps/<c>{arch}</c>/</path>. |
| 287 | <path>i386</path> has further subdivisions into layout |
357 | <path>i386</path> has further subdivisions into layout |
| 288 | (<path>qwerty/</path>, <path>azerty/</path>, etc.). Some |
358 | (<path>qwerty/</path>, <path>azerty/</path>, etc.). Some |
| 289 | languages have multiple options, so you may wish to experiment |
359 | languages have multiple options, so you may wish to experiment |
| 290 | to decide which one fits your needs best. |
360 | to decide which one fits your needs best. |
| 291 | </p> |
361 | </p> |
| 292 | |
362 | |
| 293 | <pre caption="setting the console keymap"> |
363 | <pre caption="Setting the console keymap"> |
| 294 | KEYMAP="de" |
364 | keymap="de" |
| 295 | KEYMAP="de-latin1" |
365 | keymap="de-latin1" |
| 296 | KEYMAP="de-latin1-nodeadkeys" |
366 | keymap="de-latin1-nodeadkeys" |
| 297 | </pre> |
367 | </pre> |
| 298 | |
368 | |
| 299 | </body> |
369 | </body> |
| 300 | </section> |
370 | </section> |
| 301 | </chapter> |
371 | </chapter> |
| … | |
… | |
| 309 | The keyboard layout to be used by the X server is specified |
379 | The keyboard layout to be used by the X server is specified |
| 310 | in <path>/etc/X11/xorg.conf</path> by the <c>XkbLayout</c> |
380 | in <path>/etc/X11/xorg.conf</path> by the <c>XkbLayout</c> |
| 311 | option. |
381 | option. |
| 312 | </p> |
382 | </p> |
| 313 | |
383 | |
| 314 | <pre caption="setting the X keymap"> |
384 | <pre caption="Setting the X keymap"> |
| 315 | Section "InputDevice" |
385 | Section "InputClass" |
| 316 | Identifier "Keyboard1" |
386 | Identifier "keyboard-all" |
| 317 | ... |
387 | Driver "evdev" |
| 318 | Option "XkbLayout" "de" |
388 | Option "XkbLayout" "de" |
| 319 | # Option "XkbVariant" "nodeadkeys" |
389 | #Option "XkbModel" "pc105" |
| 320 | ... |
390 | MatchIsKeyboard "on" |
|
|
391 | EndSection |
|
|
392 | </pre> |
|
|
393 | |
|
|
394 | <p> |
|
|
395 | If you have an international keyboard layout, you should set the option |
|
|
396 | <c>XkbModel</c> to <c>pc102</c> or <c>pc105</c>, as this will allow mapping of the |
|
|
397 | additional keys specific to your keyboard. |
| 321 | </pre> |
398 | </p> |
|
|
399 | |
|
|
400 | <p> |
|
|
401 | Deadkeys allow you to press keys that will not show immediately but will be |
|
|
402 | combined with another letter to produce a single character such as é,è,á,à, |
|
|
403 | etc. Setting <c>XkbVariant</c> to <c>nodeadkeys</c> allows input these special |
|
|
404 | characters into X terminals. |
|
|
405 | </p> |
|
|
406 | |
|
|
407 | <p> |
|
|
408 | If you would like to switch between more than one keyboard layout (for example |
|
|
409 | English and Russian), all you have to do is add a few lines to |
|
|
410 | <path>xorg.conf</path> that specify the desired layouts and the shortcut |
|
|
411 | command. |
|
|
412 | </p> |
|
|
413 | |
|
|
414 | <pre caption="Switching between two keyboard layouts"> |
|
|
415 | Section "InputClass" |
|
|
416 | Identifier "keyboard-all" |
|
|
417 | Driver "evdev" |
|
|
418 | Option "XkbLayout" "us,ru" |
|
|
419 | Option "XkbOptions" "grp:alt_shift_toggle,grp_led:scroll" |
|
|
420 | MatchIsKeyboard "on" |
|
|
421 | EndSection |
|
|
422 | </pre> |
|
|
423 | |
|
|
424 | <p> |
|
|
425 | Here, <c>XkbOptions</c> allows you to toggle between keyboard layouts by simply |
|
|
426 | pressing <c>Alt-Shift</c>. This will also toggle the Scroll Lock light on or |
|
|
427 | off, thanks to the <c>grp_led:scroll</c> option. This is a handy visual |
|
|
428 | indicator of which keyboard layout you are using at the moment. |
|
|
429 | </p> |
| 322 | |
430 | |
| 323 | </body> |
431 | </body> |
| 324 | </section> |
432 | </section> |
| 325 | </chapter> |
433 | </chapter> |
| 326 | |
434 | |
| … | |
… | |
| 328 | <title>KDE</title> |
436 | <title>KDE</title> |
| 329 | <section> |
437 | <section> |
| 330 | <body> |
438 | <body> |
| 331 | |
439 | |
| 332 | <p> |
440 | <p> |
| 333 | For KDE you have to install the kde-i18n package with the appropriate |
441 | For KDE you have to install the <c>kde-base/kde-l10n</c> and |
| 334 | LINGUAS variable set: |
442 | <c>app-office/calligra-l10n</c> packages. These respect the <uri |
| 335 | </p> |
443 | link="#variables">LINGUAS variable</uri> described earlier. |
| 336 | |
|
|
| 337 | <pre caption="Install localized KDE"> |
|
|
| 338 | # <i>nano -w /etc/make.conf</i> |
|
|
| 339 | <comment>(Add in the LINGUAS variable. For instance, for the German language:)</comment> |
|
|
| 340 | LINGUAS="de" |
|
|
| 341 | |
|
|
| 342 | <comment>(Now install kde-i18n)</comment> |
|
|
| 343 | # <i>emerge kde-i18n</i> |
|
|
| 344 | </pre> |
444 | </p> |
| 345 | |
445 | |
| 346 | </body> |
446 | </body> |
| 347 | </section> |
447 | </section> |
| 348 | </chapter> |
448 | </chapter> |
| 349 | |
449 | |
| … | |
… | |
| 351 | <title>The Euro Symbol for the Console</title> |
451 | <title>The Euro Symbol for the Console</title> |
| 352 | <section> |
452 | <section> |
| 353 | <body> |
453 | <body> |
| 354 | |
454 | |
| 355 | <p> |
455 | <p> |
| 356 | In order to get your console to display the Euro symbol, you |
456 | In order to get your console to display the Euro symbol, you will need to set |
| 357 | will need to set <c>CONSOLEFONT</c> in |
457 | <c>consolefont</c> in <path>/etc/conf.d/consolefont</path> to a file found in |
| 358 | <path>/etc/rc.conf</path> to a file found in |
|
|
| 359 | <path>/usr/share/consolefonts/</path> (without the |
458 | <path>/usr/share/consolefonts/</path> (without the <c>.psfu.gz</c>). |
| 360 | <c>.psfu.gz</c>). <c>lat9w-16</c> has the Euro symbol. |
459 | <c>lat9w-16</c> has the Euro symbol. |
| 361 | </p> |
460 | </p> |
| 362 | |
461 | |
| 363 | <pre caption="setting the console font"> |
462 | <pre caption="Setting the console font"> |
| 364 | CONSOLEFONT="lat9w-16" |
463 | consolefont="lat9w-16" |
|
|
464 | </pre> |
|
|
465 | |
|
|
466 | <p> |
|
|
467 | You should verify that <c>consolefont</c> is in the boot runlevel: |
|
|
468 | </p> |
|
|
469 | |
|
|
470 | <pre caption="Verify the proper runlevel"> |
|
|
471 | # <i>rc-update -v show | grep consolefont</i> |
|
|
472 | </pre> |
|
|
473 | |
|
|
474 | <p> |
|
|
475 | If no runlevel is displayed for <c>consolefont</c>, then add it to the proper level: |
|
|
476 | </p> |
|
|
477 | |
|
|
478 | <pre caption="Add consolefont to boot"> |
|
|
479 | # <i>rc-update add consolefont boot</i> |
| 365 | </pre> |
480 | </pre> |
| 366 | |
481 | |
| 367 | </body> |
482 | </body> |
| 368 | </section> |
483 | </section> |
| 369 | </chapter> |
484 | </chapter> |
| … | |
… | |
| 373 | <section> |
488 | <section> |
| 374 | <title>Most Applications</title> |
489 | <title>Most Applications</title> |
| 375 | <body> |
490 | <body> |
| 376 | |
491 | |
| 377 | <p> |
492 | <p> |
| 378 | Getting the Euro symbol to work properly in X is a little |
493 | Getting the Euro symbol to work properly in X is a little bit tougher. The |
| 379 | bit tougher. The first thing you should do is change the <c>fixed</c> |
494 | first thing you should do is change the <c>fixed</c> and <c>variable</c> |
| 380 | and <c>variable</c> definitions in |
495 | definitions in <path>/usr/share/fonts/misc/fonts.alias</path> to end in |
| 381 | <path>/usr/X11R6/lib/X11/fonts/misc/fonts.alias</path> to end |
|
|
| 382 | in <c>iso8859-15</c> instead of <c>iso8859-1</c>. |
496 | <c>iso8859-15</c> instead of <c>iso8859-1</c>. |
| 383 | </p> |
497 | </p> |
| 384 | |
498 | |
| 385 | <pre caption="setting default X fonts"> |
499 | <pre caption="Setting default X fonts"> |
| 386 | fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15 |
500 | fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15 |
| 387 | variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15 |
501 | variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15 |
| 388 | </pre> |
502 | </pre> |
| 389 | |
503 | |
| 390 | <p> |
504 | <p> |
| 391 | Some applications use their own font, and you will have to |
505 | Some applications use their own font, and you will have to tell them separately |
| 392 | tell them separately to use a font with the Euro symbol. You |
506 | to use a font with the Euro symbol. You can do this at a user-specific level in |
| 393 | can do this at a user-specific level in |
|
|
| 394 | <path>.Xdefaults</path> (you can copy this file to |
507 | <path>.Xdefaults</path> (you can copy this file to <path>/etc/skel/</path> for |
| 395 | <path>/etc/skel/</path> for use by new users), or at a global |
508 | use by new users), or at a global level for any application with a resource file |
| 396 | level for any application with a resource file in |
|
|
| 397 | <path>/usr/X11R6/lib/X11/app-defaults/</path> (like xterm). In |
509 | in <path>/usr/share/X11/app-defaults/</path> (like xterm). In these files you |
| 398 | these files you generally have to change an existing line, |
510 | generally have to change an existing line, rather than adding a new one. To |
| 399 | rather than adding a new one. To change our xterm font, for |
511 | change our xterm font, for instance: |
| 400 | instance: |
|
|
| 401 | </p> |
512 | </p> |
| 402 | |
513 | |
| 403 | <pre caption="setting fonts for xterm"> |
514 | <pre caption="Setting fonts for xterm"> |
| 404 | <comment>(in your home directory)</comment> |
515 | <comment>(in your home directory)</comment> |
| 405 | # <i>echo 'XTerm*font: fixed' >> .Xresources </i> |
516 | $ <i>echo 'XTerm*font: fixed' >> .Xresources </i> |
| 406 | # <i>xrdb -merge .Xresources</i> |
517 | $ <i>xrdb -merge .Xresources</i> |
| 407 | </pre> |
518 | </pre> |
| 408 | |
519 | |
| 409 | </body> |
520 | </body> |
| 410 | </section> |
521 | </section> |
| 411 | <section> |
522 | <section> |
| … | |
… | |
| 425 | For XEmacs (not plain Emacs), you have to do a little |
536 | For XEmacs (not plain Emacs), you have to do a little |
| 426 | more. In <path>/home/user/.xemacs/init.el</path>, add: |
537 | more. In <path>/home/user/.xemacs/init.el</path>, add: |
| 427 | </p> |
538 | </p> |
| 428 | |
539 | |
| 429 | <pre caption="setting the font for xemacs"> |
540 | <pre caption="setting the font for xemacs"> |
| 430 | (define-key global-map '(EuroSign) '[€]) |
541 | (define-key global-map '(EuroSign) '[€]) |
| 431 | </pre> |
542 | </pre> |
| 432 | |
543 | |
| 433 | <note> |
544 | <note> |
| 434 | The symbol in the []s is the Euro symbol. |
545 | The symbol in the []s is the Euro symbol. |
| 435 | </note> |
546 | </note> |
| 436 | |
547 | |
| 437 | </body> |
548 | </body> |
| 438 | </section> |
549 | </section> |
| 439 | <section> |
550 | <section> |
| 440 | <title>Language for OpenOffice.org</title> |
551 | <title>OpenOffice.Org</title> |
| 441 | <body> |
552 | <body> |
| 442 | |
553 | |
| 443 | <note> |
|
|
| 444 | Customized default language is not available for openoffice-bin ebuild. The |
|
|
| 445 | default language in the openoffice-bin is ENUS. |
|
|
| 446 | </note> |
|
|
| 447 | |
|
|
| 448 | <p> |
|
|
| 449 | Please note that this package now uses the LINGUAS variable to |
|
|
| 450 | provide localization. The old LANGUAGE=ENUS|PORT system does <e>not</e> work |
|
|
| 451 | anymore. The default language for OpenOffice.org is set as "US English". If you |
|
|
| 452 | wish to change the default language for OpenOffice.org, check the ebuild for the |
|
|
| 453 | default language code. |
|
|
| 454 | </p> |
554 | <p> |
| 455 | |
555 | The current stable <c>app-office/openoffice</c> and |
| 456 | <pre caption="Example: emerge openoffice for german environment"> |
556 | <c>app-office/openoffice-bin</c> ebuilds support the <uri |
| 457 | # <i>nano -w /etc/make.conf</i> |
557 | link="#variables">LINGUAS variable</uri> for selecting installed GUI language |
| 458 | <comment>(Add in the LINGUAS variable. For instance, for the German language:)</comment> |
558 | packs. To see the status of GUI translation, hyphenation, spell checking and |
| 459 | LINGUAS="de" |
559 | other localisations on your language, please refer to <uri |
| 460 | |
560 | link="http://l10n.openoffice.org/languages.html">OpenOffice.Org localisation |
| 461 | <comment>(Now install openoffice)</comment> |
561 | web site</uri>. |
| 462 | # <i>emerge openoffice</i> |
|
|
| 463 | </pre> |
562 | </p> |
| 464 | |
563 | |
| 465 | </body> |
564 | </body> |
| 466 | </section> |
565 | </section> |
| 467 | </chapter> |
566 | </chapter> |
| 468 | |
567 | |