Ce nu traducem?

Acesta este un articol subordonat Ghidului traducătorului de software.

Pentru a putea face traduceri valide ale programelor, un traducător trebuie să înțeleagă câteva concepte elementare de programare. Altminteri există pericolul unor traduceri nevalide ce pot influența negativ rularea unui program sau chiar terminarea sa prematură. Vom încerca o minimă îndrumare prin exemple cât mai simple.

Cuprins

  1. Texte ce conțin acceleratori
  2. Marcaje HTML sau XML
  3. Parametri în linia de comandă
  4. Nume speciale de constante, macro-comenzi etc.
  5. Variabile din interiorul textelor
  6. Constante GTK
  7. Chei de configurare GConf
  8. Șiruri cu context

Texte ce conțin acceleratori

Acceleratorii (scurtăturile, tastele rapide) sunt marcaje speciale ce apar în denumirea unor texte din meniuri sau din dialoguri pentru a desemna taste ce permit saltul rapid și necondiționat la respectiva opțiune din meniu sau dialog. Exemple:

_File
New &Tab
~Downloads

_, & și ~ sunt în cazurile de mai sus marcaje pentru taste rapide și preced în fiecare caz litera corespunzătoare tastei respective. Pe cât posibil, încercați să păstrați aceiași acceleratori ca și în textul original. Mai multe pe această temă în secțiunea dedicată din ghidul de traducere.

Marcaje HTML sau XML

Marcajele HTML sau etichetele XML nu se traduc. Exemple:

<strong> Hello </strong>       # Original
<puternic> Salut </puternic>   # Greșit
<strong> Salut </strong>       # Corect

Așijderea pentru valorile atribuite unor elemente HTML:

See <link linkend="guide"> this guide </link>          # Original
Consultați <link linkend="ghid"> acest ghid </link>    # Greșit
Consultați <link linkend="guide"> acest ghid </link>   # Corect

Parametri în linia de comandă

Când sunt apelate din linia de comandă (terminal, Command Prompt etc.), unele programe oferă opțiuni ce pot fi adăugate după numele programului pentru a-i schimba comportamentul. Asemenea parametri pot apărea la traducere precum urmează:

msginit "The command line options are:\n"
"    --quick         speeds up the processing\n"
"    --slow          slows everything down."

Mai sus, \n este un caracter special care semnifică o linie nouă, iar --quick și --slow sunt parametri pentru linia de comandă ce nu se traduc.

Text original:

 %s [options] %s <name> <type> <port> [<txt ...>]
 %s [options] %s <host-name> <address>
 
   -h --help            Show this help
   -V --version         Show version
   -s --service         Publish service
   -a --address         Publish address
   -v --verbose         Enable verbose mode
   -d --domain=DOMAIN   Domain to publish service in
   -H --host=DOMAIN     Host where service resides
      --subtype=SUBTYPE An additional subtype to register this service with
   -f --no-fail         Don't fail if the daemon is not available

Traducere greșită:

 %s [options] %s <name> <type> <port> [<txt ...>]
 %s [options] %s <host-name> <address>
 
   -a --asistență       Afișare a acestui mesaj de ajutor
   -V --versiune        Afișare a versiunii
   -s --serviciu        Serviciul de publicat
   -A --adresă          Adresa de publicat
   -D --detaliat        Mesaje detaliate
   -d --domeniu=DOMENIU Domeniul pentru publicarea serviciului
   -g --gazdă=DOMENIU   Gazda serviciului
      --subtip=SUBTIP   Sub-tip adițional pentru înregistrarea serviciului
   -e --nu-eșua         Fără eșuare dacă serviciul nu este disponibil

Traducere recomandată:

 %s [opțiuni] %s <nume> <tip> <port> [<txt ...>]
 %s [opțiuni] %s <nume-gazdă> <adresă>
 
   -h --help           Afișare a acestui mesaj ajutor
   -V --version        Afișare a versiunii
   -s --service        Serviciul de publicat
   -a --address        Adresa de publicat
   -v --verbose        Mesaje detaliate
   -d --domain=DOMENIU Domeniul pentru publicarea serviciului
   -H --host=DOMENIU   Gazda serviciului
      --subtype=SUBTIP Sub-tip adițional pentru înregistrare serviciului
   -f --no-fail        Fără eșuare dacă serviciul nu este disponibil

Nume speciale de constante, macrocomenzi etc.

Mare atenție la asemenea componente ale șirurilor de tradus ce trebuie păstrate în forma originală, precum:

Exemple concrete din fiecare categorie:

Please update the PATH environment variable.
Increase the value of ms_to_wait for faster CPUs.
This is determined by the value of myFavoriteColor.

Trebuie avut grijă la traducerea cuvintelor scrise în întregime cu majuscule, deoarece pot împiedica programul să funcționeze corect, de exemplu:

#: installer/gnome-font-install.c:106 installer/gnome-font-install.c:109
   msgid "PATH"
   msgstr "CALE" (greșit)
   msgstr "PATH" (corect)

Pentru a verifica faptul că variabila trebuie sau nu tradusă, consultați codul sursă. În cazul în care sunteți nesigur, mai bine lăsați acel șir netradus.

De exemplu, apăsați s în Emacs/po-mode și se va deschide o fereastră cu linia din codul sursă (dacă e disponibil) unde apare mesajul. Aceeași opțiune există și în editorul PoEdit în cazul în care se traduce folosind structura de fișiere cu cod sursă.

Variabile din interiorul textelor

Nume de variabile

Numele variabilelor nu se traduc.

De exemplu, în limbajele de programare Perl sau PHP, $NUMBER este o variabilă care la momentul execuției programului va fi înlocuită cu o valoare sau alta.

"Found ethernet device number $number."              # Original
"S-a găsit dispozitivul ethernet numărul $număr."    # Greșit
"S-a găsit dispozitivul ethernet numărul $number."   # Corect

Un alt exemplu, %(name)s este numele unei variabile + formatul de tipărire în Python. În acest caz s-ul de la sfârșit nu este o eroare clasică de adăugare a unui plural în engleză, ci indică faptul că variabila trebuie tipărită ca un șir, ca %s, doar că variabila are un nume, mai precis name. Poate fi întâlnită și sub forma %(name)d sau sub alte forme.

"Delete %(name)s ?"    # Original
"Ștergeți %(nume)le?"  # Greșit
"Ștergeți %(nume)s?"   # Greșit
"Ștergeți %(name)s?"   # Corect

Cazuri în care puteți schimba ordinea variabilelor din cadrul unui șir

Un caz mai rar întâlnit de text ce include variabile:

"%2$s contains %1$d monkeys"

În acest caz puteți să faceți și o traducere de genul:

"%1$d maimuțe sunt în %2$s"

Cazul de mai sus exemplifică faptul că șirurile de forma %număr$ pot fi schimbate între ele. Atenție! Dacă nu conțin după %s un număr urmat imediat de $, nu puteți să le schimbați ordinea.

În Python, și probabil și în alte limbaje, numărul poate fi înlocuit cu un nume:

"%(name)s has a score of %(score)03d."       Original
"%s has a score of %03d."                    Variantă fără nume
"%(name)s are scorul %(score)03d."           Corect
"%(score)03d este scorul atins de %(name)s." Corect

Utilizatorul va vedea ceva de genul: George are scorul 200. Alternativa e pentru o exprimare de genul: 200 este scorul atins de George.

Chei de configurare GConf

De multe ori apar traduceri ce conțin numele cheii gconf sau valori acceptate de o cheie gconf.

Text original ce conține referințe la un nume de cheie gconf:

The port which the server will listen to if the 'use_alternative_port' key is set to true.
Valid values are in the range from 5000 to 50000.

Traducere recomandată:

Portul pe care să asculte serverul în cazul în care cheia „use_alternative_port” este activată.
Valorile valide sunt între 5000 și 50000.

Text original cu valori acceptate de o cheie gconf:

This key controls the behavior of the status icon. There are three options:
  "always" - The icon will be always there;
  "client" - You will see the icon only when there is someone connected, this is the default;
  "never" - Never shows the icon.

Traducere recomandată:

Această cheie controlează comportamentul iconiței de stare. Există trei opțiuni:
  „always” - Iconița va fi în permanență afișată;
  „client” - Iconița va fi afișata doar când este cineva conectat, aceasta este valoarea implicită;
  „never” - Iconița nu va fi niciodată afișată.

Șiruri cu context

Uneori mesajele ce trebuie traduse conțin informații privind contextul în care trebuie făcută traducerea. Contextul se află la începutul șirului de text și se termină cu caracterul |. Contextul nu trebuie tradus. Exemple:

"direction|Up"    Original
"direcție|Sus"    Greșit
"direction|Sus"   Greșit
"În sus"          Corect

Constante GTK

Se întamplă ca unele constante GTK să intre în fișierele de localizare. Aceste texte nu trebuie traduse și ar trebui raportat cazul la echipa de dezvoltare a programului respectiv. Exemple:

gtk-ok
gtk-cancel
toolbar-icon