# Manuale di &lokalize;

## Introduzione

Di solito, i messaggi e la documentazione dei programmi sono scritti in inglese. Usando un'infrastruttura di strumenti e librerie è possibile che le tue applicazioni preferite "parlino" nella tua lingua nativa (diversa dall'inglese). Questo processo di adattamento di un'applicazione in una lingua specifica è chiamato localizzazione. Il processo di localizzazione include la traduzione delle interfacce del programma e della documentazione nelle varie lingue richieste dagli utenti e, in alcuni paesi o regioni, adattare i dati e valori inseriti e quelli prodotti conformi a convenzioni particolari. &lokalize; è uno strumento che ti assiste nel processo di localizzazione per far sì che l'interfaccia di un'applicazione "parli" in molte lingue.

Con ogni programma che gestisce l'internazionalizzazione sono resi disponibili per la traduzione uno o più file di cataloghi di messaggi. L'estensione di questi file è `.pot`. POT è un acronimo per Portable Object Template. &lokalize; è un editor avanzato e facile da usare di file PO (cataloghi di messaggi di &GNU; gettext); è anche un sistema di traduzione assistito dal computer per traduttori, scritto da zero usando le librerie della piattaforma di &kde; 4. Oltre alla modifica di file PO con utili dettagli aggiuntivi, integra il supporto per glossari, memorie di traduzione, modalità di confronto per controllo della qualità, gestione dei progetti, &etc;. Ha molte funzionalità come una completa navigazione tra i messaggi, estese funzioni di modifica, ricerca, controllo della sintassi e statistiche.

File «Portable Object» (.po): ciascun traduttore prende una copia di uno di questi modelli POT e inizia a compilarlo: ogni messaggio è tradotto nella lingua desiderata. Il file contenente il testo tradotto viene chiamato «file PO» (Portable Object).

## Editor

### Finestra principale

Normalmente, la finestra principale contiene sei parti. L'area in altro a destra non è modificabile e contiene il msgid corrente (testo sorgente) del file PO aperto. Sotto di questa, la casella di modifica contiene il msgstr (testo di destinazione) relativo al msgid mostrato; qui puoi inserire o modificare la traduzione.

La finestra principale predefinita di &lokalize; Questa immagine mostra la finestra predefinita all'apertura di un file.

La parte in alto a sinistra della finestra principale mostra le «Unità di traduzione». Sotto di questa, c'è la sezione «Metadati dell'unità» che contiene commenti relativi al testo sorgente correntemente mostrato. Nella parte in basso a sinistra c'è una sezione «Memoria di traduzione» che mostra le traduzioni suggerite dalla banca dati della memoria di traduzione per il testo sorgente corrente. Nell'angolo in basso a destra della finestra principale è mostrato il glossario.

I file di traduzione sono aperti in schede separate, con due grandi caselle di testo e varie viste di strumenti. Queste viste possono essere posizionate l'una sull'altra (in una struttura a schede), mostrate in modo separato o nascoste. I file di traduzione sono formati da molte coppie di stringhe in inglese, chiamate unità. Una unità di solito corrisponde ad una stringa nell'interfaccia utente, oppure ad un paragrafo di documentazione. Lo scopo della prima casella di testo è di mostrare la parte "originale" della coppia. Lo scopo della seconda casella di testo è di mostrare la traduzione. Puoi passare da una unità all'altra usando la vista Unità di traduzione o i tasti Pag Su e Pag Giù.

Una unità può essere tradotta o non tradotta. La traduzione di una unità tradotta può essere pronta oppure non pronta (chiamata anche fuzzy). Se una unità non è pronta, la sua traduzione viene mostrata in corsivo. &lokalize; ti permette di navigare facilmente attraverso le unità del file a secondo dello stato della loro traduzione. Vedi le scorciatoie nel menu Vai. La barra di stato nella parte bassa della finestra mostra rispettivamente il numero della stringa corrente, il numero totale di stringhe, il totale delle stringhe non tradotte, il totale delle stringhe non pronte (fuzzy) e lo stato della stringa corrente. Quando navighi tra le unità, le unità non tradotte sono considerate come non pronte. Inoltre, puoi anche filtrarle usando la vista Unità di traduzione. Premendo Pag Giù ti porterà alla successiva unità nella lista filtrata/ordinata di quella vista.

Per facilitare la traduzione di applicazioni per console, in cui gli spazi nei messaggi sono importanti, puoi abilitare l'opzione Visualizza separatori quali spazi, tabulazioni e fine linea nell'editor nella scheda Modifica della finestra di configurazione, che può essere aperta scegliendo Impostazioni Configura &lokalize;....

Se non hai il modello originale di traduzione a disposizione (è una pratica comune nei progetti commerciali di traduzione), puoi usare un file con traduzioni da una lingua qualsiasi. Scegli la voce di menu File Cancella tutte le voci tradotte oppure usa la scorciatoia &Ctrl;&Alt;D per pulire tutte le unità di traduzione.

Nella finestra principale è possibile aggiungere altre sezioni quali Traduzioni alternative, Sincronizzazione primaria, Sincronizzazione secondaria e Unità binarie scegliendole a partire dal menu principale in Impostazioni Viste degli strumenti.

### Barre degli strumenti

Puoi aggiungere o rimuovere azioni nelle barre degli strumenti scegliendo Impostazioni Configura le barre degli strumenti... dal menu principale.

Configura le barre degli strumenti Qui puoi configurare le barre degli strumenti.

Per maggiori informazioni, consulta la sezione Barre degli strumenti dei «Fondamentali di &kde;».

### Scorciatoie da tastiera

Puoi velocizzare la traduzione usando scorciatoie da tastiera. Per configurare le scorciatoie, usa Impostazioni Configura le scorciatoie... dal menu principale.

Configura le scorciatoie da tastiera Qui puoi configurare le scorciatoie da tastiera.

Per maggiori informazioni, consulta la sezione Scorciatoie dei «Fondamentali di &kde;».

### Suggerimenti generali

Se stai traducendo per &kde;, allora avrai già un file di progetto di &lokalize; nella cartella della tua lingua (solitamente chiamato `index.lokalize`), oppure puoi scegliere Progetto Crea nuovo progetto e la procedura guidata scaricherà i file di traduzione della tua lingua e creerà un progetto.

Si raccomanda di abituarsi alle scorciatoie da tastiera invece di menu e barre degli strumenti, per incrementare la produttività. Per esempio, usa &Ctrl;L per passare sulla casella di testo Ricerca veloce e filtrare gli elementi nella vista Unità di traduzione. Quando hai finito, premi Pag Giù per muoverti nella lista filtrata di elementi.

Se stai lavorando con traduzioni in formato XLIFF (sicuramente nel caso in cui stai traducendo OpenDocument) sono disponibili gli stati estesi (nuovo, richiede revisione, approvato, &etc;). Puoi selezionarli nel menu a comparsa del pulsante Approvato nella barra degli strumenti. La classificazione degli stati quali pronto o non pronto dipende dalla fase di lavoro corrente (traduzione, revisione, approvazione). Una fase predefinita per te dipende dal tuo ruolo nel progetto (impostato nelle impostazioni del progetto). Ciascuna unità di solito contiene informazioni su quando ha cambiato fase e, per ogni fase, chi vi ha lavorato.

## Progetti

### Note generali

Il «progetto» è uno dei concetti principali in &lokalize;. Un progetto è rappresentato da un file che contiene percorsi, cartelle con traduzioni, modelli ed altri file: file di glossario, script di automazione, memorie di traduzione. Quando &lokalize; apre un file senza un progetto già caricato, cercherà un file di progetto nelle directory genitori (fino a quattro livelli). In alternativa, puoi specificare il file di progetto usando l'opzione `--project` se avvii &lokalize; da riga di comando.

In ogni progetto scegli il ruolo che hai nel progetto stesso (traduttore, revisore, certificatore), e &lokalize; sceglierà una diversa fase del lavoro per ogni file che modifichi.

È possibile definire a livello di progetto una posizione per la funzione di a capo automatico. Usa la voce di menu Progetto Configura progetto... e scegli la scheda Avanzate.

Le memorie di traduzione (al contrario di file di progetto, glossario e script) non sono condivise tra i membri della squadra di traduzione, dato che sono creati e memorizzati nella cartella home dell'utente: ciò significa che le memorie di traduzione per tutti i progetti sono memorizzati nella stessa cartella, e che quindi possono essere usati quando altri progetti sono aperti.

### Scheda della vista globale del progetto

Quando avvii &lokalize; la prima volta, vedrai una scheda vuota Vista globale del progetto. «Vista globale del progetto» è una vista di gestione file, che ti aiuta ad avere una visione globale dei tuoi file PO. &lokalize; ti aiuterà a tradurre velocemente e anche a mantenere le traduzioni consistenti. Il flusso di lavoro di &lokalize; implica che devi iniziare con la creazione o l'apertura di un progetto.

Per creare un nuovo progetto, scegli Progetto Crea nuovo progetto. Sarai guidato nei vari passi necessari per creare un nuovo progetto. Nel menu Progetto puoi trovare anche opzioni quali Vista globale del progetto, Configura progetto, Apri progetto e Apri progetto recente.

Scheda della vista globale del progetto Qui puoi configurare il progetto.

La scheda Vista globale del progetto visualizza un albero di file con statistiche del progetto, come la percentuale di unità tradotte completate e l'ultimo traduttore. Ti permette di aprire un file selezionato in una nuova scheda della finestra attuale di &lokalize;.

Puoi nascondere tutti i file tradotti nella Vista globale del progetto usando il pulsante Nascondi elementi completi nella barra degli strumenti principale oppure la scorciatoia &Ctrl;T.

Quando avvii &lokalize; la volta successiva, come comportamento predefinito mostrerà l'ultimo file aperto. Puoi disabilitare questo comportamento usando l'opzione Ripristina i file aperti in precedenza all'avvio di &lokalize; nella pagina Generale della finestra di configurazione, che può essere aperta scegliendo Impostazioni Configura &lokalize;... dal menu principale. Nella stesa pagina è possibile configurare il comportamento di &lokalize; quando passi alla scheda precedente o a quella successiva. È possibile scorrere la lista delle schede a seconda della loro posizione oppure del loro ordine di attivazione.

## Glossario

Ti sei mai stancato di digitare la stessa lunga sequenza di testo diverse volte, solo perché impiegheresti più tempo a cercare la sua traduzione per copiarla e incollarla? Adesso dovrai solo cercare la (frequente) sequenza di parole nella vista Glossario, quindi inserirla usando una scorciatoia da tastiera.

Ovviamente, il glossario dovrebbe essere prima riempito con sequenze di parole. &lokalize; ha un comodo editor di glossario che permette la ricerca su tutto il glossario.

La vista glossario nell'angolo in basso a destra mostra le voci di glossario adatte all'unità corrente La vista glossario nell'angolo in basso a destra mostra le voci di glossario adatte all'unità corrente

## Memoria di traduzione

La Memoria di traduzione ti permette di trascinare una cartella con file di traduzione da ⪚ &dolphin; nella vista e, dopo pochi minuti, saranno mostrati automaticamente i suggerimenti per la traduzione quando passi ad un altra unità. Per inserire nel file i suggerimenti di traduzione, usa &Ctrl;1, &Ctrl;2 e così via, a secondo del numero di suggerimenti.

Usa Strumenti Gestisci le memorie di traduzione per aggiungere e gestire progetti per la memoria di traduzione. Qui puoi anche importare o esportare dati in formato `tmx`.

Premendo F7 sarà aperta la scheda della Memoria di traduzione, che permette di interrogare la memoria di traduzione. Facendo clic su un risultato di ricerca sarà aperto il file corrispondente, all'unità corrispondente. Se vuoi aprire velocemente un file nel progetto (ed è aggiunto alla memoria di traduzione), invece di sfogliare la Vista globale del progetto puoi digitarne il nome (terminato da «*») nel campo Modello di nome di file.

Sono indicizzate nella memoria di traduzione tutte le voci, incluse quelle non pronte e quelle e non tradotte. Ciò permette alla memoria di traduzione di sostituire la ricerca nei file che richiede la scansione di ogni file nel progetto ad ogni ricerca.

Le voci obsolete della memoria di traduzione daranno rimosse dalla memoria di traduzione di &lokalize; durante l'aggiornamento oppure facendo clic su una voce mancante usando l'opzione Elimina file mancanti dalla memoria di traduzione durante l'aggiornamento oppure selezionando la voce mancante nella pagina Memoria di traduzione della finestra di configurazione, che può essere aperta scegliendo Impostazioni Configura &lokalize;... dal menu principale.

&lokalize; con risultati della ricerca nella memoria di traduzione per l'unità corrente &lokalize; con risultati della ricerca nella memoria di traduzione per l'unità corrente

Traduzione non interattiva

- Per inserire automaticamente i suggerimenti che corrispondono esattamente dalla banca dati della memoria di traduzione, usa Strumenti Riempi con tutti i suggerimenti esatti oppure Riempi con tutti i suggerimenti esatti e segna come fuzzy. Questa funzione è simile alla traduzione approssimativa di &kbabel;.

## Funzionalità di sincronizzazione della traduzione

La Modalità sincronizzazione (precedentemente conosciuta come Modalità di fusione) permette di far risparmiare tempo ai traduttori, in casi in cui due o più traduttori stanno lavorando allo stesso tempo sullo stesso file o quando vengono mantenute le traduzioni di diversi rami di software.

&lokalize; ti permette di navigare velocemente tra le unità tra loro differenti e di mostrare le differenze parola per parola. Inoltre, &lokalize; ha due viste di sincronizzazione: la Sincronizzazione primaria e la Sincronizzazione secondaria. Sono uguali, ma la prima è usata di solito per unire traduzioni mentre la seconda per sincronizzare traduzioni di due rami di software.

Dopo che hai copiato (sincronizzato) la traduzione dal file ausiliario, ogni ulteriore modifica fatta a questa unità sarà replicata nel file ausiliario.

### Fusione

Un uso della Modalità sincronizzazione può essere quello di revisionare modifiche fatte da (nuovi) traduttori, in casi in cui non puoi essere sicuro della qualità del lavoro svolto.

Apri un file base, quindi trascina la sua versione modificata nella vista Sincronizzazione primaria, seguita da &Alt;Down o &Alt;Up (ricorda che le scorciatoie da tastiera possono essere modificare nel modo classico di tutte le applicazioni &kde;) per navigare attraverso le voci tra loro differenti.

&lokalize; usato per la fusione di modifiche nella traduzione &lokalize; usato per la fusione di modifiche nella traduzione

### Replica

La Modalità sincronizzazione può essere usata per fare allo stesso tempo modifiche alle traduzioni di due rami. Imposta la Cartella ramo di traduzione nelle opzioni del progetto alla directory cartella base del ramo, e la vista Sincronizzazione secondaria aprirà automaticamente i file dal ramo. Quindi, ogni volta che fai modifiche in file nel ramo principale, verranno automaticamente replicate nel ramo (ovviamente, se contiene la stessa stringa inglese).

Ad esempio, se traduci per &kde;, puoi prelevare «trunk» in `/home/utente/progetti/kde/trunk/l10n-kf5/TUA_LINGUA` e il ramo stabile in `/home/utente/progetti/kde/branches/stable/l10n-kf5/TUA_LINGUA`. Crea il progetto di &lokalize;: `/home/utente/progetti/kde/trunk/l10n-kf5/TUA_LINGUA/progetto.lokalize` e imposta `BranchDir=../../../branches/stable/l10n-kf5/TUA_LINGUA`; quindi lavora usando questo progetto, depositando le modifiche sia in «trunk» che nel ramo stabile.

### Traduzioni alternative

Ciascuna unità può avere diverse traduzioni alternative associate. Tali traduzioni possono apparire durante l'aggiornamento del file, quando la stringa nei sorgenti viene modificata leggermente. In questo caso, la vecchia traduzione con il suo (vecchio) sorgente viene spostata nella lista delle traduzioni alternative, così non sono perse.

Quando si traduce software, di solito gli strumenti di gettext sono usati per preparare i file di traduzione. Quando il testo originale cambia, gli strumenti di gettext aggiornano i file di traduzione e segnano le voci con il testo originale modificato come fuzzy (o non pronto, usando un'altra terminologia). Il testo originale precedente viene memorizzato, così i traduttori possono vedere quali modifiche sono state fatte. &lokalize; semplifica la vita dei traduttori ed evidenzia nella vista Traduzioni alternative le parti del testo originale che sono cambiate.

&lokalize; che evidenzia parti del testo originale cambiate dall'ultima volta che la traduzione è stata revisionata &lokalize; che evidenzia parti del testo originale cambiate dall'ultima volta che la traduzione è stata revisionata

## Lavorare con script in &lokalize;

Le funzioni di &lokalize; possono essere estese usando script in diversi linguaggi interpretati, tra cui Python e &javascript;. Gli script sono integrati nell'interfaccia di &lokalize; con voci nei menu (a cui puoi assegnare scorciatoie da tastiera). La posizione e il nome della voce di menu di ogni script è definita nel file .rc che lo accompagna. Per ogni progetto aperto, &lokalize; cerca file .rc nella cartella `DIRECTORY_DEL_PROGETTO/lokalize-scripts` e li aggiunge in un file di cache chiamato `DIRECTORY_DEL_PROGETTO/lokalize-scripts/scripts.rc` (che in generale non dovresti aggiungere al sistema di controllo versione usato per il progetto). I file RC contengono anche i percorsi degli script, che possono essere relativi alla cartella del file .rc o ad una cartella di script di sistema - entrambe le cartelle sono provate (tuttavia, i percorsi dovrebbero essere relativi se vuoi condividere il file .rc con altre persone nel tuo progetto). Ad esempio, puoi specificare `../../scripts/lokalize/opensrc.py` per caricare uno script dalla cartella globale degli script di kf5-l10n (&ie; non specifico per la tua lingua).

Esempi di file .rc possono essere trovati nella cartella di installazione di &lokalize; (di solito `/usr/share/lokalize/scripts/`) e nel deposito di &kde;. Qui puoi trovare ulteriori esempi di script, tra cui lo script `check-gui.js` (basato su &javascript;) che viene eseguito automaticamente ad ogni salvataggio dei file (ciò viene fatto con un'opzione speciale nel file .rc). Se hai familiarità con Python o &javascript;, il codice dovrebbe essere sufficientemente chiaro.

Sotto ci sono collegamenti ai riferimenti API. Tutto ciò che è segnato con Q_SCRIPTABLE può essere usato negli script.

- Riferimento API dell'oggetto Editor

- Riferimento API dell'oggetto &lokalize;

- Riferimento API dell'oggetto Project

### Pology

Uno degli impieghi migliori delle funzionalità di script è l'uso di Pology in &lokalize;.

L'interazione con Pology può essere configurata nella pagina Pology della finestra di configurazione, che può essere aperta scegliendo Impostazioni Configura &lokalize;... dal menu principale.

Per ulteriori informazioni, consulta la pagina di riferimento di Pology.

### LanguageTool

LanguageTool fornisce controllo ortografico e grammaticale delle unità di traduzione.

Puoi configurare un server LanguageTool personalizzato nella pagina LanguageTool della finestra di configurazione, che può essere aperta scegliendo Impostazioni Configura &lokalize;... dal menu principale.

Per usare i controlli di LanguageTool scegli Modifica Controlla questa unità usando LanguageTool oppure usa la scorciatoia &Ctrl;J.

Per ulteriori informazioni, consulta la pagina di riferimento di LanguageTool.

## Riconoscimenti e licenza

&lokalize;

Copyright del programma © 2007-2015, Nick Shaforostoff shaforostoff@kde.ru

È stato preso del codice da &kbabel;, il predecessore di &lokalize;.

Copyright della documentazione © 2007-2009 Nick Shaforostoff shaforostoff@kde.ru

Autore:

- Nick Shaforostoff shaforostoff AT kde.ru; Shankar Prasad svenkate AT redhat.com; Sweta Kothari swkothar AT redhat.com

Per maggiori informazioni, visita la pagina di riferimento di &lokalize;.

Traduzione italiana di Pino Toscano toscano.pino@tiscali.it

&underFDL; &underGPL;
&documentation.index;