## Lavorazione di testi formattati

- Formattazione dei tag

- Tag e segmentazione della frase

- Operazioni sui tag

- Annidamento di un gruppo di tag

- Sovrapposizione di un gruppo di tag

- Convalida di un gruppo di tag

- Consigli per la gestione dei tag

- printf-placeholders

Le informazioni di formattazione che si trovano nel file di partenza dovrebbero, di solito, essere trasferite anche a quello di arrivo. OmegaT mostra le informazioni interne di formattazione, rese possibili dai formati supportati (attualmente DocBook, HTML, XHTML, Open Document, e OpenOffice.org), sotto forma di tag. Nella normalità, nelle operazioni di confronto tra testi diversi per l'analisi delle corrispondenze, i tag vengono ignorati. I tag che appaiono all'interno del segmento tradotto saranno presenti anche all'interno del documento tradotto.

### Formattazione dei tag

Rinomina dei tag: i tag sono composti da uno a tre caratteri e un numero. I numeri univoci consentono di raggruppare quei tag che hanno fra di loro una corrispondenza e differenziano i tag che possono essere associati allo stesso carattere rapido, anche se, in effetti, sono diversi. I caratteri possono, o no, riflettere il valore della formattazione rappresentato dal tag stesso (per esempio: grassetto, corsivo, e così via).

Numerazione dei tag: i tag sono numerati, in modo incrementale, in base al gruppo di tag. Ciò che qui viene chiamato “gruppo di tag” si riferisce sia a un tag singolo (come nel caso di `<br1>`), a sé stante, sia a 2 tag, sotto forma di coppia (come nel caso di `<i0>` e `</i0>`). All'interno di un segmento, il primo gruppo (in coppia o singolo) è associato al numero 0, il secondo al numero 1, e così di seguito. Il primo esempio qui sotto riportato è composto da 3 gruppi di tag (una coppia, un singolo e, quindi, un'altra coppia) mentre il secondo esempio ne contiene solo uno (una coppia).

Coppie e singoli: i tag sono sempre singoli o in coppia. I tag singoli indicano le informazioni di formattazione che non coinvolgono il testo circostante (per esempio, inserimento di spazi aggiuntivi o di interruzioni di riga).

     <segmento 2132><b0><Ctr+N></b0>, <br1><b2><Enter></b2><fine segmento>

`<br1>` è un tag singolo e non influisce sul testo circostante. I tag accoppiati, di solito, indicano informazioni di stile che verranno applicate al testo contenuto tra il tag di apertura e quello di chiusura della coppia. Qualsiasi cosa accada a una coppia, il tag di apertura dovrà sempre precedere quello di chiusura:

     <segmento 3167>File di registro (<b0>log.txt</b0>) per la registrazione delle operazioni e degli errori.<fine segmento>

`<b0>` e `</b0>` sono tag accoppiati e influiscono sul testo `log.txt`.

### Tag e segmentazione della frase

OmegaT, prima di procedere con la segmentazione delle frasi, crea i propri tag. A seconda delle regole di segmentazione, potrebbe sembrare che i tag non rispettino le regole di numerazione e di raggruppamento qui sopra espresse. Controllare il testo seguente: "Prima: \. Dopo: \s". Ci si aspetta la segmentazione come segue (<b0> e </b0> rappresentano la fine e l'inizio del corsivo):

     <segmento ....> <b0>Prima: \. Dopo: \s</b0><fine segmento>

Tuttavia, quando a questo segmento vengono applicate le regole predefinite della segmentazione si otterrà il seguente risultato:

     <segmento 1990> <b0>Prima: \. <fine segmento>

    <segmento 1991> Dopo: \s</b0><fine segmento>

L'applicazione della regola segmento dopo un punto seguito da uno spazio divide il testo originale in due segmenti, anche se i due tag `<b0>` e `</b0>` devono essere mantenuti uniti nello stesso segmento. Vi sono alcune occasioni nelle quali potrebbero sorgere problemi nel testo finale tradotto, ovvero quando i tag devono essere posizionati all'interno del documento di arrivo per riflettere l'ordine delle parole della lingua di destinazione (si veda, più sotto, la sezione Operazioni sui tag).

### Operazioni sui tag

Quando si agisce su tag è necessario prestare una particolare attenzione. Se vengono accidentalmente cambiati, la formattazione del documento finale potrebbe presentare problemi. La filosofia di approccio è "Non fasciarsi la testa se non è rotta". È bene sapere, tuttavia, cosa è possibile fare e come farlo.

Duplicazione di gruppi di tag: per duplicare gruppi di tag sarà sufficiente copiarli nella posizione finale corretta. Si tenga a mente che in un gruppo accoppiato, il tag di apertura deve sempre precedere quello di chiusura. La formattazione associata al gruppo duplicato verrà applicata alla sezione nella quale si è effettuata la duplicazione.

Esempio:

     <segmento 0001><b0>Questa formattazione</b0> sta per essere duplicata qui.<fine segmento>

Dopo aver effettuato la duplicazione si otterrà:

     <segmento 0001><b0>Questa formattazione</b0> è stata <b0>duplicata qui</b0>.<fine segmento>

Eliminazione dei gruppi di tag: per eliminare gruppi di tag sarà sufficiente cancellarli dall'interno del segmento. Si tenga però presente che, per eliminare tutte le tracce della formattazione, sarà necessario eliminare sia il tag di apertura, sia quello di chiusura; in caso contrario il file tradotto potrebbe risultare danneggiato. L'eliminazione di un gruppo di tag rimuoverà dal file finale tradotto tutte le informazioni di formattazione correlate.

Esempio:

     <segmento 0001><b0>Questa formattazione</b0> sta per essere eliminata.<fine segmento>

Dopo l'eliminazione si otterrà:

     <segmento 0001>Questa formattazione è stata eliminata.<fine segmento>

Modifica dell'ordine dei gruppi di tag: per modificare l'ordine di un gruppo di tag in modo da riflettere nella traduzione la corretta struttura linguistica sequenziale delle parole, sarà sufficiente inserire il gruppo di tag dove questo dovrebbe correttamente apparire all'interno del documento finale tradotto.. La formattazione verrà applicata alla parte corrispondente.

Esempio:

     <segmento 0001><b0>La formattazione zero</b0> e <b1>quella uno</b1> stanno per essere invertite.<fine segmento>

Dopo la modifica dell'ordine si otterrà:

     <segmento 0001><b1>La formattazione uno</b1> e <b0>quella zero</b0> sono state invertite.<fine segmento>

### Annidamento di un gruppo di tag

La modifica dell'ordine del gruppo di tag potrebbe anche portare all'annidamento di un gruppo di tag all'interno di un altro gruppo di tag. Questo va bene fintanto che il gruppo di tag esterno comprende completamente il gruppo di tag annidato. In altre parole, assicurarsi che, quando si spostano tag accoppiati, entrambi i tag di apertura e chiusura vengano spostati nel file di arrivo, in caso contrario file tradotto potrebbe risultare danneggiato e potrebbe anche non essere possibile aprirlo. La parte annidata dovrà prevedere la presenza di entrambi i tag di formattazione.

Esempio:

     <segmento 0001><b0>La formattazione</b0> <b1>uno</b1> sta per essere annidata dentro la formattazione zero.<fine segmento>

Dopo l'annidamento si otterrà:

     <segmento 0001><b0>La formattazione <b1>uno</b1></b0> è stata annidata dentro la formattazione zero.<fine segmento

### Sovrapposizione di un gruppo di tag

La sovrapposizione è il risultato della scorretta manipolazione della coppie di tag e porterà certamente a un danneggiamento della formattazione e, a volte, all'impossibilità di aprire il file tradotto. Esempio:

     <segmento 0001><b0>La formattazione</b0> <b1>uno</b1> sta per essere manipolata scorrettamente.<fine segmento>

Dopo la manipolazione non corretta si potrebbe ottenere:

     <segmento 0001><b0>La formattazione <b1>uno</b0> </b1>ora è molto disordinata.<fine segmento>

### Convalida di un gruppo di tag

La funzione di convalida dei tag rileva i tag che sono stati modificati (sia in modo deliberato sia accidentalmente), e mostra i segmenti coinvolti. L'avvio di questa funzione - tramite Ctrl+T - aprirà una finestra che contiene tutti i segmenti nel file che si sospetta avere tag danneggiati o scorretti all'interno della traduzione. Gli errori nel testo con tag tradotto sono spesso un problema nei file OpenDocument o OpenOffice.org, in quanto potrebbe non essere possibile aprirli a causa di problemi dei tag generati nel corso del processo di traduzione. La funzione di convalida dei tag rende semplice la loro correzione e la ricreazione del documento di arrivo. La finestra, che si apre premendo Ctrl+T, mostra una tabella a tre colonne con un collegamento al segmento, a quello di partenza e a quello di arrivo:

1 | Tramite la finestra <b0>Anteprima caratteri</b0> può essere selezionata una diversa dimensione del carattere. Aprire la finestra dal menu <i1>Opzioni</i1> > <i2>Carattere...</i2>. Da questa finestra di dialogo si potrà modificare sia il tipo sia la dimensione del carattere. | 'n Mens kan 'n ander vertoonfont kies met die <b0>Vertoonfont</b0>-dialoogkassie. Kies <i1>Opstelling</i1> > Vertoonfont... op die kieslys. Die lettertipe én die lettergrootte kan met dié dialoogkassie verander word.

I tag sono evidenziati in grassetto azzurro per un confronto migliore tra il contenuto originale e quello tradotto. Fare clic sul collegamento per aprire il segmento nell'editor. Correggere l'errore, se necessario, e premere `Ctrl+T` per tornare alla finestra di convalida e correggere gli altri errori. Gli errori sui tag nella traduzione sono errori durante la manipolazione dei tag, che non ha riprodotto il loro stesso numero e ordine del segmento originale. Certe elaborazioni sono necessarie e non creano problemi, altre ne possono causare al momento della creazione del documento di arrivo.

### Consigli per la gestione dei tag

I tag, di solito, rappresentano elementi di formattazione del testo originale. La semplicità della formattazione del testo originale contribuisce in modo sostanziale alla riduzione del numero dei tag. Quando è possibile, si dovrebbe prendere in considerazione l'uniformazione dei caratteri utilizzati, della loro dimensione, dei loro colori ecc., poiché potrebbe semplificare il processo di traduzione e ridurre la possibilità di errori nei tag. Si consiglia di leggere la sezione Operazioni con i tag per capire come è possibile intervenire su questi elementi. Tenere presente che, se si ha difficoltà nella gestione dei tag e se la formattazione non ha un'importanza primaria per la traduzione rimuovere i tag potrebbe essere il sistema migliore per risolvere i problemi.

Se si vogliono visualizzare i tag in OmegaT ma non si ha la necessità di conservarli all'interno del documento tradotto, si potrà anche evitare di includerli nella versione finale del documento. In questo caso si consiglia di prestare ulteriore attenzione alle coppie di tag, poiché la mancata eliminazione di un elemento della coppia potrebbe portare a una scorretta formattazione del documento. Poiché i tag fanno parte del testo, è possibile adottare regole di segmentazione in modo da creare segmenti con meno tag. Si tratta, in questo caso, di una funzione di tipo avanzato che, per essere applicata correttamente, richiede una certa esperienza.

Importante: OmegaT non è ancora in grado di rilevare in modo completamente automatico gli errori di formattazione, pertanto non segnalerà eventuali errori o modifiche di formattazione applicate al documento finale per adattarlo alla lingua di destinazione. A volte, tuttavia, il file tradotto potrebbe apparire strano e, nel caso di file OpenDocument / OpenOffice.org, potrebbe anche non aprirsi.

### printf-placeholders

In alcuni linguaggi di programmazione (es., PHP, C) vengono usati speciali tag come segnaposto in stringhe utilizzate in combinazione con la funzione printf. Esempio:

    $var =_("figo");
    echo printf(_("OmegaT è molto %s"),$var);

Se le stringhe di testo vengono estratte da questo codice sorgente (per es., tramite il filtro PO), OmegaT non sostituisce queste variabili con tag, perché non può sapere per certo se, per esempio, `%s` è veramente un segnaposto o solo la parte di un testo. È possibile, tuttavia, abilitare la convalida di questi segnaposto. Selezionare Opzioni → Convalida dei tag... dal menu. Si ha la possibilità di attivare la convalida semplice o completa.

La sintassi ufficiale per le variabili printf è

    "%" [ARGUMENTSWAPSPECIFIER] [SIGNSPECIFIER] [PADDINGSPECIFIER] [ALIGNMENTSPECIFIER] [WIDTHSPECIFIER] [PRECISIONSPECIFIER] TYPESPECIFIER

La convalida completa supporta totalmente questo formato, ad eccezione di `WIDTHSPECIFIER`. Nella convalida semplice viene controllata la sintassi seguente:

    "%" [ARGUMENTSWAPSPECIFIER] [PRECISIONSPECIFIER] TYPESPECIFIER

si ha la possibilità di cambiare l'ordine dei segnaposto, ma in questo caso si deve aggiungere, se non presente, ARGUMENTSWAPSPECIFIER. Questo comporta l'aggiunta di un numero di sequenza e il segno $ dopo il segno `%`. Ad esempio, `"%s è un'applicazione %s"` è uguale a `"%1$s è un'applicazione %2$s"`, che si può tradurre in `"un'applicazione %2$s è %1$s"`.

Avvertenze legali | Pagina iniziale | Indice