Romanian-HOWTO: Diferență între versiuni

De la Wiki.lug.ro
Salt la: navigare, căutare
(Tastatură: - menționat kbd pentru consolă)
(Codificare: - adăugat informații despre $LANG și $LANGUAGE)
Linia 31: Linia 31:
 
între altele și Unixul și limbajele de programare C și C++. Ca atare, suportul pentru
 
între altele și Unixul și limbajele de programare C și C++. Ca atare, suportul pentru
 
UTF-8 în Linux este excelent. Majoritatea distribuțiilor Linux sunt setate implicit pentru UTF-8.
 
UTF-8 în Linux este excelent. Majoritatea distribuțiilor Linux sunt setate implicit pentru UTF-8.
 +
În general acest lucru se poate verifica cu comanda ''locale'':
 +
 +
$ locale
 +
LANG=ro_RO.UTF-8
 +
LC_CTYPE="ro_RO.UTF-8"
 +
LC_NUMERIC="ro_RO.UTF-8"
 +
LC_TIME="ro_RO.UTF-8"
 +
LC_COLLATE="ro_RO.UTF-8"
 +
LC_MONETARY="ro_RO.UTF-8"
 +
LC_MESSAGES="ro_RO.UTF-8"
 +
LC_PAPER="ro_RO.UTF-8"
 +
LC_NAME="ro_RO.UTF-8"
 +
LC_ADDRESS="ro_RO.UTF-8"
 +
LC_TELEPHONE="ro_RO.UTF-8"
 +
LC_MEASUREMENT="ro_RO.UTF-8"
 +
LC_IDENTIFICATION="ro_RO.UTF-8"
 +
LC_ALL=
 +
 +
Setarea variabilei de mediu '''$LANG''' la '''ro_RO.UTF-8''' va avea ca efect și activarea traducerilor în română (acolo unde există). În anumite cazuri va fi necesar să instalați pachete adiționale de limbă.
 +
 +
Dacă nu doriți ca programele să afișeze mesaje în română puteți configura variabila de mediu $LANGUAGE, de exemplu în ~/.bashrc:
 +
 +
export LANGUAGE=english
 +
 +
Configurații mai complexe se pot obține prin modificarea individuală a variabilelor $LC_*
  
 
==Fonturi==
 
==Fonturi==

Versiunea de la data 1 august 2009 12:04

Să ne facem Linuxul să vorbească și să scrie corect românește.

Introducere

Localizarea sistemului pentru limba română ridică mai multe probleme:

  • codificarea și afișarea corectă a tuturor literelor din alfabetul limbii române precum și a semnelor tipografice în uz
  • formatarea corectă a datelor, numerelor, etc
  • traducerea aplicațiilor
  • dicționare, corectoare ortografice, despărțire în silabe, thesaurus, etc


Codificare

În ceea ce privește codificarea setului de caractere folosit există mai multe standarde, care bineînțeles nu sunt direct compatibile:

  • coduri de pagină DOS/Windows - metoda IBM/Microsoft, nu asigură interoperabilitate cu alte sisteme. Extensie a setului ASCII. Nu mai este folosit (?).
  • Latin2 (ISO 8859-2) - cel mai vechi standard internațional care suportă aproximativ limba română. Este o extensie a setului ASCII la 8 biți, care include variante greșite ale literelor ș și ț în setul extins. Nerecomandat.
  • Latin10 (ISO 8859-16) - tot o extensie a ASCII, cu caracterele corecte. Nerecomandat, întrucât nu permite interoperabilitatea decât cu sisteme care folosesc această codificare.
  • Unicode (ex. UTF-8) - o serie de standarde care ar trebui să acopere toate sistemele de scriere ale pământului (semne grafice, metode de codificare, reguli de sortare și afișare, etc). Un standard dezvoltat în paralel este ISO/IEC 10646 care asignează valori numerice pentru semnele grafice (simplificat: litere) din repertoriul Unicode.

Standardul preferat este Unicode, în particular folosind codificarea UTF-8. UTF-8 este compact pentru alfabetele europene, necesitând un octet pentru caracterele ASCII standard și cel mult doi octeți pentru diacritice. Indiferent de reprezentarea internă a caracterelor într-o aplicație, dacă aceasta permite salvarea de fișiere în format UTF-8, este posibilă o bună interoperabilitate cu alte aplicații, indiferent de sistemul de operare. Problema codificării setului de caractere folosit pentru limba română este tratată exhaustiv aici

UTF-8 a fost dezvoltat original la Bell Labs, de aceeași echipă care a dezvoltat între altele și Unixul și limbajele de programare C și C++. Ca atare, suportul pentru UTF-8 în Linux este excelent. Majoritatea distribuțiilor Linux sunt setate implicit pentru UTF-8. În general acest lucru se poate verifica cu comanda locale:

$ locale
LANG=ro_RO.UTF-8
LC_CTYPE="ro_RO.UTF-8"
LC_NUMERIC="ro_RO.UTF-8"
LC_TIME="ro_RO.UTF-8"
LC_COLLATE="ro_RO.UTF-8"
LC_MONETARY="ro_RO.UTF-8"
LC_MESSAGES="ro_RO.UTF-8"
LC_PAPER="ro_RO.UTF-8"
LC_NAME="ro_RO.UTF-8"
LC_ADDRESS="ro_RO.UTF-8"
LC_TELEPHONE="ro_RO.UTF-8"
LC_MEASUREMENT="ro_RO.UTF-8"
LC_IDENTIFICATION="ro_RO.UTF-8"
LC_ALL=

Setarea variabilei de mediu $LANG la ro_RO.UTF-8 va avea ca efect și activarea traducerilor în română (acolo unde există). În anumite cazuri va fi necesar să instalați pachete adiționale de limbă.

Dacă nu doriți ca programele să afișeze mesaje în română puteți configura variabila de mediu $LANGUAGE, de exemplu în ~/.bashrc:

export LANGUAGE=english

Configurații mai complexe se pot obține prin modificarea individuală a variabilelor $LC_*

Fonturi

Majoritatea fonturilor care vin implicit cu X suportă toate caracterele limbii române și acoperă o gamă largă de formate precum courier, helvetica, times. Acestea sunt din păcate fonturi bitmap și nu se scalează bine în programele de editare grafică. Totuși, pentru operații de editare text, programare, etc., acestea sunt fonturile de bază.

Există o serie de fonturi true type fonts (TTF) de bună calitate sub Linux cu suport decent pentru limba română. Aceste fonturi vor funcționa perfect pentru editări grafice. Dintre acestea amintim în primul rând familiile de fonturi DejaVu și Liberation (acestea din urmă au aceiași metrică cu fonturile Microsoft Times New Roman, Arial și Curier New).

O listă de fonturi cu suport românesc, tipul lor, și de unde provin:

Helvetica: font bitmapped, http://xorg.freedesktop.org
Courier: font bitmapped, http://xorg.freedesktop.org
New Century Schoolbook: font bitmapped, http://xorg.freedesktop.org
Times: font bitmapped, http://xorg.freedesktop.org
Utopia: font bitmapped, http://xorg.freedesktop.org
Luxi (Bigelow & Holmes): font TTF, http://xorg.freedesktop.org
DejaVu: font TTF, http://dejavu.sourceforge.net/
FreeMono/Sans/Serif: font TTF, http://savannah.nongnu.org/projects/freefont/
Gentium: font TTF,  http://scripts.sil.org/gentium
Liberation: font TTF, https://fedorahosted.org/liberation-fonts/

Tastatură

Există o bucată de hardware comercializată sub numele de tastatură românească, asta dacă aveți norocul să o găsiți în magazine, însă în general aranjamentul de tastatură preferat în România este cel numit "Programmer's keyboard" (vezi Tastatură românească pentru X).

Acest aranjament implică maparea caracterelor diacritice românești cu ajutorul tastei Alt din partea dreaptă a barei de spațiu (AltGr) astfel:

AltGr + A = ă
AltGr + Shift + A = Ă
AltGr + Q = â
AltGr + Shift + Q = Â
AltGr + S = ș
AltGr + Shift + S = Ș
AltGr + t = ț
AltGr + Shift + T = Ț
AltGr + I = î
AltGr + Shift + I = Î
AltGr + [ = „ (99 jos)
AltGr + ] = ” (99 sus)
AltGr + < = «
AltGr + > = »
AltGr + c = © (copyright)
AltGr + e = € (euro)

Majoritatea distribuțiilor Linux setează acum corect tastatura pentru limba română, dar puteți oricând un alt aranjament din meniurile KDE sau Gnome. Modificarea se poate face și din orice emulator de terminal cu comanda

$ setxkbmap ro comma

(Notă: „comma” nu este obligatoriu, dar garantează alegerea aranjamentului corect în cazul în care versiunea de xkeyboard-config este mai mică de 1.3)

Acest aranjament se poate folosi și în consolă, de exemplu prin intermediul pachetului kbd.

Ortografie și gramatică

Dicționar DEX

Se numește dexonline și poate fi consultat direct din browser la [1]. Este un dicționar de foarte bună calitate care înglobează o serie de dicționare publicate în anii trecuți în România. Dexonline își publică baza de date SQL sub GPL v2.

De asemenea, dexonline oferă și acces pentru protocolul DICT descris în rfc2229. Există o serie de programe client care pot accesa acest dicționar, precum gnome-dictionary (vine instalat implicit cu GNOME). Pentru a accesa dicționarul din gnome-dictionary, programul trebuie setat cu dexonline.ro ca server, iar portul de comunicație este 2628.


Dicționare corectare ortografică

Motorul principal de spelling sub Linux (ca și sub *BSD) este aspell. Este distribuit de toate distribuțiile Linux, nu toate distribuie însă ultima versiune a dicționarului românesc postată la [2].

Un alt motor de spelling folosit sub Linux este hunspell. Este folosit în principal de produsele Mozilla și OpenOffice.org. Dicționare relativ curente sunt distribuite pe siturile acestor proiecte, nu și în distribuțiile Linux.

Puteți întotdeauna să luați ultimele versiuni de dicționare direct de pe pagina developerului la [3]. O stare a distribuirii diferitelor dicționare sub diferite distribuții Linux și *BSD se găsește la [4].

Dicționar despărțire în silabe

Există și așa ceva, este distribuit în mod curent în OpenOffice.org și Scribus.


Accesibilitate

Text-to-speech: