Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Programmazione/Linguist"
Differenze tra le versioni 49 e 50
Versione 49 del 21/04/2018 16.34.13
Dimensione: 13158
Autore: wilecoyote
Commento:
Versione 50 del 22/04/2018 14.24.22
Dimensione: 13842
Autore: wilecoyote
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 39: Linea 39:
 lconvert --drop-translations nomepacchetto_sp.qm -o nomepacchetto_untraslated.ts  lconvert --drop-translations nomepacchetto_sp.qm -o nomepacchetto_untranslated.ts
Linea 50: Linea 50:
 ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Grandi/info.png,,center)>> ||<style="padding:0.5em; border:none;">Ad esempio, il pacchetto ''qpdfview'' si trova nella cartella '''qpdfview''' del repository '''Universe''' e l'ultima versione disponibile è la '''0.4.14-1build1'''. Appuntarsi pertanto '''Universe''' come repository, '''qpdfview''' come cartella e '''0.4.14-1build1''' come versione. ||  ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Grandi/info.png,,center)>> ||<style="padding:0.5em; border:none;">Ad esempio, il pacchetto ''qpdfview'' si trova nella cartella '''qpdfview''' del repository '''Universe''' e l'ultima versione disponibile è la '''0.4.14-1build1'''. Appuntarsi pertanto '''Universe''' come repository, '''qpdfview''' come componente e '''0.4.14-1build1''' come versione. ||
Linea 60: Linea 60:
   0. Copiare nella propria '''Home''' il file di traduzione `nomepacchetto_sp.ts` in una lingua diversa da quella in cui si intende tradurre.    0. Copiare nella propria '''Home''' il file di traduzione `nomepacchetto_sp.ts` in una lingua diversa da quella in cui si intende tradurre, scegliendo quella con più stringhe da tradurre.
Linea 63: Linea 63:
   lconvert --drop-translations nomepacchetto_sp.ts -o nomepacchetto_untraslated.ts    lconvert --drop-translations nomepacchetto_sp.ts -o nomepacchetto_untranslated.ts
Linea 68: Linea 68:
##== Mancanza di stringhe da tradurre == == Mancanza di stringhe da tradurre ==
Linea 70: Linea 70:
##Nel caso in cui installato il file tradotto `nomepacchetto_sp.ts` nel programma vengano ## a mancare delle traduzioni, può essere utile provare a creare un file ##`nomepacchetto_untraslated.ts` direttamente dal sorgente, poiché talora i file traduzione ## non sono al passo con lo sviluppo del programma. Nel caso in cui dopo aver installato il file tradotto `nomepacchetto_sp.ts` nel sistema, avviando il programma vengano a mancare delle traduzioni, può essere utile provare a creare un file `nomepacchetto_untranslated.ts` direttamente dal sorgente, poiché talora i file traduzione non sono al passo con lo sviluppo del programma.

Per creare il file `nomepacchetto_untranslated.ts`, dopo aver decompresso il sorgente come spiegato al paragrafo [[#Da sorgente | precedente]], occorre spostarsi nella cartella genitore e dare il seguente comando:{{{
   lupdate nomesorgente-versione -ts nomepacchetto_untranslated.ts
}}}

 ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Grandi/info.png,,center)>> ||<style="padding:0.5em; border:none;">Ad esempio, per il pacchetto ''qpdfview'' di cui al suggerimento precedente il comando diventa `lupdate qpdfview_0.4.14 -ts qpdfview_untranslated.ts`. ||
Linea 87: Linea 93:
 0. Avviare il '''[[AmbienteGrafico/FileManager|file manager]]''' e spostarsi nella cartella contenente il file `nomeprogramma_untraslated.ts` precedentemente trovato o creato.  0. Avviare il '''[[AmbienteGrafico/FileManager|file manager]]''' e spostarsi nella cartella contenente il file `nomeprogramma_untranslated.ts` precedentemente trovato o creato.
Linea 89: Linea 95:
 0. Fare clic su `nomeprogramma_untraslated.ts` per avviare '''Linguist'''.  0. Fare clic su `nomeprogramma_untranslated.ts` per avviare '''Linguist'''.

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Il programma Linguist è un editor specializzato per tradurre i file con estensione .ts. Questi file vengono usati per tradurre applicazioni in cui è disponibile il supporto Qt.

In questa guida, sostituire sempre a «nomepacchetto» il nome del pacchetto da tradurre, a «nomelingua» il nome inglese della lingua e a «sp» la sigla della lingua.

Installazione

Installare a seconda delle proprie esigenze i pacchetti:

Trovare i file .ts e azzerare le traduzioni

I file con estensione .ts possono essere trovati:

  • se installati, nelle cartelle dei singoli programmi come file .qm da convertire in .ts.

  • nei file distribuiti con il codice sorgente.

Per trovare i file con estensione .ts e .qm si può far ricorso a Synaptic.

Programmi installati

I file delle traduzioni dei pacchetti installati nel sistema sono in formato .qm e devono pertanto essere convertiti in .ts. Per cercarli nel file system nella propria o altre lingue e convertirli in .ts, seguire questi passaggi:

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

  2. Fare clic con il tasto destro del mouse sul nome del pacchetto per aprire il menu contestuale e cliccare su Proprietà, poi cliccare sulla scheda File installati.

  3. Leggere e appuntarsi il percorso ai file con estensione .qm. Se non sono presenti file con questa estensione, saltare a questo paragrafo.

  4. Avviare il file manager al percorso individuato nel punto precedente, poi copiare il file nomepacchetto_sp.qm nella propria Home.

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

  6. Convertire il file .qm in file .ts ed azzerare le traduzioni digitando nel terminale i seguenti comandi:

     lconvert --drop-translations nomepacchetto_sp.qm -o nomepacchetto_untranslated.ts

Da sorgente

Per trovare il file nomepacchetto_untranslated.ts nei sorgenti nei repository, seguire i seguenti passaggi:

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

  2. Fare clic con il tasto destro del mouse sul nome del pacchetto per aprire il menu contestuale e cliccare su Proprietà, poi cliccare sulla scheda Comune.

  3. Individuare e appuntare il nome del componente dei repository (Sezione) e la versione del pacchetto (Ultima versione disponibile). Ignorare eventualmente i numeri presenti prima del carattere «:».

    Ad esempio, il pacchetto qpdfview si trova nella cartella qpdfview del repository Universe e l'ultima versione disponibile è la 0.4.14-1build1. Appuntarsi pertanto Universe come repository, qpdfview come componente e 0.4.14-1build1 come versione.

  4. 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 qpdfview di cui al suggerimento precedente scaricare il file qpdfview_0.4.14.orig.tar.gz.

  5. Estrarre il contenuto dei file scaricati nella propria Home, individuando il file nomepacchetto_untranslated.ts. Se non è presente alcun file con questo nome, seguire i seguenti passaggi:

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

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

    2. Per azzerare le traduzioni digitare nel terminale il seguente comando:

         lconvert --drop-translations nomepacchetto_sp.ts -o nomepacchetto_untranslated.ts

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

Mancanza di stringhe da tradurre

Nel caso in cui dopo aver installato il file tradotto nomepacchetto_sp.ts nel sistema, avviando il programma vengano a mancare delle traduzioni, può essere utile provare a creare un file nomepacchetto_untranslated.ts direttamente dal sorgente, poiché talora i file traduzione non sono al passo con lo sviluppo del programma.

Per creare il file nomepacchetto_untranslated.ts, dopo aver decompresso il sorgente come spiegato al paragrafo precedente, occorre spostarsi nella cartella genitore e dare il seguente comando:

   lupdate nomesorgente-versione -ts nomepacchetto_untranslated.ts
  • Ad esempio, per il pacchetto qpdfview di cui al suggerimento precedente il comando diventa lupdate qpdfview_0.4.14 -ts qpdfview_untranslated.ts.

Primo avvio

  1. Aprire un terminale e digitare il seguente comando:

     linguist
  2. Cliccare su Phrases → Open Phrase Book... e selezionare il file .qph del dizionario della lingua verso cui si intende tradurre, allocato in:

    • /usr/share/qt4/phrasebooks per applicazioni in Qt4.

    • /usr/share/qt5/phrasebooks per applicazioni in Qt5.

Se si vuole tradurre più applicazioni usando Qt Linguist, è possibile riusare le proprie traduzioni copiando il file dizionario nomelingua.qph nella propria Home e selezionarli durante questo passaggio.

Tradurre con Linguist

  1. Avviare il file manager e spostarsi nella cartella contenente il file nomeprogramma_untranslated.ts precedentemente trovato o creato.

  2. Fare clic su nomeprogramma_untranslated.ts per avviare Linguist.

  3. Nella finestra apertasi in automatico selezionare nella sezione Target language le opzioni:

    • Language → nomelingua, sostituendo a nomelingua la lingua verso cui si vuole tradurre;

    • Country/Region → nomeregione, sostituendo a nomeregione la regione desiderata.

    Nel caso in cui non venga mostrata la finestra per le impostazioni della lingua, fare clic su Edit → Translations File Settings... per visualizzarla.

  4. Selezionare View → Views e mettere la spunta su Context, Strings e Phrases and guesses.

  5. Selezionare Validation e mettere la spunta su Accelerations, Ending Punctuation e Place Marker Match.

  6. Selezionare Edit → Batch Translations... e mettere la spunta sulle tre opzioni in alto, raggruppate in Options, poi cliccare su Run e chiudere la finestra cliccando su Cancel.

  7. Selezionare il gruppo di stringhe che si vuole tradurre in Context e selezionare la riga da tradurre in Strings.

  8. Digitare la traduzione in nomelingua translation, poi fare clic su Ctrl + Enter, dove al posto di nomelingua sarà visualizzato il nome della lingua verso cui si sta traducendo.

  9. Se si è allocato il file dizionario nomelingua.qph nella propria Home, dopo ogni traduzione fare clic su Ctrl + T in modo di aggiungere la traduzione al dizionario.

  10. Finita la traduzione, per salvare il file in formato .ts fare clic su File → Save As....

  11. Nella finestra apertasi selezionare:
    • in Filter il Qt translation sources;

    • in Name sostituire il 'untranslated' con la sigla della lingua;

    infine premere Save.

  12. Per creare il file .qm selezionare File → Release As....

  13. Nella finestra apertasi selezionare:
    • in Filter il Qt message file for released applications

    infine premere Save.

Aggiungere le proprie traduzioni al dizionario permette di riusarle per tradurre altre stringhe, semplicemente ripetere ogni 3 o 4 gruppi di stringhe tradotte il punto 3.

Allocazione delle traduzioni

Per controllare il percorso di allocazione delle traduzioni in formato .qm del software che si sta traducendo, seguire i seguenti passaggi:

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

  2. Fare clic con il tasto destro del mouse sul nome del pacchetto per aprire il menu contestuale e cliccare su Proprietà, poi spostarsi nella scheda File installati.

  3. Leggere e appuntarsi il percorso ai file .qm. Se non sono presenti file con tale estensione:

    • se la cartella /usr/share/nomeprogramma/translations esiste, procedere con i passi successivi della guida;

    • se la cartella /usr/share/nomeprogramma/translations non esiste, crearla digitando nel terminale i seguenti comandi:

        sudo mkdir /usr/share/nomeprogramma/translations

Per evitare che un aggiornamento cancelli le traduzioni è consigliabile allocare i file tradotti in /usr/local e creare un collegamento simbolico alla directory richiesta, spostando l'eventuale file .qm preesistente come backup. Per farlo, digitare nel terminale i seguenti comandi:

I comandi seguenti sono riferiti all'allocazione più comune, ovvero /usr/share/nomeprogramma/translations. Se l'allocazione delle traduzioni individuata nei punti precedenti fosse diversa modificare di conseguenza i passi successivi.

  1. Se presente, spostare il file .qm preesistente:

     sudo mv /usr/share/nomeprogramma/translations/nomeprogramma_sp.qm /usr/share/nomeprogramma/translations/nomeprogramma_sp.qm
  2. Creare la directory dove allocare:

     sudo mkdir -p /usr/local/share/nomeprogramma/translations
  3. Allocare il file .qm:

     sudo cp nomeprogramma_sp.qm /usr/local/share/nomeprogramma/translations
  4. Creare il collegamento simbolico:

     sudo ln -s /usr/local/share/nomeprogramma/translations/nomeprogramma_sp.qm /usr/share/nomeprogramma/translations

Ulteriori risorse


CategoryProgrammazione