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

Legend:
Removed from v.1.33  
changed lines
  Added in v.1.52

  ViewVC Help
Powered by ViewVC 1.1.20