Gentoo Linux honosítási útmutató
1.
Időzóna
Ahhoz, hogy a számítógéped helyesen jelenítse meg az időt, meg kell adnod azt a
helynek a zónáját, ahonnan használod a gépet. A használható zónák neveit a
/usr/share/zoneinfo/ könyvtárban találod. Állítsd be ezután a
/etc/conf.d/clock fájlban az időzónádat. Lehetőleg ne használd a
/usr/share/zoneinfo/Etc/GMT* állományokat, mivel ezekből elég
nehéz kitalálni a megfelelő hely nevét... Például a GMT-8
valójában a GMT+8 zóna lenne.
Kódlista 1.1: Az időzóna-információ beállítása |
# ls /usr/share/zoneinfo
# nano -w /etc/conf.d/clock
TIMEZONE="Europe/Budapest"
# date
Wed Mar 8 00:46:05 CET 2006
|
Megjegyzés:
Ellenőrizd, hogy az időzóna jelzése (jelen esetben "CET") a lakhelyednek
megfelelően íródik-e ki!
|
Megjegyzés:
Akár felhasználónként külön-külön időzónát is meg lehet adni a TZ
változó segítségével. Ennek értéke a /usr/share/zoneinfo könyvtár
alatti bármelyik zóna neve lehet. A változónak a shelled megfelelő
rc-állományában (bash shell esetén a .bash_profile) lehet értéket
adni. Jelen esetben TZ="Europe/Budapest".
|
2.
Hardveres óra
A legtöbb Gentoo Linux telepítés esetén a géped hardveres órája UTC (vagy GMT,
Greenwich Mean Time - greenwich-i középidő) időt használ, s az aktuális helyi
időt a megadott időzóna segítségével számolja ki a rendszer. Ha valami miatt
arra van szükséged, hogy a hardveres órád ne UTC idő szerint mérjen, a
/etc/conf.d/clock állományt kell megnyitnod, és átírni benne a
CLOCK értékét az eredeti UTC-ről local-ra.
Kódlista 2.1: helyi vagy GMT idő |
CLOCK="UTC"
CLOCK="local"
|
3.
A lokál rendszer
Mik azok a lokálok?
A lokál nem más, mint olyan adatok gyűjteménye, melyek segítségével a legtöbb
program eldönti, milyen nyelven fusson, milyen ország beállításait használja. A
lokálok és a hozzá tartozó adatok a rendszerkönyvtár részei, a legtöbb gépen a
/usr/share/locale könyvtárban találhatók. A lokálok neve többnyire
ab_CD alakú, ahol ab a kétjegyű nyelvi kód (esetenként három,
leírásukat az ISO-639 szabványban találhatod), a CD pedig a kétjegyű
országkód (ezeket pedig az ISO-3166 szabvány tartalmazza).
A lokálok környezeti változói
A lokálok adatait környezeti változók tartalmazzák. Ezeket a
/etc/env.d/02locale (rendszerbeállítások), vagy a
~/.bashrc (felhasználói beállítások) állományban szokás megadni.
Azt, hogy az egyes változók melyik lokálbeállítást módosítják, az alábbi
táblázatban találod. A tábla elején szereplőknek nagyobb a prioritásuk, vagyis
az alattuk lévők működését felülírják. Értékük valamely, az ab_CD
alakban lévő lokál neve.
| Változó neve |
Leírás |
| LC_ALL |
Az összes lokálbeállítást egyben adja meg. Ez az összes többi beállítást
felülírja.
|
| LC_COLLATE |
A szövegek ábécé-sorrendbe rendezési módját adja meg, például a rendezett
könyvtárlisták kimenetét módosítja.
|
| LC_CTYPE |
A rendszer karakterkezelési módját adja meg. Ez határozza meg, hogy mely
karakterek tekintendők az ábécé részének, melyek számoknak, stb. Egyes
esetekben a használható karakterkészletet is eldönti.
|
| LC_MESSAGES |
Azon programok esetében, amelyek üzenetalapú honosítást használnak,
megadja, hogy milyen lokált használjanak az üzenetek megjelenítésére.
(Ilyen a legtöbb Gnu program. A következő fejezetekben bővebben olvashatsz
arról, melyek ezek a programok, illetve arról, hogyan lehet a többit a
honosított üzenetek használatára bírni.)
|
| LC_MONETARY |
Megadja, milyen pénznemet kell használni, s milyen formában kell azt kiírni. |
| LC_NUMERIC |
A számok formátumát adja meg (kivéve a pénznemét), mint például az ezresek
és a decimális értékek elválasztó-karakterét.
|
| LC_TIME |
A dátum és az idő formátumát adja meg. |
| LC_PAPER |
Az alapértelmezett papírméretet adja meg. |
| LANG |
Az összes lokálbeállítást egyben adja meg. Ezt azonban az egyes LC_*
változók felülírhatják, akár egyszerre az LC_ALL megadásával.
|
Megjegyzés:
Bár a legtöbb program jól működik, ha csak az LC_ALL-t használod, némelyik fura
eredményt ad, ha az LC_ALL-nak értéket adtál, a LANG-nak azonban nem. Ha
biztosra akarsz menni, mindkettőt állítsd be!
|
A legtöbb felhasználó egyénileg csak a LANG változót állítja be, esetleg az
LC_CTYPE-ot. Ehhez a shelljük indítóállományához a következő parancssoros
utasítást adják:
Kódlista 3.1: Felhasználói lokál beállítása a ~/.bashrc állományban |
export LANG="hu_HU@euro"
|
Megjegyzés:
A lokál végéhez fűzött @euro-val használhatod az Euro pénzjelét (€).
|
Természetesen a rendszerlokált is meg lehet adni, mely minden felhasználóra és
programra érvényes lesz:
Kódlista 3.2: Alapértelmezett rendszerlokál beállítása a /etc/env.d/02locale állományban |
LC_ALL="hu_HU@euro"
LANG="hu_HU@euro"
|
Bevett szokás csak felhasználói lokálokat megadni, ilyenkor nem adnak meg
alapértelmezett rendszerlokált. Ez ilyenkor a speciális "C" értéket
veszi fel, amely történelmi okokból az angol lokállal egyezik meg.
Ahhoz, hogy az üzenetalapú honosítást használó programok ki is használják ezt,
valószínűleg az nls (Native language support) USE flaggel kell
lefordítanod őket. Az nls-t ismerő programok általában a gettext
függvénykönyvtárat is igénylik, ezzel olvassák ki és használják a honosított
üzeneteket. Természetesen a Portage automatikusan telepíti a gettextet, ha
szükséges.
Miután beállítottad a megfelelő lokált, frissíteni kell a környezeti
változókat, hogy a rendszer észlelje, változás történt:
Kódlista 3.3: Rendszerkörnyezet frissítése |
# env-update && source /etc/profile
$ source ~/.bashrc
|
Ezután a Ctrl-Alt-Backspace megnyomásával ki kell lépned az X
szerverből, kijelentkezni, majd normál felhasználóként belépni.
Most már ellenőrizheted, hogy sikerült-e a változtatás:
Kódlista 3.4: Környezeti változások ellenőrzése |
$ env | grep -i LC_
|
Létezik még egy lokalizációs változó, a LINGUAS. Ez a gettextet használó
programok esetén a telepítendő honosított állományokat határozza meg, illetve
némely speciális programcsomag esetén magát a használandó lokált is. Ilyen
például a kde-base/kde-i18n és az app-office/openoffice. A
változó értéke szóközzel elválasztott nyelvkódok listája, s a
/etc/make.conf állományban érdemes megadni:
Kódlista 3.5: A LINGUAS beállítása a make.conf állományban |
# nano -w /etc/make.conf
LINGUAS="hu en de"
|
Lokálok előállítása
Ha olyan lokált akarsz használni, amely alapesetben nem elérhető,
a localedef parancsot használhatod az előállítására. Például:
Kódlista 3.6: Lokál létrehozása a localedef segítségével |
# localedef -c -i hu_HU -f ISO-8859-15 hu_HU.ISO-8859-15
|
Miután elkészült a lokál, megadhatod a LANG változó új értékének.
Kódlista 3.7: A LANG változó megadása |
# export LANG="hu_HU.ISO-8859-15"
|
A változtatás után ne feledd el frissíteni a rendszerkörnyezetet:
Kódlista 3.8: Rendszerkörnyezet frissítése |
# env-update && source /etc/profile
|
Ezután a Ctrl-Alt-Backspace megnyomásával ki kell lépned az X
szerverből, kijelentkezni, majd normál felhasználóként belépni.
Lokalizáció generálása a glibccel
Valószínűleg csak egy-két lokált szeretnél használni a rendszereden. Ezeket a
/etc/locale.gen-ben sorolhatod fel.
Kódlista 3.9: Lokálok hozzáadása a /etc/locale.gen állományhoz |
en_GB ISO-8859-1
en_GB.UTF-8 UTF-8
hu_HU ISO-8859-2
hu_HU@euro ISO-8859-15
|
A következő lépés, hogy futtatod a locale-gen parancsot. Az szépen
legenerálja az összes szükséges beállítást a /etc/locale.gen fájl
alapján.
Megjegyzés:
A locale-gen csak a glibc-2.3.6-r4-től érhető el. Ha neked
régebbi glibc verziód van, akkor kérlek most frissítsd.
|
Ha le akarod ellenőrizni az elérhető lokálok listáját, futtasd a
locale -a parancsot.
4.
Billentyűzet-kiosztás konzolon
A konzol által használt billentyűzet-kiosztás a
/etc/conf.d/keymaps file-ban, a KEYMAP változóval adható
meg, értékét a /usr/share/keymaps/{arch}/ könyvtárban
nézheted meg. Az i386 alkönyvtár a főbb kiosztások szerint további
alkönyvtárakra oszlik (qwerty/, azerty/, stb.). Egyes
nyelvekből többfélét is választhatsz, ezért nem árt kikísérletezni, melyik
felel meg legjobban az igényeidnek.
Kódlista 4.1: Konzol billentyűzet-kiosztásának beállítása |
KEYMAP="us"
KEYMAP="hu"
KEYMAP="hu101"
|
5.
Billentyűzet-kiosztás az X szerver alatt
Az X szerver által használt kiosztást a /etc/X11/xorg.conf
állományban kell megadni, az XkbLayout paraméterrel.
Kódlista 5.1: Az X billentyűzet-kiosztásának beállítása |
Section "InputDevice"
Identifier "Keyboard1"
...
Option "XkbLayout" "hu"
#Option "XkbModel" "pc105"
#Option "XkbVariant" "nodeadkeys"
...
|
Ha nemzetközi kiosztású billentyűzeted van, érdemes az XkbModel
paraméternek a pc102 vagy pc105 értéket megadni, mert így a
billentyűzeted speciális gombjait is kezelni tudod.
A deadkeys paraméter hatására egyes billentyűk leütése után nem írja ki azonnal
a megfelelő betűket, hanem egy következővel kombinálva más betűt jelenít meg,
mint ami a billentyűre van rajzolva, például é,è,á,à, stb. Az XkbVariant
paramétert nodeadkeys értékre állítva lehetővé válik az ilyen speciális
karakterek bevitele az X terminálokon is.
Ha egynél több billentyűzet-kiosztás (például angol és magyar) között kell
váltogatnod, csak pár sort kell még hozzáírnod az xorg.conf
állományhoz, mellyel a kívánt kiosztásokat és a hozzájuk rendelt
gyorsbillentyűket adhatod meg.
Kódlista 5.2: Két billentyűzet-kiosztás közötti váltogatás |
Section "InputDevice"
Identifier "Keyboard1"
...
Option "XkbLayout" "us,hu"
Option "XkbOptions" "grp:alt_shift_toggle,grp_led:scroll"
|
Az XkbOptions beállításával a kiosztások között az Alt-Shift
lenyomásával váltogathatsz. Ezzel együtt a Scroll Lock lámpa be- és kikapcsol,
a grp_led:scroll paraméternek köszönhetően. Ez egy elég hasznos (és
látható) visszajelzést ad arról, éppen melyik kiosztást is használod.
6.
KDE
A KDE-hez a kde-base/kde-i18n csomagot kell telepítened. Ha korábban
megadtad, használja az előzőekben leírt LINGUAS
változót.
7.
Euro jel a konzolon
Ahhoz, hogy a konzolod meg tudja jeleníteni az Euro jelét, a
/etc/conf.d/consolefont állományban lévő CONSOLEFONT
változónak meg kell adnod a /usr/share/consolefonts/ könyvtárban
található valamelyik állomány nevét (a .psfu.gz kiterjesztés nélkül).
Például a lat9w-16 készlet tartalmazza az Euro jelet.
Kódlista 7.1: Konzol karakterkészletének beállítása |
CONSOLEFONT="lat9w-16"
|
Érdemes ellenőrizned, hogy a CONSOLEFONT benne van-e a boot futtatási
szintben:
Kódlista 7.2: Megfelelő futási szint ellenőrzése |
# rc-update -v show | grep -i consolefont
|
Ha semmilyen szintet nem ír ki a CONSOLEFONT-nak, add hozzá:
Kódlista 7.3: A consolefont hozzáadása a boot futási szinthez |
# rc-update add consolefont boot
|
8.
Euro jel X szerver alatt
A legtöbb alkalmazás esetén...
Az Euro jel használata X alatt valamivel nehezebb. Először is úgy kell
megváltoztatnod a fixed és a variable beállításokat a
/usr/share/fonts/misc/fonts.alias állományban, hogy
iso8859-1 helyett iso8859-15-re végződjenek.
Kódlista 8.1: Alapértelmezett X karakterkészlet beállítása |
fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15
variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15
|
Egyes alkalmazások saját karakterkészletet használnak, ezért külön-külön kell
megadni nekik, hogy Euro jellel rendelkezőre váltsanak át. Ezt felhasználói
szinten az .Xdefaults állományban teheted meg. Érdemes ezt az
állományt a /etc/skel/ könyvtárba átmásolni, hogy az újonnan
létrehozott felhasználóknak ne kelljen megint megadniuk. Általánosságban azokra
az alkalmazásokra lehet megadni, melyeknek a
/usr/share/X11/app-defaults/ könyvtárban léteznek ún. resource
állományai (mint pl. az xterm). Ezekben többnyire egy létező sort kell
módosítani, nem újat hozzáírni. Például az xterm karakterkészletének
megváltoztatása:
Kódlista 8.2: xterm karakterkészletének beállítása |
$ echo 'XTerm*font: fixed' >> .Xresources
$ xrdb -merge .Xresources
|
Euro jel (X)Emacs alatt
Ahhoz, hogy (X)Emacs-ben is használni tudd az Euro jelét, add a következő sort
a .Xdefaults állományhoz:
Kódlista 8.3: Emacs karakterkészletének beállítása |
Emacs.default.attributeFont: -*-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-15
|
Az XEmacs (nem a "sima" Emacs) esetén kicsivel többet kell csinálnod. A
/home/user/.xemacs/init.el állományhoz add hozzá a következőt:
Kódlista 8.4: XEmacs karakterkészletének beállítása |
(define-key global-map '(EuroSign) '[€])
|
Megjegyzés:
A [] között lévő jel az Euro jele.
|
OpenOffice.Org
A jelenlegi stabil app-office/openoffice és
app-office/openoffice-bin ebuildek a LINGUAS
változót használják annak eldöntésére, hogy milyen nyelvű kezelőfelületet
telepítsenek. Ha érdekel, hogy a felület fordítása, az elválasztás,
helyesírás-ellenőrzés és egyéb honosítási folyamatok hogyan haladnak egy adott
nyelven, nézd meg az OpenOffice.Org honosítási
weboldalt!
|