Gentoo Logo

Ghid Gentoo Linux pentru Localizare

Conţinut:

1.  Zona de Fus Orar

Pentru a păstra ora corect, /etc/localtime trebuie să conţină zona de fus orar corectă. Analizaţi conţinutul directorului /usr/share/zoneinfo/ şi alegeţi zona dvs. de fus orar sau cea a unui oraş mare apropiat. Vă rugăm să evitaţi zonele de fus din /usr/share/zoneinfo/Etc/GMT* deoarece numele acestora nu indică zonele presupuse. Spre exemplu, GMT-8 este, de fapt, GMT+8.

Cod 1.1: Setarea zonei de fus orar

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

Notă: Asiguraţi-vă că indicatorul de zonă de fus orar (în acest caz "EEST") este corect pentru localizarea dvs. geografică.

Notă: Puteţi seta valoarea variabilei TZ cu orice valoare de după /usr/share/zoneinfo în fişierul rc al aplicaţiei dvs. shell (.bash_profile pentru bash) pentru a avea o setare la nivel de utilizator de sistem. În acest caz TZ="Europe/Bucharest".

2.  Ceasul Fizic

În majoritatea instalărilor Gentoo Linux, ceasul fizic al sistemului dvs. este setat la UTC (sau GMT, Greenwich Mean Time) iar apoi zona dvs. de fus orar este luată în considerare pentru a determina ora locală efectivă. Dacă, din vreun motiv, doriţi ca ceasul fizic sistemului să nu fie exprimat relativ la UTC, va trebui să editaţi /etc/conf.d/clock şi să modificaţi valoarea variabilei CLOCK din UTC în local.

Cod 2.1: ceasul exprimat local vs. GMT

(recomandat:)
CLOCK="UTC"
(sau:)
CLOCK="local"

3.  Sistemul de localizări

Ce sunt localizările?

O Localizare este un set de informaţii utilizat de majoritatea programelor pentru a determina setările de ţară şi limbă. Localizările şi datele corespondente acestora fac parte din librăria sistem şi pot fi regăsite în /usr/share/locale pe majoritatea sistemelor. Un nume de localizare este, în general, de forma ab_CD, unde ab este codul de limbă format din două (sau trei) litere (cum este specificat în ISO-639) şi CD este codul de ţară format din două litere (cum este specificat în ISO-3166).

Variabilele de mediu pentru localizări

Setările de localizare sunt stocate în variabile de mediu. Acestea sunt, în mod normal, setate în /etc/env.d/02locale (pentru setările relative la sistem) şi în fişierul ~/.bashrc (pentru setările specifice utilizatorilor de sistem). Variabilele, ce controlează diferitele aspecte ale setărilor de localizare, sunt explicate în tabelul următor, cele cu cea mai mare precedenţă (spre ex. cele care le suprascriu pe cele ulterioare) sunt în partea superioară a tabelului. Toate variabilele iau ca valoare numele unei localizări în formatul ab_CD specificat anterior.

Numele variabilei Explicaţie
LC_ALL Defineşte toate localizările deodată. Aceasta este cea superioară setare pentru localizări, ce va suprascrie orice altă setare.
LC_COLLATE Defineşte ordinea alfabetică a şirurilor de caractere. Aceasta afectează, spre ex., afişarea listei de directoare sortată
LC_CTYPE Defineşte manipularea proprietăţilor caracterelor pentru sistem. Aceasta determină ce caractere sunt recunoscute ca făcând parte din alfabet, numerice şi aşa mai departe. Aceasta, de asemenea, determină setul de caractere utilizat, dacă este cazul.
LC_MESSAGES Localizările programelor pentru aplicaţiile ce utilizează localizări bazate pe o schemă de mesaje (majoritatea programelor Gnu, consultaţi capitolele următoare pentru mai multe informaţii despre cele care utilizează şi cum să le faceţi să funcţioneze pe cele care nu utilizează).
LC_MONETARY Defineşte unităţile şi formatul valorilor numerice ale tipului de monedă.
LC_NUMERIC Defineşte formatul valorilor numerice ce nu fac parte din monedă. Afectează formatul, cum ar fi cel al separatorului miilor şi separatorul pentru zecimale.
LC_TIME Defineşte formatul datelor şi orelor.
LC_PAPER Defineşte mărimea implicită a hărtiei de imprimantă.
LANG Defineşte toate localizările dintr-o dată. Aceasta setare poate fi suprascrisă de setările individuale LC_* definite anterior sau chiar de LC_ALL.

Notă: Chiar dacă cele mai multe programe funcţionează doar cu LC_ALL, unele dintre acestea au un comportament ciudat când LC_ALL este setat, dar LANG nu este. Dacă doriţi să fiţi siguri, setaţi-le pe amândouă.

Majoritatea utilizatorilor setează doar variabila LANG şi, poate, variabila LC_CTYPE la nivel de utilizator prin adăugarea definiţiilor în fişierele de pornire automate ale aplicaţiilor shell sau prin definirea variabilelor de mediu manual, din linie de comandă:

Cod 3.1: Setarea localizării în ~/.bashrc

export LANG="ro_RO@euro"

Notă: Adăugaţi @euro localizării dvs. pentru a putea utiliza simbolul monedei Euro (€)

Este, de asemenea, posibil să setaţi o localizare generală pentru tot sistemul pentru toţi utilizatorii şi programele:

Cod 3.2: Setarea localizării implicite în /etc/env.d/02locale

LC_ALL="ro_RO@euro"
LANG="ro_RO@euro"

O practică comună este să utilizaţi setările de localizare doar pentru utilizatori şi să lăsaţi localizarea sistemului nesetată. În acest caz, localizarea sistemului implicită are o valoarea specială "C", care indică localizarea în limba Engleză, din motive istorice.

Pentru ca localizarea bazată pe mesaje să funcţioneze în programele ce o suportă, probabil va trebui să aveţi aceste programe compilate cu indicatorul USE nls (Native language support - suport pentru limba nativă) activat. Majoritatea programelor ce utilizează nls au, de asemenea, nevoie ca biblioteca nls să extragă şi să utilizeze mesajele localizate. Bineînţeles, structura Portage o va instala automat în momentul necesitării acesteia.

Odată ce aţi setat localizarea corectă, asiguraţi-vă că vă actualizaţi variabilele dvs. de mediu pentru a vă asigura că sistemul va recunoaşte modificările:

Cod 3.3: Actualizarea mediului

(Pentru localizarea generică a sistemului:)
# env-update && source /etc/profile

(Pentru localizarea specifică utilizatorului:
$ source ~/.bashrc

După aceasta va trebui să opriţi execuţia server-ului dvs. X prin apăsarea Ctrl-Alt-Backspace, să efectuaţi log out, şi apoi să efectuaţi login ca utilizator.

Acum, verificaţi că modificările au avut efect:

Cod 3.4: Verificaţi modificările de mediu

$ env | grep -i LC_

Există, de asemenea, o variabilă de localizare denumită LINGUAS, ce afectează fişierele de localizare instalate în programele gettext, şi decide localizarea utilizată pentru anumite pachete, cum ar fi kde-base/kde-i18n şi app-office/openoffice. Variabila ia ca valoare o listă separată cu spaţiu de coduri de limbi, şi locul recomandat pentru setarea acesteia este /etc/make.conf:

Cod 3.5: Setarea LINGUAS în make.conf

# nano -w /etc/make.conf
(Adăugaţi variabila LINGUAS. Spre exemplu, pentru
Română, Finlandeză şi Engleză:)
LINGUAS="ro fi en"

Generarea Anumitor Localizări

Dacă utilizaţi o localizare ce nu este disponibilă implicit, ar trebui să utilizaţi localedef pentru a vă genera localizarea. Spre exemplu:

Cod 3.6: Generarea unei localizări utilizând localedef

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

După ce aţi generat localizarea, puteţi exporta variabila LANG, după cum urmează.

Cod 3.7: Exportarea variabilei LANG

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

Asiguraţi-vă că vă actualizaţi mediul după efectuarea schimbărilor:

Cod 3.8: Actualizarea mediului

# env-update && source /etc/profile

După aceasta va trebui să opriţi execuţia server-ului dvs. X prin apăsarea Ctrl-Alt-Backspace, să efectuaţi log out, şi apoi să efectuaţi login ca utilizator.

The userlocales USE flag

Veţi utiliza, probabil, doar una sau, poate, două localizări în sistemul dvs. Până acum, după compilarea glibc un set complet ce conţinea toate localizările era creat. Începând recent, puteţi activa indicatorul USE userlocales şi să specificaţi doar localizările necesare, în /etc/locales.build.

Cod 3.9: Activarea indicatorului USE userlocales special pentru glibc

echo "sys-libs/glibc userlocales" >> /etc/portage/package.use

Acum, specificaţi localizările pe care doriţi să le utilizaţi:

Cod 3.10: Adăugarea localizărilor în /etc/locales.build

en_US/ISO-8859-1
en_US.UTF-8/UTF-8
ro_RO/ISO-8859-1
ro_RO@euro/ISO-8859-15

Următorul pas este să recompilaţi glibc. Bineînţeles, puteţi amâna acest pas până la următoarea actualizare glibc este disponibilă.

4.  Dispunerea tastaturii pentru consolă

Dispunerea tastaturii utilizată de consolă este setată în /etc/conf.d/keymaps de către variabila KEYMAP. Valorile valide pot fi găsite în /usr/share/keymaps/{arch}/. i386 conţine subdiviziuni pentru dispunere (qwerty/, azerty/, etc.). Unele limbi au mai multe opţiuni, deci aţi putea experimenta pentru a decide care vi se potriveşte cel mai bine.

Cod 4.1: Setarea dispunerii tastelor pentru consolă

KEYMAP="ro_win"

5.  Dispunerea tastelor pentru aplicaţia server X

Dispunerea tastelor pentru a fi utilizată în aplicaţia server X este specificată în /etc/X11/xorg.conf prin intermediul opţiunii XkbLayout.

Cod 5.1: Setarea dispunerii tastaturii pentru X

 Section "InputDevice"
     Identifier  "Keyboard1"
     ...
     Option "XkbLayout"    "ro"
     #Option "XkbModel"     "pc105"    ## aceasta este pentru tastaturile internaţionale.
     #Option "XkbVariant"  "nodeadkeys" ## aceasta ar putea fi utilizată pentru xterm
     ...

Dacă aveţi o tastatură cu dispunere internaţională, ar trebui să setaţi opţiunea XkbModel la valoarea pc102 sau pc105, deoarece aceasta vă va permite să asociaţi taste suplimentare specifice tastaturii dvs.

Tastele inactive vă permit să apăsaţi taste ce nu vor fi arătate imediat, dar vor fi combinate cu altă literă pentru a produce caractere ca é,è,á,à,etc. Setarea XkbVariant la valoarea nodeadkeys vă permite să tastaţi aceste caractere în terminale X.

Dacă doriţi să comutaţi între mai mult de o dispunere de tastatură (spre exemplu Engleză şi Română), tot ce trebuie să faceţi este să adăugaţi câteva linii în xorg.conf ce specifică dispunerile preferate şi comanda de comutare.

Cod 5.2: Comutarea între două dispuneri de tastatură

 Section "InputDevice"
     Identifier  "Keyboard1"
     ...
     Option "XkbLayout"    "us,ro"
     Option "XkbOptions"   "grp:alt_shift_toggle,grp_led:scroll"

Aici, XkbOptions vă permite să comutaţi între dispunerile de taste doar prin apăsarea Alt-Shift. Aceasta va porni, de asemenea, şi ledul Scroll Lock sau îl va opri, datorită opţiunii grp_led:scroll. Acesta este un indicator vizual la îndemână pentru a determina ce dispunere utilizaţi la un moment dat.

6.  KDE

Pentru KDE trebuie să instalaţi pachetul kde-base/kde-i18n. Kde-i18n respectă variabila LINGUAS, descrisă anterior:

Cod 6.1: Instalarea mediului KDE localizat

# nano -w /etc/make.conf
(Adăugaţi variabila LINGUAS. Spre exemplu, pentru limba română:)
LINGUAS="ro"

(Acum, instalaţi kde-i18n)
# emerge kde-i18n

7.  Simbolul Euro pentru Consolă

Pentru a seta consola să afişeze simbolul Euro, va trebui să setaţi CONSOLEFONT în /etc/conf.d/consolefont cu valoarea numelui unui fişier ce se află în /usr/share/consolefonts/ (fără .psfu.gz). lat9w-16 conţine simbolul Euro.

Cod 7.1: Setarea fontului din consolă

CONSOLEFONT="lat9w-16"

Ar trebui să verificaţi că CONSOLEFONT este prezent în nivelul de iniţializare boot:

Cod 7.2: Verificaţi nivelul de execuţie corect

# rc-update show | grep -i consolefont

Dacă nici un nivel de execuţie este afişat pentru CONSOLEFONT, atunci adăugaţi-l în nivelul de execuţie corect:

Cod 7.3: Adăugarea consolefont la nivelul boot

# rc-update add consolefont boot

8.  Simbolul Euro în X

Majoritatea Aplicaţiilor

Activarea simbolului Euro ca funcţionalitate în X este puţin mai dificil. Primul pas este să modificaţi definiţiile fixed şi variable din /usr/X11R6/lib/X11/fonts/misc/fonts.alias pentru a se termina cu iso8859-15 în locul iso8859-1.

Cod 8.1: Setarea fonturilor implicite în X

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

Unele aplicaţii utilizează fontul propriu şi va trebui să le specificaţi separat să utilizeze un font cu simbolul Euro. Puteţi face acest lucru la nivelul specific utilizator în .Xdefaults (puteţi copia acest fişier în /etc/skel/ pentru a putea fi utilizat de utilizatorii noi) sau la nivel global pentru orice aplicaţie în /usr/X11R6/lib/X11/app-defaults/ (cum ar fi xterm). În aceste fişiere trebuie, în general, să modificaţi o linie deja existentă, în locul adăugării uneia noi. Pentru a modifica fontul nostru xterm, spre exemplu:

Cod 8.2: Setarea fonturilor în xterm

(în directorul dvs. home)
$ echo 'XTerm*font: fixed' >> .Xresources 
$ xrdb -merge .Xresources

Simbolul Euro în (X)Emacs

Pentru a utiliza simbolul Euro în (X)Emacs, adăugaţi următoarea linie în .Xdefaults:

Cod 8.3: setarea fontului pentru emacs

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

Pentru XEmacs (nu Emacs), trebuie să efectuaţi mai multe setări. În /home/user/.xemacs/init.el, adăugaţi:

Cod 8.4: Setarea fontului pentru xemacs

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

Notă: Simbolul între paranteze pătrate este simbolul Euro.

OpenOffice.org

Fişierele ebuild ale versiunilor curente stabile ale app-office/openoffice şi app-office/openoffice-bin suportă variabila LINGUAS pentru selectarea pachetele de localizare pentru mediul GUI, instalate. Pentru a vedea stadiul traducerilor mediului GUI, alinierea, verificarea sintaxei şi alte localizări pentru limba dvs., vă rugăm să vizitaţi site-ul oficial al localizărilor pentru OpenOffice.Org.



Imprimare

Actualizat la 25 Mai 2006

Versiunea originală a acestui document a fost actualizată ultima dată la 4 Octombrie 2007

Sumar: Acest ghid ar trebui să ajute utilizatorii să îşi localizeze distribuţia lor Gentoo Linux cu orice localizare europeană. Utilizează Germania ca studiu de caz, deoarece este traducerea unui document german. Include configuraţia necesară utilizării simbolului de monedă euro.

Alexander Holler
Autor

Steven Lucy
Translator/Editor

Benny Chuang
Editor

Lars Weiler
Editor

Tobias Scherbaum
Editor

Flammie Pirinen
Editor

Alin Dobre
Translator

Donate to support our development efforts.

Support OSL

Support OSL

Gentoo Centric Hosting: vr.org

VR Hosted

Tek Alchemy

Tek Alchemy

SevenL.net

SevenL.net

Global Netoptex Inc.

Global Netoptex Inc.

Bytemark

Bytemark

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