Newsgroup: it.comp.software.tex
Titolo: Progetto LaTeX multilingua

Salve,
avendo ultimato un progetto di un libro tecnico in lingua italiana ï¿œ 
sorta la necessitï¿œ di renderlo disponibile in altre lingue.
Chiedo agli esperti quale sia l'approccio migliore.
E' conveniente duplicare l'intero progetto o esiste qualche 
package/estensione che supporti la coesistenza di diverse lingue e la 
scelta della lingua di stampa ricadrebbe all'atto della compilazione?
Grazie per i suggerimenti.
-jospic
 

 scelta della lingua di stampa ricadrebbe all'atto della compilazione?
 
Io preferirei avere sott'occhio le varie parti: in ogni caso con vim userei 
due window affiancate verticalmente per cui non ha molta importanza come 
strutturerei il progetto. Nulla ti vieta di duplicare tutto: l'importante è 
che sia comodo ed agevole mantenere coerente il testo in tutte le 
localizzazioni.
 
HTH,
 
-- 
 Daniele Tricoli 'Eriol'
 
http://mornie.org
 

 localizzazioni.
 
Ciao,
grazie innanzitutto per la risposta.
Il link indicato è uno dei primi consultati.
Comunque, nel frattempo ho scelto una strada che sembra funzionare 
abbastanza bene. La illustro, a grandi linee...potrebbe interessare ad 
altri latexiani:
 
1) Ho conservato un unico file main (preambolo, ecc.) per entrambe le lingue
2) All'interno dello stesso, a seconda della lingua di composizione 
finale, attivo una delle due linee seguenti (naturalmente se ne 
potrebbero aggiungere delle altre...):
 
%\usepackage[italian]{babel} % composizione tipografica italiana
				    										  \usepackage[english]{babel} % composizione 
tipografica inglese
 
3) Ho definito due macro:
 
\newcommand{\langIT}[1]{\ifnum\pdfstrcmp{\languagename}{italian}=0 {#1}\fi}
\newcommand{\langEN}[1]{\ifnum\pdfstrcmp{\languagename}{english}=0 {#1}\fi}
 
4) Ho duplicato tutti i file .tex (tranne il main) e li ho copiati in 
una cartella denominata "nome_lingua", ad esempio "english", allo stesso 
livello del file main.tex:
 
5) Traduci i contenuti dei vari file inclusi nella cartella "english"
 
6) Infine, nel file main, dove vengono incluse le varie parti del libro, 
inserisco:
 
\langIT{%
\include{toc}
\include(intro)
\include(parteprima)
\include(parteseconda)
\include(parteterza)
....
\include{appendici}
\include{biblio}
\include{index}
}
 
\langEN{%
\include{english/toc}
\include(english/intro)
\include(english/parteprima)
\include(english/parteseconda)
\include(english/parteterza)
....
\include{english/appendici}
\include{english/biblio}
\include{english/index}
}
 
 
Il sistema sembra funzionare abbastanza bene, ma ad onor di cronaca devo 
segnalare due metodi (entrambi provati nei miei esperimenti), che vanno 
per la maggiore nei grandi progetti di traduzione che utilizzano 
LaTeX/XeteX per l'internazionalizzazione (ad esempio la documentazione 
della distribuzione linux Ubuntu) che sono:
 
1) La suite perl po4a che consente di tirar fuori, da un intero progetto 
LaTeX (ma non solo), il solo testo, convertirlo nello standard .po, 
tradurlo (attraverso tool tipo poedit) e reiniettarlo nei file .tex 
originari. Consentendo un'ottima sincronizzazione dei documenti nelle 
varie lingue.
 
oppure, a mio avviso, il più performante:
 
2) OmegaT, software multipiattaforma scritto in java, che analogamente 
con quanto fa po4a permette di leggere, addirittura nelle immagini 
vettoriali pdf, tikz e svg, il solo testo, tradurlo (anche "al volo" 
richiamando le API di Google, Microsoft Translator, ecc.) e reinserirlo 
sempre nei file .tex originari.
 
Questi due ultimi metodi, a mio avviso, sono indicati quando il 
documento strutturalmente rimane invariato nelle varie lingue e quando 
le lingue coinvolte sono numerose.
Nel mio caso forse, avendo a che fare con due o tre lingue, la strada 
scelta mi permette molta più elasticità.
 
Ben vengano altre soluzioni.
-jospic