Provided by: po4a_0.73-2ubuntu1_all bug

NOME

       po4a - aggiorna i file PO e i documenti tradotti in un colpo solo

SINTASSI

       po4a [opzioni] file_config

DESCRIZIONE

       po4a (PO for anything - N.d.T. PO per tutto) semplifica la manutenzione delle traduzioni
       della documentazione usando i classici strumenti forniti da gettext. La caratteristica
       principale di po4a è che separa la traduzione dei contenuti dalla struttura del relativo
       documento.  Fare riferimento alla pagina po4a(7) per un'introduzione a questo progetto.

       Al momento dell'esecuzione, po4a analizza tutti i file di documentazione specificati nel
       file di configurazione. Aggiorna i file PO (contenenti la traduzione) per riflettere
       eventuali modifiche alla documentazione e produce una documentazione tradotta inserendo la
       traduzione del contenuto (che si trova nei file PO) nella struttura del documento master
       originale.

       Inizialmente, i file PO contengono solo le stringhe da tradurre dalla documentazione
       originale. Questo formato di file consente ai traduttori di fornire manualmente una
       traduzione per ogni paragrafo estratto da po4a. Se la documentazione viene modificata dopo
       la traduzione, po4a contrassegna le traduzioni corrispondenti come "fuzzy" nel file PO per
       richiedere una revisione manuale da parte dei traduttori. I traduttori possono anche
       fornire i cosiddetti "addendum", che sono contenuti extra che indicano ad esempio chi ha
       eseguito la traduzione e come segnalare i difetti.

        documenti master ---+----->---------->--------+
         (doc.ti orig.)     |                         |
                            V    (esecuzioni po4a)    >----+--> documenti
                            |                         |    |     tradotti
        file PO esistenti -->--> file PO aggiornati >-+    |
             ^                                |            |
             |                                V            |
             +------------<------------<------+            ^
              (processo di traduzione manuale)             |
                                                           |
        addendum -->---------------------------------------+

       Il flusso di lavoro di po4a è asincrono, adatto ai progetti open source. Gli autori della
       documentazione creano i documenti master al proprio ritmo. I traduttori esaminano e
       aggiornano le traduzioni nei file PO. I manutentori rieseguono po4a se necessario, per
       riflettere qualsiasi modifica alla documentazione originale nei file PO e per produrre
       traduzioni della documentazione aggiornate, inserendo l'ultima traduzione nella struttura
       del documento più recente.

       Per impostazione predefinita, un determinato documento tradotto viene prodotto quando
       viene tradotto almeno l'80% del suo contenuto. Il testo non tradotto è mantenuto nella
       lingua originale. La documentazione prodotta mescola quindi lingue se la traduzione non è
       completa. È possibile modificare la soglia dell'80% con l'opzione -- keep descritta di
       seguito. Si noti tuttavia che scartare le traduzioni appena sotto al 100% può essere
       scoraggiante per i traduttori il cui lavoro non verrà quasi mai mostrato agli utenti,
       mentre mostrare "traduzioni" troppo incomplete può creare problemi per gli utenti finali.

       La memorizzazione dei file di documentazione tradotti nel sistema di controllo
       versionamento è probabilmente una cattiva idea, poiché vengono generati automaticamente. I
       file importanti sono i file PO, che contengono il duro lavoro dei colleghi traduttori.
       Inoltre, alcune persone trovano più facile interagire con i traduttori attraverso una
       piattaforma online come weblate, ma questo è naturalmente opzionale.

   Guida di avvio rapido
       Supponiamo di mantenere un programma chiamato foo che ha una pagina man man/foo.1 scritta
       in inglese (il linguaggio ponte nella maggior parte dei progetti open-source, ma po4a può
       essere usato da o verso qualsiasi linguaggio). Qualche tempo fa, qualcuno ha fornito una
       traduzione manuale in tedesco chiamata man/foo.de.1 ed è scomparso. Questo è un problema
       perché hai appena ricevuto una segnalazione di bug che dice che la tua documentazione
       contiene informazioni gravemente fuorvianti che devono essere corrette in tutte le lingue,
       ma non parli tedesco quindi puoi solo modificare l'originale, non la traduzione. Ora, un
       altro collaboratore vuole contribuire con una traduzione in giapponese, un'altra lingua
       che non si mastica.

       È ora di convertire la documentazione a po4a per risolvere la manutenzione da incubo della
       documentazione. Si vuole aggiornare il documento quando serve, facilitare il lavoro dei
       colleghi traduttori e assicurare che gli utenti non vedano mai documentazioni obsolete e
       quindi fuorviante.

       La conversione comprende due passaggi: configurare l'infrastruttura po4a e convertire la
       precedente traduzione tedesca per salvare il lavoro precedente. Quest'ultima parte viene
       eseguita utilizzando po4a-gettextize, come segue. Come dettagliato nella documentazione di
       po4a-gettextize(1), questo processo raramente è anche completamente automatico, ma una
       volta terminato, il file de.po contenente la traduzione tedesca può essere integrato nel
       flusso di lavoro di po4a.

         po4a-gettextize --format man --master foo.1 --localized foo.de.1 --po de.po

       Configuriamo ora po4a. Con la disposizione file appropriata, la configurazione potrebbe
       assomigliare ad un semplice file come questo:

        [po_directory] man/po4a/

        [type: man] man/foo.1 $lang:man/translated/foo.$lang.1

       Specifica che tutti i file PO (contenenti il lavoro dei traduttori) sono la cartella
       man/po4a/ e che si ha un solo file master, man/foo.1. Se si avesse più file master, si
       avrebbero più righe simili alla seconda. Ciascuna di queste righe specifica anche dove
       scrivere i file di traduzione corrispondenti. Qui, la traduzione tedesca di man/foo.1 è in
       man/translated/foo.de.1.

       L'ultima cosa di cui abbiamo bisogno per completare la configurazione di po4a è un file
       POT contenente il materiale del modello che dovrebbe essere usato per iniziare una nuova
       traduzione. Basta creare un file vuoto con l'estensione .pot nella po_directory
       specificata (ad es. man/po4a/foo.pot) e po4a lo riempirà con il contenuto previsto.

       Ecco un riassunto dei file in questa impostazione:

         ├── man/
         │   ├── foo.1        <- La pagina man originale, in inglese
         │   ├── po4a/
         │   │   ├── de.po    <- La traduzione PO in tedesco, dalla gettext-izzazione
         │   │   └── foo.pot  <- Il modello POT per future traduzioni (all'inizio vuoto)
         │   └── translated/  <- La cartella dove verranno create le traduzioni
         └── po4a.cfg         <- Il file di configurazione

       Una volta impostato, l'esecuzione di po4a analizzerà la documentazione, aggiornerà il file
       modello POT, lo utilizzerà per aggiornare i file di traduzione PO e li utilizzerà per
       aggiornare i file di traduzione della documentazione. Tutto in un comando:

               po4a --verbose po4a.cfg

       Fatto. po4a è ora completamente configurato. Dopo aver corretto l'errore in man/foo.1, il
       paragrafo colpevole nella traduzione tedesca sarà sostituito dal testo corretto in
       inglese. Mescolare le lingue non è ottimale, ma è l'unico modo per rimuovere errori nelle
       traduzioni (in lingue) che non si comprendono e garantire che il contenuto presentato agli
       utenti non sia mai forviante. Anche l'aggiornamento della traduzione tedesca è molto più
       semplice nel file PO corrispondente, quindi il disguido linguistico potrebbe non durare a
       lungo. Infine, quando un traduttore giapponese volesse contribuire con una nuova
       traduzione, questi dovrebbe rinominare foo.pot in jp.po e completare la traduzione. Una
       volta ottenuto questo file, basterà metterlo in man/po4a/po/. Una pagina tradotta apparirà
       come man/translated/foo.jp.1 quando si eseguirà nuovamente po4a (sempre che il contenuto
       tradotto sia sufficientemente completo).

OPZIONI

       -k, --keep
           Minima percentuale di traduzione richiesta affinché il file generato sia mantenuto
           (cioè scritto) su disco. Il valore predefinito è 80, vale a dire che una traduzione
           viene scritta su disco solo se è completa almeno per l'80%.

       -w, --width
           Colonna a cui mandare a capo il file risultante se il formato lo supporta
           (predefinita: 76).

       -h, --help
           Mostra un breve messaggio di aiuto.

       -M, --master-charset
           Set di caratteri dei file contenenti i documenti da tradurre. Tutti i documenti master
           devono usare la stessa codifica.

       -L, --localized-charset
           Set di caratteri dei file contenenti i documenti localizzati. Tutti i documenti
           tradotti useranno la stessa codifica.

       -A, --addendum-charset
           Set di caratteri degli addenda. Tutti gli addenda devono usare la stessa codifica.

       -V, --version
           Mostra la versione del programma ed esce.

       -v, --verbose
           Rende il programma più prolisso.

       -q, --quiet
           Rende il programma meno prolisso.

       -d, --debug
           Mostra delle informazioni di debug

       -o, --option
           Opzioni extra da passare al plugin di formato. Vedere la documentazione per ogni
           plugin per ulteriori informazioni sulle opzioni valide e sul loro significato. Per
           esempio si può passare "-o tablecells" al parser AsciiDoc mentre il parser di testo
           semplice accetta "-o tabs=split".

       -f, --force
           Genera sempre i file POT e PO, anche se po4a non lo considera necessario.

           Il comportamento predefinito (quando non è specificato --force) è il seguente:

               Se il file POT esiste già, viene rigenerato se un documento master o il file di
               configurazione sono più recenti (a meno che non venga fornito --no-update).  Il
               file POT viene scritto anche in un documento temporaneo e po4a verifica che i
               cambiamenti siano veramente necessari.

               Inoltre, una traduzione viene rigenerata solo se il suo documento master, il file
               PO, uno dei suoi addendum o il file di configurazione sono più recenti.  Per
               evitare di provare a rigenerare le traduzioni che non passano il test di soglia
               (vedere --keep), un file con estensione .po4a-stamp può venir creato (vedere
               --stamp).

           Se un documento master include dei file, si dovrebbe usare la flag --force perché il
           tempo di modifica di questi file inclusi non sono tenuti in considerazione.

           I file PO vengono sempre rigenerati in base al POT con msgmerge -U.

       --stamp
           Dice a po4a di creare dei file stamp quando una traduzione non viene generata perché
           essa non raggiunge la soglia. A questi file stamp viene assegnato un nome in accordo
           con il nome previsto del documento tradotto, ed applicata estensione .po4a-stamp.

           Nota: ciò attiva solo la creazione dei file .po4a-stamp. I file stamp vengono sempre
           usati se esistono, e vengono rimossi con l'uso di --rm-translations o quando il file
           viene infine tradotto.

       --no-translations
           Non generare i documenti tradotti, aggiorna solo i file POT e PO.

       --no-update
           Non cambiare i file POT e PO, solo la traduzione può essere aggiornata.

       --keep-translations
           Mantiene i file di traduzione esistenti anche se la traduzione non incontra la soglia
           specificata da --keep.  Questa opzione non crea nuovi file di traduzione con poco
           contenuto, ma salverà le traduzioni esistenti che scadranno a causa dei cambiamenti ai
           file master.

           ATTENZIONE: questo flag cambia il comportamento di po4a in modo piuttosto radicale: i
           file tradotti non verranno aggiornati per nulla fino a quando la traduzione non
           migliorerà. Usare questo flag se si preferisce inviare una documentazione tradotta non
           aggiornata piuttosto che spedire solo una documentazione accurata non tradotta.

       --rm-translations
           Rimuovi i file tradotti (implica --no-translations).

       --no-backups
           Questo flag non fa nulla dalla versione 0.41, e potrebbe venir rimosso dalle prossime
           versioni.

       --rm-backups
           Questo flag non fa nulla dalla versione 0.41, e potrebbe venir rimosso dalle prossime
           versioni.

       --translate-only file-tradotto
           Traduce solo il file specificato.  Può essere utile per velocizzare il processo se un
           file di configurazione contiene molti file. Si noti che questa opzione non aggiorna i
           file PO e POT.  Questa opzione può essere usata più volte.

       --variable var=valore
           Definisce una variabile che verrà espansa nel file di configurazione po4a.  Ogni
           occorrenza di $(var) verrà rimpiazzata da value. Questa opzione può essere usata più
           volte.

       --srcdir SRCDIR
           Imposta la cartella di base per tutti i documenti in ingresso specificati nel file di
           configurazione po4a.

           Se vengono specificati sia destdir che srcdir, i file in ingresso vengono cercati
           nelle seguenti cartelle, in ordine: destdir, la cartella corrente e srcdir. I file in
           uscita vengono scritti su destdir se specificata, o nella cartella corrente.

       --destdir DESTDIR
           Imposta la cartella di base per tutti i documenti in uscita specificati nel file di
           configurazione (vedere --srcdir sopra).

   Ozioni che modificano l'intestazione POT
       --porefs tipo
           Specifica il formato di riferimento. L'argomento type può essere un valore qualsiasi
           tra: never per non produrre nessun riferimento, file per specificare solo il file
           senza il numero di riga, counter per rimpiazzare il numero di riga con un contatore
           incrementale, e full per includere il riferimento completo (valore predefinito: full).

       --wrap-po no|newlines|numero (predefinito: 76)
           Specifica come il file po deve essere mandato a capo. Consente di scegliere tra file
           con righe mandate capo ben formattate e quindi ben leggibili ma che potrebbero portare
           a conflitti in git o file che sono più facili da gestire automaticamente, ma più
           difficili da leggere per le persone.

           Storicamente, la suite gettext riformattava i file po alla 77a colonna per questioni
           estetiche. Questa opzione specifica il comportamento di po4a. Se impostato su un
           valore numerico, po4a manderà a capo il file po a questo numero di colonna e dopo i
           caratteri di a capo nel testo. Se impostato su newlines, po4a dividerà msgstr e msgstr
           solo dopo i caratteri di a capo nel testo. Se impostato su no, po4a non metterà a capo
           nel testo del file po. L'andare a capo nei commenti di riferimento è controllato dagli
           strumenti gettext che vengono usati internamente.

           Si noti che questa opzione non ha alcun impatto sul modo in cui msgstr e msgstr vanno
           a capo, cioè su come i caratteri di a capo vengono aggiunti al contenuto di queste
           stringhe.

       --master-language
           La lingua dei file contenenti il documento da tradurre. Tutti i file devono usare la
           stessa lingua.

       --msgid-bugs-address indirizzo@email
           Imposta l'indirizzo a cui inviare i rapporti di errore per i msgid. Come impostazione
           predefinita, i file POT creati non hanno campi Report-Msgid-Bugs-To.

       --copyright-holder stringa
           Imposta l'intestatario del copyright nell'intestazione del POT. Il valore predefinito
           è "Free Software Foundation, Inc."

       --package-name stringa
           Imposta il nome del pacchetto nell'intestazione del POT. Il valore predefinito è
           "PACKAGE".

       --package-version stringa
           Imposta la versione del pacchetto nell'intestazione del POT. Il valore predefinito è
           "VERSION".

   Opzioni che modificano i file PO
       --msgmerge-opt opzioni
           Opzioni extra per msgmerge(1).

           Nota: $lang verrà estesa alla lingua corrente.

       --no-previous
           Questa opzione rimuove --previous dalle opzioni passate a msgmerge. Ciò è necessario
           per supportare versioni di gettext precedenti alla 0.16.

       --previous
           Questa opzione aggiunge --previous alle opzioni passate a msgmerge. Richiede gettext
           0.16 o successive, ed è attivata come impostazione predefinita.

FILE DI CONFIGURAZIONE

       po4a si aspetta un file di configurazione come argomento. Questo file deve contenere i
       seguenti elementi:

       •   Il percorso ai file PO e l'elenco delle lingue esistenti nel progetto;

       •   Opzionalmente, alcune opzioni globali e i cosidetti alias di configurazione che
           vengono usati come modelli per configurare i singoli file master;

       •   L'elenco dei singoli file master da tradurre, insieme a parametri specifici.

       Tutte le righe contengono un comando tra parentesi quadre, seguito dai suoi parametri.  I
       commenti cominciano con il carattere '#' e continuano fino alla fine della riga. Si può
       fare escape del carattere di fine riga per distribuire un comando su più righe.

       Alcuni esempi completi sono presenti su questa pagina, mentre altri esempi si possono
       trovare nella cartella "t/cfg" della distribuzione dei sorgenti.

   Trovare i file POT e PO
       La soluzione più semplice è indicare il percorso ai file POT e PO nel modo seguente:

        [po4a_paths] man/po/project.pot de:man/po/de.po fr:man/po/fr.po

       Questo specifica prima il percorso verso il file POT, e poi i percorsi ai file PO tedesco
       e francese.

       La stessa informazione può essere scritta come di seguito per ridurre il rischio di errori
       di copia/incolla:

        [po4a_langs] fr de
        [po4a_paths] man/po/project.pot $lang:man/po/$lang.po

       La componente $lang viene automaticamente espansa usando l'elenco lingue fornito,
       riducendo il rischio di errori di copia/incolla quando una nuova lingua viene aggiunta.

       Si possono compattare ulteriormente le stesse informazioni fornendo solamente il percorso
       per la cartella contenente il progetto di traduzione, come di seguito.

        [po_directory] man/po/

       La cartella fornita deve contenere un insieme di file PO, ognuno con nome XX.po dove "XX"
       è il codice ISO 639-1 della lingua usata in questo file. La cartella deve anche contenere
       un singolo file POT, con estensione file ".pot" . Nella prima esecuzione, quest'ultimo può
       essere vuoto ma deve esistere (po4a non può indovinare il nome da usare davanti
       all'estensione).

       Si noti che bisogna scegliere solo uno tra "po_directory" e "po4a_paths". Il primo
       ("po_directory") è più compatto, inoltre riduce il rischio degli errori di copia/incolla,
       ma forza ad usare la struttura progetto e i nomi file previsti. Il secondo ("po4a_paths"),
       è più esplicito, probabilmente più leggibile, e suggerito quando si imposta il primo
       progetto con po4a.

       File PO centralizzati o separati?

       Per impostazione predefinita, po4a produce un singolo file PO per lingua obiettivo, con
       l'intero contenuto del progetto di traduzione. Come il progetto cresce, la dimensione di
       questi file può diventare problematica. Quando si usa weblate, è possibile specificare
       priorità per ogni segmento di traduzione (cioè msgid) in modo tale da far tradurre i più
       importanti per primi. Comunque, alcune squadre di traduzione preferiscono dividere il
       contenuto in più file.

       Per avere un file PO per file master, basta semplicemente usare la stringa $master nel
       nome dei file PO nella riga "[po4a_paths]", come di seguito.

        [po4a_paths] doc/$master/$master.pot $lang:doc/$master/$lang.po

       Con questa riga, po4a produrrà file POT e PO separati per ogni documento da tradurre. Ad
       esempio, se si hanno 3 documenti e 5 lingue, ciò porterà ad avere 3 file POT e 15 file PO.
       Questi file saranno denominati come specificato nel modello "po4a_paths", con $master
       sostituito con il nome di base di ciascun documento da tradurre. In caso di conflitto di
       nomi, è possibile specificare il file POT da utilizzare come segue, con il parametro
       "pot=".

       Questa funzione può essere utilizzata anche per raggruppare più file tradotti nello stesso
       file POT. L'esempio seguente produce solo 2 file POT: l10n/po/foo.pot (contenente il
       materiale di foo/gui.xml) e l10n/po/bar.pot (contenente il materiale di entrambi
       bar/gui.xml e bar/cli.xml).

        [po4a_langs] de fr ja
        [po4a_paths] l10n/po/$master.pot $lang:l10n/po/$master.$lang.po
        [type: xml] foo/gui.xml $lang:foo/gui.$lang.xml pot=foo
        [type: xml] bar/gui.xml $lang:bar/gui.$lang.xml pot=bar
        [type: xml] bar/cli.xml $lang:bar/cli.$lang.xml pot=bar

       In modalità split, po4a crea un compendio temporaneo durante l'aggiornamento PO, per
       condividere le traduzioni tra tutti i file PO. Se due PO hanno traduzioni diverse per la
       stessa stringa, po4a marcherà questa stringa come fuzzy e inserirà entrambe le traduzioni
       in tutti i file PO contenenti questa stringa. Poi, quando un traduttore aggiornerà la
       traduzione e rimuoverà la marcatura fuzzy in un file PO, la traduzione di questa stringa
       verrà aggiornata in ogni file PO automaticamente.

   Specificare i documenti da tradurre
       È necessario elencare anche i documenti che devono essere tradotti. Per ogni file master,
       bisogna specificare l'elaboratore del formato da usare, la posizione del documento
       tradotto da produrre, e opzionalmente qualche configurazione.  Se i nomi dei file
       dovessero contenere degli spazi, a questi ultimi dovranno essere apposti dei caratteri di
       escape oppure i nomi interi dovranno essere essere messi tra virgolette. Ecco un esempio:

        [type: sgml] "doc/my stuff.sgml"  "fr:doc/fr/mon truc.sgml"  de:doc/de/mein\ kram.sgml
        [type: man] script fr:doc/fr/script.1 de:doc/de/script.1
        [type: docbook] doc/script.xml fr:doc/fr/script.xml \
                    de:doc/de/script.xml

       Ma ancora, queste righe complesse sono difficili da leggere e da modificare, per es.
       quando si vuole aggiungere una lingua. È molto più semplice riorganizzare le cose usando
       il modello $lang come di seguito:

        [type: sgml]    doc/my_stuff.sgml $lang:doc/$lang/my_stuff.sgml
        [type: man]     script.1          $lang:po/$lang/script.1
        [type: docbook] doc/script.xml    $lang:doc/$lang/script.xml

   Specificare le opzioni
       Ci sono due tipi di opzioni: le opzioni po4a sono valori predefiniti alle opzioni di riga
       di comando po4a mentre le opzioni di formato vengono usate per cambiare il comportamento
       dei parser di formato. Con una opzione po4a, si può per esempio specificare nel file di
       configurazione che il valore predefinito del parametro a riga di comando --keep è 50%
       invece che 80%. Le opzioni di formato sono documentate nella pagina specifica di ogni
       modulo di elaborazione, per es. Locale::Po4a::Xml(3pm). Si può per esempio passare nostrip
       al parser XML per non eliminare gli spazi attorno alle stringhe estratte.

       È possibile passare queste opzioni per un file master specifico, o persino per una
       specifica traduzione di quel file, usando "opt:" e "opt_XX:" per la lingua "XX".
       Nell'esempio seguente, viene passata l'opzione nostrip al parser XML (per tutte le
       lingue), mentre la soglia viene ridotta a 0% per la traduzione francese (che significa
       perciò che sarà sempre mantenuta).

        [type:xml] toto.xml $lang:toto.$lang.xml opt:"-o nostrip" opt_fr:"--keep 0"

       In ogni caso, questi blocchi di configurazione devono essere posizionati alla fine della
       riga.  La dichiarazione dei file viene prima, poi l'addendum se presente (vedere sotto), e
       solo poi le opzioni. Il raggruppamento dei blocchi di configurazione non è molto
       importante, dato che gli elementi sono internamente concatenati come stringhe. Gli esempi
       seguenti sono tutti equivalenti:

         [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20" opt:"-o nostrip" opt_fr:"--keep 0"
         [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20 -o nostrip" opt_fr:"--keep 0"
         [type:xml] toto.xml $lang:toto.$lang.xml opt:--keep opt:20 opt:-o opt:nostrip opt_fr:--keep opt_fr:0

       Si noti che le opzioni specifiche della lingua non vengono usate durante la costruzione
       del file POT. È per esempio impossibile passare nostrip al parser solo quando crea la
       traduzione francese, perché lo stesso file POT viene usato per aggiornare tutte le lingue.
       Perciò le sole opzioni che possono essere specifiche per una lingua sono quelle che
       vengono usate durante la produzione della traduzione, come l'opzione "--keep".

       Alias di configurazione

       Per passare le stesse opzioni a più file, è meglio definire un alias di tipo come di
       seguito. Nel prossimo esempio, "--keep 0" viene passata ad ogni traduzione italiana usando
       il tipo "test", che è un'estensione del tipo "man".

         [po4a_alias:test] man opt_it:"--keep 0"
         [type: test] man/page.1 $lang:man/$lang/page.1

       Si può anche estendere un tipo esistente riutilizzando lo stesso nome per l'alias come di
       seguito. Ciò non viene interpretato come una definizione erroneamente ricorsiva.

         [po4a_alias:man] man opt_it:"--keep 0"
         [type: man] man/page.1 $lang:man/$lang/page.1

       Opzioni predefinite globali

       Si può anche usare righe di "[options]" per definire opzioni che devono essere usate per
       tutti i file, indipendentemente dal loro tipo.

         [options] --keep 20 --option nostrip

       Come con le opzioni a riga di comando, si possono abbreviare i parametri passati nel file
       di configurazione:

         [options] -k 20 -o nostrip

       Priorità delle opzioni

       Le opzioni di ogni sorgente vengono concatenate, assicurando così che i valori predefiniti
       possano essere facilmente ridefiniti da opzioni più specifiche. L'ordine è il seguente:

       •   Le righe "[options]" forniscono i valori predefiniti che possono essere ridefiniti da
           qualsiasi altra sorgente.

       •   Vengono poi usati gli alias dei tipi. Le impostazioni specifiche per la lingua
           sovrascrivono quelle applicabili a tutte le lingue.

       •   Le impostazioni specifiche ad ogni dato file master sovrascrivono sia quelle
           predefinite che quelle che provengono dagli alias dei tipi. In questo caso inoltre, le
           impostazioni specifiche della lingua sovrascrivono quelle globali.

       •   Infine, i parametri forniti sulla riga di comando di po4a sovrascrivono qualsiasi
           impostazione proveniente dal file di configurazione.

       Esempio

       Ecco un esempio che mostra come commentare gli spazi e il virgolettato:

        [po_directory] man/po/

        [options] --master-charset UTF-8

        [po4a_alias:man] man opt:"-o \"mdoc=NAME,SEE ALSO\""
        [type:man] t-05-config/test02_man.1 $lang:tmp/test02_man.$lang.1 \
                   opt:"-k 75" opt_it:"-L UTF-8" opt_fr:--verbose

   Addendum: aggiunta di contenuto extra nella traduzione
       Se si vuole aggiungere una sezione extra alla traduzione, per esempio per dare credito al
       lavoro del traduttore, allora è necessario definire un addendum alla riga che difinisce il
       file master. Fare riferimento alla pagina po4a(7) per ulteriori dettagli sulla sintassi
       dei file addendum.

        [type: pod] script fr:doc/fr/script.1 \
                    add_fr:doc/l10n/script.fr.add

       Si può usare anche i modelli di lingua nel modo seguente:

        [type: pod] script $lang:doc/$lang/script.1 \
                    add_$lang:doc/l10n/script.$lang.add

       Se un file addendum fallisce nell'applicazione, la traduzione viene scartata.

       Modificatori per la dichiarazione dell'addendum

       I modificatori dell'addendum possono semplificare il file di configurazione nel caso in
       cui non tutte le lingue forniscano un addendum, o quando l'elenco degli addenda cambia da
       una lingua all'altra. Il modificatore è un singolo carattere posizionato prima del nome
       del file.

       ? Include addendum_path se questo file esiste, altrimenti non fa nulla.

       @ addendum_path non è un un addendum normale ma un file contenente una lista di addendum,
         uno per riga.  Ogni addendum può essere preceduto da modificatori.

       ! percorso_addendum viene scartato, non viene caricato e non verrà caricato da
         nessun'altra successiva specifica di addendum.

       Il seguente include un addendum in ogni lingua, ma solo se questo esiste. Non viene
       generato nessun errore se l'addendum non esiste.

        [type: pod] script $lang:doc/$lang/script.1  add_$lang:?doc/l10n/script.$lang.add

       Il seguente include un elenco di addendum per ogni lingua:

        [type: pod] script $lang:doc/$lang/script.1  add_$lang:@doc/l10n/script.$lang.add

   Filtro delle stringhe tradotte
       Talvolta si vorrebbe nascondere alcune stringhe dal processo di traduzione. A tale scopo,
       si può passare un parametro "pot_in" al file master per specificare il nome del file da
       usare invece del master reale quando si crea il file POT. Ecco un esempio:

         [type:docbook] book.xml          \
                 pot_in:book-filtered.xml \
                 $lang:book.$lang.xml

       Con questa impostazione, le stringhe da tradurre verranno estratte da book-filtered.xml
       (che deve essere prodotto prima di chiamare po4a) mentre i file tradotti verranno creati
       da book.xml. Di conseguenza, qualsiasi stringa che fa parte di book.xml ma non di
       book-filtered.xml non verrà inclusa nei file PO, impedendo ai traduttori di fornire una
       traduzione per essi. Quindi queste stringhe non verranno modificate durante la produzione
       dei documenti tradotti. Questo naturalmente riduce il livello di traduzione, quindi si
       potrebbe aver bisogno dell'opzione "--keep" per assicurarsi che il documento venga
       prodotto comunque.

VEDERE ANCHE

       po4a-gettextize(1), po4a(7).

AUTORI

        Denis Barbier <barbier@linuxfr.org>
        Nicolas François <nicolas.francois@centraliens.net>
        Martin Quinson (mquinson#debian.org)

TRADUZIONE

        Danilo Piazzalunga <danilopiazza@libero.it>
        Marco Ciampa <ciampix@posteo.net>

COPYRIGHT E LICENZA

       Copyright 2002-2023 by SPI, inc.

       Questo programma è software libero; è lecito ridistribuirlo o modificarlo secondo i
       termini della licenza GPL v2.0 o successive (vedere il file COPYING).