Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati


Guida verificata con Ubuntu: 20.04 22.04 24.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Poedit è un editor specializzato per elaborare i file con estensione .po. Questi file vengono usati per la traduzione di applicazioni e programmi per i quali sia disponibile il supporto Gettext.

Per semplificare la guida, sono di seguito utilizzati nomi generici. Pertanto sostituire sempre «nomefile» con il nome del pacchetto da tradurre e «sigla» con la sigla della lingua prescelta (ad esempio audacious e it).

Installazione

Installare il pacchetto poedit.
Al termine dell'installazione sarà possibile avviare il programma.

Se assente, in Ubuntu e derivate, installare il pacchetto synaptic, un gestore pacchetti che verrà utilizzato per reperire i file .po e .mo relativi alle traduzioni nei successivi passaggi.

Fino a Kubuntu 22.04 è preinstallato il Gestore Pacchetti Muon, che svolge le stesse funzioni.

Per aiutarsi nelle traduzioni, può venire utile usare dei dizionari di traduzione installati sul computer, consultabili tramite il programma Stardict.

Trovare i file .po ed azzerare la traduzione

I file con estensione .po possono essere trovati:

  • se installati, nelle cartelle dei singoli programmi come file .mo da convertire in .po.

  • nei file distribuiti con il codice sorgente, in formato .pot o .po.

Per agevolare il lavoro si consiglia di mantenere ordinata la propria Home creando un'apposita cartella dedicata alle traduzioni.

Programmi installati

I file delle traduzioni dei pacchetti installati nel sistema sono in formato .mo e devono pertanto essere convertiti in .po.
Seguire questi passaggi per cercare all'interno del file system i file .mo (relativi alla propria lingua o ad altre) e per convertirli in formato .po:

Ubuntu e derivate escluso Kubuntu

  1. Avviare il programma Synaptic e cercare il pacchetto desiderato.

  2. Fare clic sul nome del pacchetto e selezionare la scheda File installati.

  3. Leggere e appuntarsi il percorso ai file con estensione .mo. Se non sono presenti file con questa estensione, interrompere la procedura e seguire le indicazioni di questo paragrafo.

Kubuntu

  1. Avviare il programma Muon e cercare il pacchetto desiderato

  2. Fare clic sul nome del pacchetto per far apparire la schermata inferiore e selezionare la scheda File installati.

  3. Leggere e appuntarsi il percorso ai file con estensione .mo. Se non sono presenti file con questa estensione, interrompere la procedura e seguire le indicazioni di questo paragrafo.

Convertire il file .mo in .po

  1. Avviare il file manager al percorso individuato nel punto precedente, poi copiare il file nomefile.mo nella propria Home.

  2. Spostarsi tramite riga di comando nella cartella dove è stato copiato il file.

  3. Convertire il file .mo in file .po digitando nel terminale il seguente comando:

    msgunfmt -o nomefile.po < nomefile.mo
  4. Qualora si volesse rendere le stringhe già tradotte presenti nel file convertito allo stato fuzzy, per poter scegliere se correggere o mantenere le traduzioni precedenti prima di salvare, digitare nel terminale il comando:

    msgattrib --set-fuzzy nomefile.po -o nomefile.po

Da sorgente

Per trovare il file nomefile.po nei sorgenti nei repository, seguire i seguenti passaggi:

Ubuntu e derivate basate su librerie GTK

Per individuare nome e versione della sorgente leggere la seguente pagina.

Kubuntu e derivate basate su librerie Qt

Per individuare nome e versione della sorgente leggere la seguente pagina.

  • A titolo di esempio, si consideri il pacchetto blueman, che si trova nella cartella blueman del repository Universe e l'ultima versione disponibile è la 2.05-1ubuntu1. Appuntarsi pertanto Universe come repository, blueman come componente e 2.05 come versione.


  1. Cercare e scaricare i sorgenti da questa pagina, avendo cura di:

    • selezionare il componente corretto (all'interno i file sono divisi in directory in ordine alfabetico);

    • selezionare la versione corretta;
    • scaricare il file compresso:

      • nomepacchetto_versione.orig.<estensione>, se disponibile. Ignorare eventuali caratteri a destra del segno «-» in versione.

      • nomepacchetto_versione.<estensione>, altrimenti.

      dove al posto di versione va considerata la versione individuata nei punti precedenti.

    Ad esempio, per il pacchetto blueman di cui al suggerimento precedente scaricare il file blueman_2.05.orig.tar.gz.

  2. Estrarre il contenuto dei file scaricati nella propria Home ed individuare la cartella, solitamente di nome po, spesso allocate all'interno della cartella genitore src, contenente il file sigla.po o nomefile.pot. Se non è presente alcun file con questo nome, seguire i seguenti passaggi:

    • Copiare nella propria Home il file di traduzione sigla.po in una lingua diversa da quella in cui si intende tradurre, scegliendo quella con più stringhe da tradurre.

    • Spostarsi tramite riga di comando nella cartella dove è stato copiato il file.

    • Per porre a stato fuzzy la traduzione presente, evitando di salvare traduzioni in altre lingue, digitare nel terminale il seguente comando:

      msgattrib --set-fuzzy nomefile.po -o nomefile.po
  3. Nei sorgenti molto grandi, o con più file .po o .pot da tradurre, può risultare difficile individuare la cartella, o le cartelle, in cui sono allocati i file da tradurre .po o .pot, in codesto caso spostarsi tramite [[AmministrazioneSistema/Terminale nella cartella ove estratto il sorgente e digitare il seguente comando:

    find . -type f -name '*.po'
  4. Seguire ciascun percorso ed estrarre il rispettivo file sigla.po o nomefile.pot.

  5. Se non è presente né il file sigla.po nella lingua cercata, né il file nomefile.pot, seguire le istruzioni dei seguenti passaggi.

  6. Qualora la directory non contienga nessun file .pot o .po e sia presente il file POTFILES.in, per creare il file .pot installare il pacchetto Intltool e digitare nel terminale il seguente comando:

    intltool-update --pot

Quest'ultima procedura è utile anche caso in cui dopo aver installato il file tradotto nomefile.mo nel sistema, avviando il programma vengano a mancare delle traduzioni. In tal caso può essere utile provare a creare un file nomefile.mo direttamente dal sorgente, poiché talora i file traduzione non sono al passo con lo sviluppo del programma.

Le traduzioni dei pacchetti ufficialmente supportati vengono distribuite con i pacchetti language-pack-it, language-pack-gnome-it e kde-l10n-it.

I nomi dei sorgenti delle librerie che iniziano con «lib» vanno cercati nelle corrispondenti voci «lib» del repository.

Primo avvio

Configurazione Base

È possibile accedere alle impostazioni del programma seguendo il menu Modifica → Preferenze.
Per semplificare l'utilizzo del programma può risultare utile spuntare all'interno della tab Generale le voci:

  • Compila automaticamente il file MO al salvataggio per creare automaticamente il file .mo.

  • Controllo ortografico per semplificare il controllo e la creazione della traduzione.

Inoltre nel menu Visualizza può risultare utile spuntare le voci a seconda delle proprie esigenze:

  • Visualizza ID elemento per visualizzare il numero identificativo delle stringhe.

  • Prima le voci con errori e/o Prima voci non tradotte per visualizzare raggruppate per prime le stringhe per le quali è necessarie correzioni o traduzioni.

Creare Memoria di Traduzione

Ubuntu 16.04 LTS e successivi

Se si è già creata una Memoria di traduzione per poedit usato in Ubuntu 18.04 o successivi, è possibile copiare la medesima in una versione successiva, ad esempio da Ubuntu 18.04 a Ubuntu 22.04. Per farlo copiare la cartella ~/.poedit da un sistema all'altro.

Per creare la Memoria di traduzione (TM) procedere come descritto di seguito.

  1. Scaricare i pacchetti sorgente in formato compresso contenenti le traduzioni già pronte all'ultima versione dai repository ufficiali, dalla sezione main i pacchetti language-pack-<sigla>-base e language-pack-gnome-<sigla>-base, dalla sezione universe il pacchetto kde-l10n-<sigla>.

  2. Creare nella propria Home una cartella di nome PO-<sigla> (PO-it per l'italiano').

  3. Estrarre in essa i file .po contenuti nei file scaricati.

  4. Fare clic su Modifica → Preferenze, selezionare la scheda MT e fare clic su Impara dai file....

  5. Navigare e selezionare la cartella PO-<sigla> (PO-it per l'italiano').

  6. Selezionare tutti i file nomefile.po e fare clic su Apri.

Ubuntu 14.04 LTS e precedenti

Per creare la Memoria di traduzione (TM) procedere come descritto di seguito.

  1. Fare clic su Modifica → Preferenze, selezionare la scheda Memoria di traduzione (MT), fare clic su Aggiungi e selezionare sigla nella finestra (it per l'italiano).

  2. Fare clic su Genera database e quindi sulla seconda icona a sinistra Nuovo elemento.

  3. Digitare il percorso: /usr/share/locale-langpack/sigla/LC_MESSAGES (/usr/share/locale-langpack/it/LC_MESSAGES per l'italiano).

  4. Fare clic nuovamente su Nuovo elemento e digitare il percorso digitare /usr/share/locale/sigla/LC_MESSAGES (/usr/share/locale/it/LC_MESSAGES per l'italiano).

  5. Fare clic su Successivo e poi su Fine.

  6. Ripetere eventualmente la procedura con una sigla d'un altro linguaggio differente, nel caso si voglia tradurre in ulteriori linguaggi.

Se sono presenti molti file da tradurre la procedura può richiedere molto tempo.

Ponendo la spunta su Traduci automaticamente all'aggiornamento del catalogo nella sezione Memoria di traduzione (TM), si aggiornerà il database delle traduzioni.

Traduzione

Per tradurre i file è sufficiente fare clic sui file stessi, dopo aver aperto un file manager nella cartella in cui sono presenti. Verrà avviato così Poedit.

Seguire quindi la procedura come indicato di seguito, in base all'estensione del file (.pot o .po).

File .pot

  1. Fare clic su Creare una nuova traduzione e selezionare la lingua desiderata, ad esempio italiano (Italia).

  2. Seguire il menu Catalogo → Proprietà e compilare i campi Traduttori e Indirizzo email dei traduttori. Quindi salvare con nome.

  3. Seguire il menu Catalogo → Proprietà.

  4. Scegliere nei campi relativi ai caratteri la codifica UTF-8 (consigliato).

    Se il file di traduzione verrà distribuito si raccomanda di compilare i campi Traduttori ed Indirizzo email dei traduttori con dati reali affinché gli utenti possano segnalare eventuali problemi.

  5. Procedere con la traduzione.

  6. Terminata la traduzione, fare clic su File → Salva come... e salvare con lo stesso nome ed estensione .po, in modo tale da creare anche il relativo file .mo.

File .po

  1. Procedere con la traduzione.

  2. Terminata la traduzione, fare clic su Salva, in modo tale da aggiornare anche il corrispondente file .mo.

Istruzioni

  1. Seguire il menu Catalogo → Riempi traduzioni mancanti aprendole dalla MT.

  2. A seconda del colore delle stringhe, procedere come indicato di seguito:
    • Colore blu:
      1. Nella lista in alto fare clic sulla stringa blu per selezionarla.
      2. Nella finestra in basso digitare la traduzione.
      3. Ripetere per ciascuna stringa.
    • Colore arancio:
      1. Nella lista in alto fare clic sulla stringa arancio per selezionarla.
      2. Per accettare la traduzione suggerita fare clic su Non pronta.

      3. Per visualizzare eventuali ulteriori traduzioni fare clic destro sulla stessa stringa.
      4. Per accettare la traduzione alternativa suggerita fare clic sulla stessa.
      5. Per cancellare la traduzione precedente, selezionarla cliccando nella sezione Traduzione in basso e premere i tasti Ctrl + K.

      6. Digitare la propria traduzione.
      7. Ripetere per ciascuna stringa.
    • Colore nero:
      1. Per cancellare la traduzione precedente, selezionarla cliccando nella sezione Traduzione in basso e premere i tasti Ctrl + K.

      2. Digitare la propria traduzione.
      3. Ripetere per ciascuna stringa.

Allocazione delle traduzioni

Le seguenti indicazioni sono quelle usate più comunemente, ci sono però applicazioni che impostano allocazioni proprie. Adeguare perciò nei seguenti comandi i percorsi alle cartelle.

Una volta tradotti i file, vanno allocati nelle seguenti cartelle:

  • /usr/share/locale-langpack/sigla/LC_MESSAGES (in sistemi in lingua italiana /usr/share/locale-langpack/it/LC_MESSAGES) per i pacchetti supportati ufficialmente da Ubuntu.

  • /usr/share/locale/sigla/LC_MESSAGES (in sistemi in lingua italiana /usr/share/locale/it/LC_MESSAGES) per i pacchetti non supportati ufficialmente da Ubuntu.

I regolari aggiornamenti di sistema potrebbero sovrascrivere le traduzioni precedentemente ottenute.
Per evitare questo inconveniente è consigliato: utilizzare la directory /usr/local per allocare i file tradotti, creare un collegamento simbolico alla directory richiesta, creare un backup dell'eventuale file .mo preesistente. Per eseguire tali operazioni utilizzare i comandi di seguito indicati, digitandoli in un terminale:

Sostituire sempre «sigla» con la sigla della lingua prescelta (ad esempio per l'italiano it).

  • Per creare un backup dell'eventuale file .mo preesistente:

    sudo mv /usr/share/locale-langpack/sigla/LC_MESSAGES/nome.mo /usr/share/locale-langpack/sigla/LC_MESSAGES/nome.mo~

    oppure

    sudo mv /usr/share/locale/sigla/LC_MESSAGES/nome.mo /usr/share/locale/sigla/LC_MESSAGES/nome.mo~
  • Per creare la directory dove allocare le traduzioni:

    sudo mkdir -p /usr/local/share/locale-langpack/sigla/LC_MESSAGES

    oppure

    sudo mkdir -p /usr/local/share/locale/sigla/LC_MESSAGES
  • Per allocare il file .mo:

    sudo cp nome.mo /usr/local/share/locale-langpack/sigla/LC_MESSAGES/

    oppure

    sudo cp nome.mo /usr/local/share/locale/sigla/LC_MESSAGES/
  • Per creare il collegamento simbolico:

    sudo ln -s /usr/local/share/locale-langpack/sigla/LC_MESSAGES/nome.mo /usr/share/locale-langpack/sigla/LC_MESSAGES 

    oppure

    sudo ln -s /usr/local/share/locale/sigla/LC_MESSAGES/nome.mo /usr/share/locale/sigla/LC_MESSAGES

Ulteriori risorse


CategoryProgrammazione