I segnaposto nelle traduzioni e come gestirli

Updated April 12, 2017
Place holders save the day - Smartcat blog
Smartcat covers all your language needs with AI translation, AI content generation and AI human workflows.

Ricordo la prima volta che sono stato coinvolto in un progetto di localizzazione software. Mi era stato assegnato il compito di tradurre l'interfaccia utente di un sistema informatico industriale utilizzando un complicato strumento di localizzazione software. Non avevo problemi con gli aspetti tecnici, ma tradurre un'interfaccia utente era una novità per me e il compito si rivelò una vera sfida.

In realtà, lo stile dei testi non mi era così estraneo. Essendo abbastanza esperto di informatica, conoscevo bene il linguaggio "informatico" tipicamente utilizzato nei software (anche se, sotto l'influenza dei chatbot e delle interfacce vocali, la mia opinione è cambiata radicalmente). La parte davvero sconcertante erano questi strani simboli: {0}, %d, %setup% e $stop$. Non avevo idea di cosa significassero e se le parole racchiuse tra i simboli dovessero essere tradotte o meno, quindi in poco tempo ho commesso molti errori. I caratteri di nuova riga, rappresentati come \n, sono stati il colpo di grazia alla mia autostima. Non li avevo mai visti prima e la cosa peggiore era che spesso si fondevano con altre parole. Come se la situazione non fosse già abbastanza ridicola, il testo era in tedesco, il che rendeva davvero difficile capire se \nein dovesse essere "nein" o "\n" + "ein". Il project manager deve essersi pentito della sua decisione di assegnare quel compito a un incapace come me dopo essere stato bombardato di domande. Potrebbe anche aver pubblicato un tweet di protesta.

Scoprire che i segnaposto nei file tradotti per un progetto urgente sono magicamente scomparsi. #PMproblems #StartPanicking

— Lau Velázquez (@geekylau) 9 ottobre 2013

I traduttori che traducono il segnaposto $DepartureTime$ con $HeureDépart$ sono semplicemente coerenti.

— Olivier Oswald (@ooswald) 27 luglio 2011

I traduttori che traducono il segnaposto $Departure Time$ con $HeureDépart$ sono semplicemente coerenti.

Quel momento in cui un traduttore decide di cambiare il tipo di virgolette e metà delle variabili nel gioco scompaiono.

— Vojtěch Schubert (@falagor)12 gennaio 2016

Anni dopo, i ricordi della mia prima esperienza mi fanno sorridere. Inutile dire che dedico sempre del tempo ai traduttori per spiegare loro come funzionano le variabili. E un modo efficace per evitare errori e risparmiare tempo per te e il tuo team è quello di utilizzare le espressioni regolari. Queste possono essere utilizzate per trasformare le variabili in oggetti non modificabili e facilmente tracciabili. In diversi software, questi oggetti sono indicati con nomi diversi. Noi di Smartcat ci piace chiamarli segnaposto. E se vi state chiedendo cosa siano le espressioni regolari, non hanno nulla a che vedere con le chiacchiere. Sono modelli utilizzati per abbinare e manipolare combinazioni di caratteri. Per imparare le espressioni regolari non sono necessarie competenze di programmazione. Cliccate su questa presentazione intuitiva realizzata da Thomas Vackier, esperto di localizzazione presso Yamagata Europe, per capire cosa sono le regex (abbreviazione di "espressione regolare").

I simboli misteriosi

Per fare un esempio veloce, prendiamo alcune righe da una canzone intitolata I'm Gonna Be (500 miles) dei The Proclaimers:

Ma camminerei per 500 miglia E ne camminerei altre 500 Solo per essere l'uomo che ha camminato per mille miglia Per cadere ai tuoi piedi

Supponiamo di voler cambiare il testo ogni volta che l'ascoltatore si sposta in un luogo diverso. Per farlo avremo bisogno di variabili:

Ma camminerei per %$1 miglia E ne camminerei ancora %$2 Solo per essere l'uomo che ha camminato per {spelled-number} miglia Per cadere ai tuoi piedi nella tua {location}

Quali pericoli si nascondono qui? I caratteri importanti possono essere cancellati e/o utilizzati in modo errato. Le cifre in %$1s devono seguire uno schema sequenziale e "spelled-number" e "location" non devono essere tradotti. Purtroppo, non tutti lo sanno.

"Ma perché non assumere semplicemente un traduttore esperto invece di dover affrontare tutto questo caos da principianti?", qualcuno potrebbe chiedere. Qualunque siano le ragioni reali, vale la pena ricordare che nessuno nasce esperto di localizzazione, ma chiunque abbia faticato nei primi passi e abbia acquisito un'esperienza inestimabile nel processo può diventarlo.

A prova di principiante, o come salvare il mondo

Cosa possiamo fare per evitare che si verifichino disastri e risparmiare tempo di editing? Descriviamo le variabili utilizzando espressioni regolari:

  • Per le variabili con numeri consecutivi: %\$\ds

  • Per le variabili racchiuse tra parentesi graffe: \{.+?\}

Personalmente trovo questo cheat sheet molto utile per comporre espressioni regolari e regex101.com è un ottimo strumento online che consiglio per i test. Ora carichiamo il file contenente le variabili su Smartcat. Ecco cosa vedremo:

Le variabili vengono visualizzate come unità viola che ovviamente non sono traducibili e possono essere trasferite in modo sicuro dal testo di origine alla lingua di destinazione tramite una scorciatoia da tastiera. Questi elementi rimarranno intatti nel documento tradotto dopo essere stati scaricati. L'uso dei segnaposto non è limitato ai progetti di localizzazione. Immaginate di avere una scheda tecnica di una grande pompa ad aria con migliaia di articoli. A ogni articolo viene assegnato un codice ordine e tutti sembrano molto simili, quindi è facile confonderli.

Un solo errore qui può avere conseguenze molto spiacevoli. Potrebbero verificarsi errori durante la spedizione degli ordini dal magazzino e anche l'installazione corretta potrebbe risultare problematica. Il cliente subirà perdite o, peggio ancora, dati errati potrebbero causare problemi tecnici che, a loro volta, potrebbero provocare una catastrofe ambientale. I segnaposto non devono essere tradotti, ma semplicemente trasferiti in modo sicuro nella lingua di destinazione, quindi perché perdere tempo con essi? Troviamo tutti i codici d'ordine utilizzando questa elegante espressione regolare [A-Z]{2}\d{4}\-\d{4} e trasformiamoli magicamente in elementi non modificabili:

Che modo fantastico per rendere il nostro processo di traduzione (e anche la parte di editing) più facile e veloce!

Al momento, i segnaposto sono supportati di default solo per i formati di file di localizzazione più comuni. Se desiderate utilizzarli in altri tipi di documenti, fatecelo sapere.

Ho chiesto ai miei colleghi di raccontarmi la loro esperienza con i segnaposto.

Fyodor Bezrukov, Direttore esecutivo presso Logrus IT (ufficio di Kiev)

“L'uso di segnaposto e tag nei formati dei documenti è uno scenario di lavoro comune per noi. Sono fondamentali quando i clienti inviano file Excel contenenti markup HTML o XML. Grazie al supporto dei segnaposto e delle espressioni regolari in Smartcat, è diventato molto più facile e comodo gestire tali risorse.”

Marina Ilyinykh, Responsabile della localizzazione presso Bookmate

“Utilizziamo spesso variabili e formattazioni nelle interfacce utente delle nostre app. Sostituendo tag e variabili con segnaposto, possiamo eseguire controlli automatici di coerenza e proteggere dati importanti, come prezzi, date di abbonamento e link.”

Yannis Evangelou, amministratore delegato di lexiQA, ha condiviso i suoi sentimenti contrastanti:

Yannis Evangelou, CEO di lexiQA

“C'è un problema comune tra i traduttori che traducono il testo all'interno di segnaposto, token e tag. Anche i caratteri di escape vengono spesso ignorati. La maggior parte di loro non è consapevole del fatto che si tratta di unità lessicali non traducibili. Neanche i project manager lo sanno. Tuttavia, questo tipo di negligenza può causare errori critici. Un traduttore mi ha raccontato di aver dovuto tradurre un testo che includeva formattazione HTML e di aver tradotto la riga <p style="border: 1px solid red;"></p> in <π στυλ="περίγραμμα: 1 πίξελ συμπαγές κόκκινο;"></π>. Ha sostenuto che forse lo sviluppatore che lo avrebbe utilizzato non parlava inglese. Il PM non ha corretto l'errore perché riteneva che il ragionamento del traduttore fosse... ragionevole!

A quel punto, Rolf Klischewski, esperto di localizzazione di videogiochi, ha aggiunto:

«I traduttori di videogiochi spesso devono affrontare situazioni come questa:

E, naturalmente, ci sono tutti i tipi di problemi ad esso connessi.

Il problema è che alcune destinazioni richiedono l'uso dell'articolo. Quindi, si dice "le Bahamas", ma "Barbados". Oppure, in tedesco, si dice "die Schweiz" per "Svizzera". In casi come questi, spesso rifiutiamo il progetto. Normalmente consiglierei ai clienti di cambiare il loro motore di traduzione perché non voglio consegnare un lavoro scadente. Gli sviluppatori di solito chiedono: "È davvero un problema così grave?" E, beh, no, perché il gioco funziona comunque. Quindi, come gestire questi problemi? Informare il cliente, spiegare il problema. Se non possono o non vogliono correggere il motore e hai bisogno di soldi, fai il lavoro, ma assicurati di non essere accreditato.

💌

Iscriviti alla nostra Newsletter

E-mail *