## page was renamed from wilecoyote/provawcts
#format wiki
#LANGUAGE it
<
>
<>
<>
= Introduzione =
'''Linguist''' è un [[Ufficio/EditorDiTesto|editor]] specializzato per elaborare i file con estensione `.ts`. Questi file vengono usati per la traduzione di applicazioni e programmi per i quali sia disponibile il supporto [[https://it.wikipedia.org/wiki/Qt_(toolkit)|Qt]].
{{{#!wiki note
In questa guida, sostituire sempre a «`nomepacchetto`» il nome del pacchetto da tradurre, a «`nomelingua`» il nome inglese della lingua e a «`sigla`» la sigla della lingua.}}}
{{{#!wiki tip
Non sempre il nome del pacchetto da tradurre segue la sintassi `nomepacchetto_sigla.qm`. Per evitare errori, leggere e prendere nota di come sono nominati i pacchetti traduzione del programma nelle altre lingue, adoperando quindi la stessa sintassi.}}}
= Installazione =
A seconda delle proprie esigenze e rilascio di '''Ubuntu''' in uso, [[AmministrazioneSistema/InstallareProgrammi|installare]] i pacchetti:
* [[apt://linguist-qt6 |linguist-qt6]] e [[apt://qt6-l10n-tools|qt6-l10n-tools]] per applicazioni '''Qt6''' (rilasci da '''24.04''');
* [[apt://qttools5-dev-tools | qttools5-dev-tools ] per applicazioni '''Qt5''' nei rilasci fino a '''22.04'''.
{{{#!wiki note
Fino al rilascio '''22.04''' è predefinita l'installazione della suite '''Qt5'''; dal rilascio '''24.04''' è predefinita l'installlazione della suite '''Qt6'''.
}}}
== Uso con Qt4 ==
{{{#!wiki important
La versione '''Qt4''' non è più supportata e non riceve più aggiornamenti.
Non è raccomandato d'essere usata in produzione, ma solo allo scopo di usare driver non aggiornati per dispositivi antiquati, come stampanti, schede videografiche, ecc., nel caso non esistano alternative più recenti supportate.}}}
{{{#!wiki note
L'applicazione '''Linguist''' basata sulla versione '''Qt4''' non è più disponibile nei [[Repository|repository]] ufficiali, ma solo tramite il [[https://launchpad.net/~ubuntuhandbook1/+archive/ubuntu/ppa|PPA ubuntuhandbooky]] per le release di '''Ubuntu 20.04''' e '''22.04'''.}}}
{{{#!wiki tip
Aggiungendo il suddetto '''ppa''', è possibile che venga notificata la disponibilità di versioni più recenti dei pacchetti dipendenze del driver già installati, nonché la disponibilità di scaricare ulteriori pacchetti consigliati dal driver.}}}
0. Installare il '''ppa''' dedicato digitando nel [[AmministrazioneSistema/Terminale|terminale]] il comando:{{{
sudo add-apt-repository ppa:ubuntuhandbook1/ppa
}}}
0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] i pacchetti [[apt://qt4-dev-tools qt4-linguist-tools qt4-designer | qt4-dev-tools qt4-linguist-tools qt4-designer]].
= Preliminari =
Se assente, in '''Ubuntu''' e [[https://www.ubuntu-it.org/derivate|derivate]], escluso '''Kubuntu''' e '''Lubuntu''', [[AmministrazioneSistema/InstallareProgrammi|installare]] il pacchetto [[apt://synaptic| synaptic]], un '''[[AmministrazioneSistema/InstallareProgrammi/GestorePacchetti|gestore pacchetti]]''' che verrà utilizzato per reperire i file `.ts` e `.qm` relativi alle traduzioni nei successivi passaggi.
In '''Kubuntu''' e in '''Lubuntu''' è preinstallato il '''[[AmministrazioneSistema/InstallareProgrammi/GestorePacchettiMuon|gestore pacchetti Muon]]''', che svolge le stesse funzioni ma con nomi differenti.
{{{#!wiki note
Per aiutarsi nelle traduzioni, può venire utile usare dei dizionari di traduzione installati sul computer, consultabili tramite il programma [[Ufficio/Stardict|Stardict]].}}}
= Trovare i file .ts e azzerare la traduzione =
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 [[https://it.wikipedia.org/wiki/Codice_sorgente|codice sorgente]].
{{{#!wiki tip
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 `.qm` e devono pertanto essere convertiti in `.ts`. Per cercarli nel [[AmministrazioneSistema/Filesystem|file system]] nella propria o altra lingua e convertirli in `.ts`, seguire questi passaggi:
=== Ubuntu e derivate (escluso Kubuntu) ===
0. [[AmbienteGrafico/AvviareProgrammi|Avviare]] il programma '''Synaptic''' e [[AmministrazioneSistema/InstallareProgrammi/GestorePacchetti#cerca|cercare]] il pacchetto desiderato.
0. Fare clic sul nome del pacchetto e selezionare la scheda '''File installati'''.
0. Leggere e appuntarsi il percorso ai file con estensione `.qm`. Se non sono presenti file con questa estensione, saltare al [[#sorgente|seguente]] paragrafo.
=== Kubuntu e Lubuntu ===
0. [[AmbienteGrafico/AvviareProgrammi|Avviare]] il programma '''Muon''' e [[AmministrazioneSistema/InstallareProgrammi/GestorePacchettiMuon#cerca|cercare]] il pacchetto desiderato.
0. Fare clic sul nome del pacchetto per far apparire la schermata inferiore e selezionare la scheda '''File installati'''.
0. Leggere e appuntarsi il percorso ai file con estensione `.qm`. Se non sono presenti file con questa estensione, saltare al [[#sorgente|seguente]] paragrafo.
=== Convertire il file .qm in .ts ===
0. Avviare il '''[[AmbienteGrafico/FileManager|file manager]]''' al percorso individuato nel punto precedente, poi copiare il file `nomepacchetto_sigla.qm` nella propria '''Home'''.
0. [[AmministrazioneSistema/ComandiBase#cd|Spostarsi tramite riga di comando]] nella cartella dove è stato copiato il file.
0. Convertire il file `.qm` in file `.ts` e azzerare la traduzione digitando nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
lconvert --drop-translations nomepacchetto_sigla.qm -o nomepacchetto_untranslated.ts
}}}
<>
== Da sorgente ==
Per trovare il file `nomepacchetto_untranslated.ts` nei sorgenti nei [[Repository|repository]], seguire i seguenti passaggi:
=== Ubuntu e derivate basate su librerie GTK ===
Per individuare nome e versione della sorgente leggere la [[AmministrazioneSistema/InstallareProgrammi/GestorePacchetti|seguente pagina]].
=== Kubuntu e derivate basate su librerie Qt ===
Per individuare nome e versione della sorgente leggere la [[AmministrazioneSistema/InstallareProgrammi/GestorePacchettiMuon|seguente pagina]].
<
>
{{{#!wiki tip
Ad esempio, il pacchetto ''qpdfview'' si trova nella cartella '''qpdfview''' del repository '''Universe''' e l'ultima versione disponibile è la '''0.4.18-6'''. Appuntarsi pertanto '''Universe''' come repository, '''qpdfview''' come componente e '''0.4.18-6''' come versione.}}}
<
>
0. Cercare e scaricare i sorgenti da [[http://it.archive.ubuntu.com/ubuntu/pool/|questa pagina]], avendo cura di:
* selezionare il [[Repository/Componenti|componente]] corretto (all'interno i file sono divisi in directory in ordine alfabetico);
{{{#!wiki note
I nomi dei sorgenti delle librerie che iniziano con «lib» vanno cercati nelle corrispondenti voci «lib» del repository.}}}
* selezionare la versione corretta;
* scaricare il [[AmministrazioneSistema/FormatiDiCompressione#Formati_disponibili|file compresso]]:
* `nomepacchetto_versione.orig.`, se disponibile. Ignorare eventuali caratteri a destra del segno «-» in `versione`.
* `nomepacchetto_versione.`, altrimenti.
dove al posto di `versione` va considerata la versione individuata nei punti precedenti.
{{{#!wiki tip
Ad esempio, per il pacchetto ''qpdfview'' di cui al suggerimento precedente scaricare il file `qpdfview_0.4.18.orig.tar.gz`.}}}
0. [[AmministrazioneSistema/FormatiDiCompressione#decomprimere|Estrarre]] il contenuto dei file scaricati nella propria '''Home''' e individuare la cartella, solitamente di nome ''lang'' o ''translations'', spesso allocate all'interno della cartella genitore ''src'', contenente il file `nomepacchetto_untranslated.ts`. Se non è presente alcun file con questo nome, seguire i seguenti passaggi:
<>
* Copiare nella propria '''Home''' il file di traduzione `nomepacchetto_sigla.ts` in una lingua diversa da quella in cui si intende tradurre, scegliendo quella con più stringhe da tradurre.
* [[AmministrazioneSistema/ComandiBase#cd|Spostarsi tramite riga di comando]] nella cartella dove è stato copiato il file.
* Per azzerare la traduzione digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
lconvert --drop-translations nomepacchetto_sigla.ts -o nomepacchetto_untranslated.ts
}}}
0. Nei sorgenti molto grandi, o con più file `.ts` da tradurre, può risultare difficile individuare la cartella, o le cartelle, in cui sono allocati i file da tradurre `.ts`. In questo caso [[AmministrazioneSistema/ComandiBase#cd|spostarsi tramite riga di comando]] nella cartella ove estratto il sorgente e digitare il seguente comando:{{{
find . -type f -name '*.ts'
}}}
0. Seguire ciascun percorso ed estrarre da ciascuno il rispettivo file `nomepacchetto_untranslated.ts`. Se non è presente alcun file con questo nome, seguire le istruzioni dei seguenti [[#passaggi|passaggi]].
== Mancanza di stringhe da tradurre ==
Se dopo aver installato il file tradotto `nomepacchetto_sigla.ts` nel sistema, avviando il programma venissero a mancare delle traduzioni, può essere utile provare a creare un file `nomepacchetto_untranslated.ts` direttamente dal sorgente, poiché in 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 [[AmministrazioneSistema/ComandiBase#cd|spostarsi nella cartella genitore]] e dare il seguente comando:{{{
lupdate nomesorgente-versione -ts nomepacchetto_untranslated.ts
}}}
{{{#!wiki tip
Ad esempio, per il pacchetto ''qpdfview'' di cui al suggerimento precedente il comando diventa: `lupdate qpdfview_0.4.18 -ts qpdfview_untranslated.ts`}}}
= Primo avvio =
0. Aprire il [[AmministrazioneSistema/Terminale|terminale]] e digitare il seguente comando:{{{
linguist
}}}
0. Fare clic su '''''Phrases → Open Phrase Book...''''' e selezionare il file `.qph` del dizionario della lingua verso cui si intende tradurre, allocato nel percorso:
* `/usr/share/qt4/phrasebooks` per applicazioni in '''Qt4'''.
* `/usr/share/qt5/phrasebooks` per applicazioni in '''Qt5'''.
{{{#!wiki note
Per usare le proprie traduzioni per tradurre più applicazioni usando '''Qt Linguist''', copiare il file dizionario `nomelingua.qph` in una apposita cartella creata e locata nella propria '''Home''' e selezionare il dizionario in questa locazione.
Ad esempio, se si è creata una cartella di nome `Dictionary`, il percorso sarà `/home/nomeutente/Dictionary/nomelingua.qph`, sostituendo «nomeutente» con quello usato.}}}
##{{{#!wiki tip
##Questo passaggio non è da ripetere ogni volta, il file dizionario `nomelingua.qph` selezionato rimane memorizzato.
##}}}
= Tradurre con Linguist =
0. Avviare il '''[[AmbienteGrafico/FileManager|file manager]]''' e spostarsi nella cartella contenente il file `nomeprogramma_untranslated.ts` precedentemente trovato o creato.
0. Fare clic su `nomeprogramma_untranslated.ts` per avviare '''Linguist'''.
0. 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.
{{{#!wiki note
Nel caso in cui non venga mostrata la finestra per le impostazioni della lingua, fare clic su '''Edit → Translations File Settings...''' per visualizzarla.}}}
{{{#!wiki tip
Per prendere confidenza con l'editor, si può fare pratica traducendo il file `linguist_sigla.qm` allocato nel percorso `/usr/share/qtx/translations/`, con «x» da sostituire col numero di versione del ''Qt'' usato.
}}}
0. Selezionare '''''View → Views''''' e mettere la spunta su '''Context''', '''Strings''' e '''Phrases and guesses'''.
0. Selezionare '''''Validation''''' e mettere la spunta su '''Accelerations''', '''Ending Punctuation''' e '''Place Marker Match'''.
0. Selezionare '''''Edit → Batch Translations...''''' e mettere la spunta sulle tre opzioni in alto, raggruppate in '''Options'''. Fare clic su '''Run''' e chiudere la finestra facendo clic su '''Cancel'''.
0. Selezionare il gruppo di stringhe che si vuole tradurre in '''Context''' e selezionare la riga da tradurre in '''Strings'''.
0. 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.
0. Se si è allocato il file dizionario `nomelingua.qph` nella propria '''Home''', dopo ogni traduzione fare clic su '''Ctrl + T''' in modo da aggiungere la traduzione al dizionario.
0. Finita la traduzione, per salvare il file in formato `.ts` fare clic su '''''File → Save As...'''''.
0. Nella finestra apertasi selezionare:
* in '''Filter''' il '''Qt translation sources''';
* in '''Name''' sostituire il 'untranslated' con la sigla della lingua;
infine premere '''Save'''.
0. Per creare il file `.qm` selezionare '''''File → Release As...'''''.
0. Nella finestra apertasi selezionare:
* in '''Filter''' il '''Qt message file for released applications'''
infine premere '''Save'''.
= Allocazione delle traduzioni =
Per controllare il percorso di allocazione delle traduzioni in formato `.qm` del software che si sta traducendo, seguire i seguenti passaggi:
0. [[AmbienteGrafico/AvviareProgrammi|Avviare]] il programma '''Synaptic''' e [[AmministrazioneSistema/InstallareProgrammi/GestorePacchetti#cerca|cercare]] il pacchetto desiderato.
0. Fare clic destro sul nome del pacchetto per aprire il menu contestuale. Selezionare la voce '''Proprietà''' e quindi la scheda '''File installati'''.
0. 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 [[AmministrazioneSistema/Terminale|terminale]] i seguenti comandi:{{{
sudo mkdir -p /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 [[AmministrazioneSistema/Terminale|terminale]] i seguenti comandi:
{{{#!wiki note
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.}}}
0. Se presente, spostare il file `.qm` preesistente:{{{
sudo mv /usr/share/nomeprogramma/translations/nomeprogramma_sigla.qm /usr/share/nomeprogramma/translations/nomeprogramma_sigla.qm~
}}}
0. Creare la directory dove allocare:{{{
sudo mkdir -p /usr/local/share/nomeprogramma/translations
}}}
0. Allocare il file `.qm`:{{{
sudo cp nomeprogramma_sigla.qm /usr/local/share/nomeprogramma/translations
}}}
0. Creare il collegamento simbolico:{{{
sudo ln -s /usr/local/share/nomeprogramma/translations/nomeprogramma_sigla.qm /usr/share/nomeprogramma/translations
}}}
= Ulteriori risorse =
* [[https://www.qt.io/ | Sito ufficiale Qt]]
* [[https://doc.qt.io/qt-5/qtlinguist-index.html | Sito documentazione Qtlingist Qt5]]
* [[https://doc.qt.io/qt-4.8/qtlinguist-manual.html | Sito documentazione Qtlingist Qt4]]
* [[AmministrazioneSistema/UbuntuItaliano|Gestione Supporto lingue]]
----
CategoryProgrammazione