Gentoo Logo

Disclaimer : Dit document is niet juist en is niet meer onderhouden.


Gentoo Linux Localisatie Gids

Inhoud:

1.  Tijdzone

Om de tijd correct bij te houden moet /etc/localtime naar de correcte tijdzone wijzen. Kijk eens rond in /usr/share/zoneinfo en kies je tijdzone of een stad dat in jouw tijdzone ligt.

Codevoorbeeld 1.1: setting the timezone

# cp /usr/share/zoneinfo/Europe/Brussels /etc/localtime
# date
Sun Feb 16 08:26:44 CET 2003

Nota: Let erop dat de 3-letter tijdzone-indicatie (hier: "CET") correct is.

Nota: Je kan tevens de variabele TZ instellen op eender wat je in /usr/share/zoneinfo kan vinden. Dit doe je best in je shell-rc-bestand (.bash_profile voor bash). Bijvoorbeeld TZ="Europe/Brussels".

2.  Systeemklok

In de meeste Gentoo Linux installaties is de systeemklok ingesteld op UTC (of GMT, Greenwhich Mean Time) en interpreteert het systeem de tijdzoneinstelling om het uur te vertalen naar de locale, werkelijke tijd. Indien je wenst dat je systeemclock niet in UTC staat moet je /etc/conf.d/clock aanpassen en de waarde van CLOCK van UTC naar local veranderen.

Codevoorbeeld 2.1: local vs. GMT klok

(aangeraden:)
CLOCK="UTC"
(of:)
CLOCK="local"

3.  Lokale system

Wat zijn localiseringen?

Een localisering is een groepje informatie die de meeste programma's gebruiken om hun specifieke taal en land instellingen te detecteren. De localisaties en hun eigen data zijn apart van de systeem bibliotheek en kunnen gevonden worden in /usr/share/locale op de meeste systemen. Een localisatie genaamd ab_CD waar ab zijn je twee of dire lettertaal code is (zoals gespecifieerd in ISO-639) en CD is je tweeletter land-code (zoals gespecifieerd in ISO-3166).

Bestaande Lokalisering Gebruiken

Locale instellingen zijn opgeslaan locale variabelen. Deze zijn typisch opgeslagen in het /etc/env.d/02locale (voor systeeminstellingen) en ~/.bashrc (voor gebruikerinstellingen) bestand. De variabele die de verschillene aspecten van de locale instellingen controleert zijn aangegeven in de onderstaande tabel. Die met de hoogste belangrijkheid (bvb. diegene die instelingen opheffen) zijn bovenaan in de taebel opgenomen. Alle variabelen nemen een naam van een localisering in ab_CD formaat bovenaan aangegeven.

Variabele naam Uitleg
LC_ALL Bepaalt alle locale instellingen in een keer. Dit is een hoofdinstelling voor localisering die alle andere instellingen zullen opheffen.
LC_COLLATE Bepaalt in alfabetisch volgorde de strings. Dit beïnvloed de teruggave van gesorteerde maplijsten.
LC_CTYPE Bepaalt de karakter behandelende eigenschappen van het systeem. Dit bepaalt welk karakter gezien worden als stuk van het alfabet, numeriek enzovoort. Dit bepaald ook de gebruikte karakterset, indien beschikbaar.
LC_MESSAGES Gelocaliseer-programma's voor aplicaties die gebruik maken van localizerende schema's (hoofdzakelijk GNU programma's, zie volgend hoofdstuk voor meer informatie).
LC_MONETARY Dit bepaalt de eenheid en opmaak van eenheidstype Defines currency units and formatting of currency type numeric values.
LC_NUMERIC Dit bepaalt de opmaak van numerieke waarden die niet monetair zijn. Dit heeft invloed op duizend- en honderd-scheiding.
LC_TIME Bepaald de opmaak van tijd en datum.
LC_PAPER Bepaald het standaard papier formaat.
LANG Bepaalt alle locale instellingen in een keer. Deze instelling kan opgeheven worden door individuele LC_* instellingen hierboven of zelfs LC_ALL.

Nota: Hoewel veel programma's met LC_ALL werken, toch werken sommige programma's niet goed als LC_ALL is ingesteld en LANG niet. Als je zeker wilt spelen, stel ze allebei in.

Meeste gebruikers stellen alleen hun LANG variabele en soms hun LC_CTYPE variabele in op gebruikbersniveau door definities toe te voegen aan het shell opstartbestand in de command line:

Codevoorbeeld 3.1: Instellen van de locisatie in ~/.bashrc

export LANG="nl_BE@euro"

Nota: Plaats de @euro als je wilt dat je localisatie het euro teken kan gebruiken.

Het is mogelijk om over een heel-systeem voora lle gebruikers en programma's de localisatie in te stellen:

Codevoorbeeld 3.2: Instellen van de standaard Lokalisatie in /etc/env.d/02locale

LC_ALL="nl_BE@euro" of LC_ALL="nl_NL@euro"
LANG="nl_BE@euro" of LANG="nl_NL@euro"

Een mogelijke oefening is om alleen per gebruiker de localisatie in te stellen en de systeem localisatie niet in te stellen. In dit geval zijn de systeem instellingen ingesteld op een speciale waarde "C", die een historische redenen naar de engelse localisatie overschakelen.

Voor een bericht-gebaseerde localisatie te laten werken in je programma's die het ondersteunen, moet je je programma's controleren met de nls (Native language support) USE-variabele. Meeste programma's die nls gebruiken hebben ook de gettext bibliotheek nodig en gebruiken gelocaliseerde berichten. Natuurlijk zal de portage die automatisch installeren.

Eenmaal je de juiste localisatie hebt ingesteld, update dan je omgeving om het systeem te laten vaststellen dat ze veranderd zijn:

Codevoorbeeld 3.3: Updaten van de omgeving

(Voor de systeem-lokalisatie:)
# env-update && source /etc/profile

(Voor de gebruikers-lokalisatie:)
$ source ~/.bashrc

Na dit moet je nog je X server opnieuw starten. Dit kun je doen door Ctrl-Alt-Backspace, uit te loggen en terug in te loggen als gebruiker.

Controleer nu dat je veranderingen effect hebben gehad:

Codevoorbeeld 3.4: Controleer de env veranderingen

$ env | grep -i LC_

Er is ook een extra localisatie variabele die LINGUAS heet, deze beïnvloed localisatie bestanden die geïnstaleerd worden in programma's die gettext gebruiken, en beslist welke localisatie er wordt gebruikt voor verschillende specifiekee software pakketten, zoals kde-base/kde-i18n en app-office/openoffice. De variabele bevat een met spaties-gescheide talen-codes en wordt ingesteld in /etc/make.conf:

Codevoorbeeld 3.5: Instellen van LINGUAS in make.conf

# nano -w /etc/make.conf
(Voeg hier de LINGUAS variabele toe. Bijvoorbeeld,
voor nederlands, duits, fins en engels:)
LINGUAS="nl de fi en"

Specifieke Localisatie Genereren

Als je een localisatie gebruikt die niet standaard beschikbaar is, zou je moeten localedef gebruiken om je localisatie te genereren. Bijvoorbeeld:

Codevoorbeeld 3.6: Het Genereren van een localisatie met localedef

# localedef -c -i en_US -f ISO-8859-15 en_US.ISO-8859-15

Na dit te hebben gedaan, kun je de LANG variabele exporteren zoals het je past.

Codevoorbeeld 3.7: Exporteren van de LANG variabele

# export LANG="en_US.ISO-8859-15"

Lokalisaties genereren voor glibc

Je gebruikt waarschijnlijk slechts een of twee localisaties op je systeem. Je kan deze instellen op je systeem in /etc/locale.gen.

Codevoorbeeld 3.8: Toevoegen van localisaties in /etc/locale.gen

en_GB ISO-8859-1
en_GB.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE@euro ISO-8859-15

De volgende stap is het uitvoeren van locale-gen. Het zal je gespecifiëerde localisaties voor jouw localisaties genereren die in /etc/locale.gen bestaand aanwezig zijn.

Nota: locale-gen is beschikbaar in glibc-2.3.6-r4 en nieuwer. als je een oudere versie van glibc hebt update je die best.

Je kunt controleren dat je gekozen localisaties beschikbaar zijn door het uitvoeren van locale -a.

4.  Keyboard layout voor de console

De keyboard layout die door de console gebruikt wordt is gedefinieerd in /etc/cond.d/keymaps door de KEYMAP variabele. Geldige waarden kan je vinden in /usr/share/keymaps/{arch}/. i386 heeft verdere onderverdelingen afhankelijk van de layout (qwerty, azerty, ...). Sommige talen hebben meerdere opties, waardoor je waarschijnlijk eerst wat wil experimenteren alvorens je je definitief besluit neemt.

Codevoorbeeld 4.1: de console keymap instellen

 KEYMAP="be"
 KEYMAP="be-latin1"
 KEYMAP="be-latin1-nodeadkeys"

5.  Keyboard layout voor de X server

De keyboard layout voor de X server wordt gedefinieerd in /etc/X11/xorg.conf door de XkbLayout variabele.

Codevoorbeeld 5.1: de X keymap instellen

 Section "InputDevice"
     Identifier  "Keyboard1"
     ...
     Option "XkbLayout"    "be"
        of
     Option "XkbLayout"    "us,nl"
     #Option "XkbModel"     "pc105"    ## Dit wordt gebruikt voor internationale toetsenborden.
     # Option XkbVariant"  "nodeadkeys" ## Dit wordt gebruikt voor xterm
     ...

Als jee en internationaal toetsenbord gebruikt, zou je moeten de optie XkbModel naar pc102 of pc105, omdat dit je toelaat om extra toetsen in te stellen op je toetsenbord.

Deadkeys laat je toe om een toets in te drukken en die nog niet meteen te tonen maar te laten combineren met een andere letter om een speciaal karakter te kunnen instellen zoals; é,è,á,à, enzovoort. Het instellen van XkbVariant naar nodeadkeys laat je toe om deze speciale karatkers in je terminal te krijgen.

Als je graag wilt wisselen tussen verschillende toestenbord layouts (bijvoorbeeld Engels of Russisch). Het enige wat je moet doen is enkele lijnen toevoegen aan je xorg.conf bestand dat de gewenste layout's specifieert.

Codevoorbeeld 5.2: Wisselen tussen twee toetsenbord layouts

Section "InputDevice"
Identifier  "Keyboard1"
Option "XkbLayout"    "be,nl"
Option "XkbOptions"   "grp:alt_shift_toggle,grp_led:scroll"

Hier laat XkbOptions toe om te wisselen tussen verschillende toetsenbord layouts door simpel op alt-shift te drukken. Dit zal ook het scroll lock lichtje aan of uit doen, dankzij de grp_led:scroll optie, Dit is een handige visuele hint naar welk toetsenbord layout je momenteel gebruikt.

6.  Het euro-symbool voor de console

Opdat je console het euro-symbool ondersteunt moet je de CONSOLEFONT in /etc/conf.d/consolefont instellen op een bestand in /usr/share/consolefonts (zonder de extensie .psfu.gz). lat9w-16 bevat het euro-symbool.

Codevoorbeeld 6.1: de console font instellen

CONSOLEFONT="lat9w-16"

Je moet ook controleren of CONSOLEFONT in je boot opstartlevel is.

Codevoorbeeld 6.2: Controleer het juiste opstartlevel

# rc-update show | grep -i consolefont

Als er geen runlevel is ingesteld voor CONSOLEFONT, Voeg dan het juiste level toe:

Codevoorbeeld 6.3: Voeg consolefont toe aan boot

# rc-update add consolefont boot

7.  KDE

Voor KDE moet je het kde-il8n pakket met de nodige LINGUAS omgeving variabele instellen:

Codevoorbeeld 7.1: Installeren van de gelocaliseerde KDE

#  nano -w /etc/make.conf 
(voeg in de LINGUAS variabele. Bijvoorbeeld, voor duits:)
# LINGUAS="de" emerge kde-i18n

8.  Het euro-symbool in X

Merendeel van de applicaties

Het euro-symbool werkende krijgen onder X is iets moeilijker. Het eerste wat je moet doen is de fixed en variable definities in /usr/X11R6/lib/X11/fonts/misc/fonts.alias aanpassen zodat ze iso-8859-15 lezen in plaats van iso8859-1.

Codevoorbeeld 8.1: de default X fonts instellen

 fixed        -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15
 variable     -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15

Sommige applicaties gebruiken hun eigen fonts, dus zal je hen individueel moeten vertellen om een font met het euro-symbool in te gebruiken. Je kan dit doen op user-level in .Xdefaults (je kan dit bestand dan later kopieren naar /etc/skel zodat nieuwe gebruikers dit automatisch hebben), of globaal door de aanpassingen per applicatie in /usr/X11R6/lib/X11/app-defaults (zoals xterm) aan te passen. In deze bestanden moet je algemeen 1 regel aanpassen (en niet toevoegen). Om bijvoorbeeld de xterm-font aan te passen doe je:

Codevoorbeeld 8.2: fonts instellen voor xterm

(in je homedirectorie)
$ echo 'XTerm*font: fixed' >> .Xresources 
$ xrdb -merge .Xresources

Het euro-symbool in (X)Emacs

Om het euro-symbool in (X)Emacs te kunnen gebruiken moet je het volgende toevoegen aan .Xdefaults:

Codevoorbeeld 8.3: font instellen voor emacs

Emacs.default.attributeFont: -*-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-15

Voor XEmacs (niet gewoon Emacs) moet je iets meer doen. Voeg aan ~/.xemacs/init.el het volgende toe:

Codevoorbeeld 8.4: font instellen voor xemacs

(define-key global-map '(EuroSign) '[€])

Nota: Het symbool tussen [] is het euro-symbool

OpenOffice.Org

De huidige stabiele app-office/openoffice en app-office/openoffice-bin ebuilds onderteunen de LINGUAS variabele om de GUI taal te kunnen installeren. Om de status van de GUI vertaling, spelling controles en andere localisaties van je taal, gelieve OpenOffice.Org localisatie web site.



Print

Upgedate op 22 oktober 2006

De originele versie van dit document wordt niet meer onderhouden

Korte inhoud: Deze handleiding helpt je met het localiseren van je Gentoo Linux distributie naar eender welke Europese local-instelling. We gebruiken hier België als case-study. Dit document behandelt tevens het gebruik van het Euro-symbool.

Alexander Holler
Auteur

Benny Chuang
Redacteur

Steven Lucy
Vertaler/Redacteur

Tobias Scherbaum
Redacteur

Sven Vermeulen
Vertaler

Dimitry Bradt
Vertaler

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.