Condividere un progetto con OmegaT e Subversion

(4 voti)
Etichettato sotto :
Condividere un progetto con OmegaT e Subversion

Con la versione 2.6.0 OmegaT, il programma di traduzione assistita gratuito e open source, ha introdotto un'interessantissima novità: due o più traduttori possono lavorare su uno stesso progetto senza ricorrere a strumenti esterni, condividendo glossari e memorie di traduzione praticamente in tempo reale.

Controllo versione tramite Apache Subversion

La traduzione collaborativa offerta da OmegaT si basa sulla funzionalità di "controllo versione", largamente impiegata dagli sviluppatori di software per mantenere il controllo delle modifiche al codice di un programma. I programmi che implementano il controllo versione, o versioning, sono molteplici; due dei più noti sono Subversion e GIT, non a caso proprio quelli supportati da OmegaT. Chi vuole saperne di più su Subversion può leggere una completissima guida presente sul sito HTML.it.

Apache Subversion è un software che si installa a livello server e permette di ospitare il codice sorgente di un programma in fase di sviluppo. I vari programmatori che vi partecipano si collegano a questo server per introdurre le loro modifiche al codice, al termine delle quali Subversion s'incarica di creare una sola versione del programma "fondendo" le varie modifiche apportate dai collaboratori. Allo stesso modo, caricando un progetto di traduzione di OmegaT su un server SVN, è possibile assegnarlo a vari traduttori che vi possono lavorare in contemporanea. Qualche nozione elementare a livello di terminologia: un repository è il deposito in cui vengono salvati i file; un checkout è la creazione di una copia di lavoro dal repository al computer locale; un commit è l'operazione di copia delle modifiche dal computer locale al repository.

Come condividere un progetto mediante SVN

Innanzitutto è necessario dotarsi di un server SVN. Le opzioni sono due: o s'installa SVN su un proprio server oppure si utilizza un servizio in hosting. Cercando su Google "free svn hosting" si trovano vari siti che offrono questo servizio gratis. Il metodo qui illustrato si appoggia al server SVN gratuito (limitato a 2 utenti) offerto da ProjectLocker. Naturalmente utilizzando un servizio esterno, bisognerà tenere presenti le possibili implicazioni di confidenzialità, visto che si stanno caricando i documenti originali su un server al di fuori del proprio controllo diretto. In alternativa, per ovviare a questo problema è possibile settare un server SVN privato, per esempio se già si possiede un server Apache in cui è compreso il software in questione (es. VisualSVN). In questo caso la configurazione è leggermente diversa e verrà trattata nei dettagli in un prossimo articolo. Segnaliamo però questa procedura per Mac e questa soluzione per Windows. Per iniziare, consigliamo comunque di fare qualche prova con ProjectLocker o un servizio simile.

Una volta reso disponibile il server SVN, occorre anche installare localmente un client SVN, per poter gestire le cartelle sul proprio computer. Per Windows consigliamo TortoiseSVN, mentre per Mac si possono utilizzare degli script gratuiti (Subversion Script) presenti sul sito di Sourceforge, che si possono scaricare e installare seguendo le istruzioni indicate su http://svn-finder.sourceforge.net/screencast-usage.html, oppure il programma svnX reperibile su http://code.google.com/p/svnx/.

Dopo questa breve introduzione, passiamo ora al procedimento pratico completo per condividere un progetto di OmegaT fra più traduttori, spiegato passo per passo. A livello concettuale le fasi sono tre:

  1. creazione del repository sul server;
  2. importazione del progetto di OmegaT nel repository;
  3. checkout del progetto di OmegaT.

Il primo passaggio è identico per tutti i sistemi operativi e di norma è svolto solo dal project manager, o da chi fra i traduttori è incaricato della gestione, per creare una cartella principale sul server SVN che conterrà tutti i progetti di OmegaT da condividere. Quindi basta eseguirlo una sola volta. La seconda parte dipende invece dal sistema operativo e serve a importare ogni progetto di OmegaT nel repository principale. A seconda del cliente SVN e del sistema operativo, la procedura può essere diversa da quelle qui esposte. Anche questo secondo passaggio viene svolto solo dal project manager. Infine il checkout del progetto viene gestito da OmegaT stesso e comporta solo un clic all'apertura del programma, essendo l'unico passaggio necessario per i vari traduttori che collaborano al progetto.

Creazione del repository

  1. Creazione di un nuovo repository su ProjectLocker.
    1. Fare clic su New Project nella scheda Projects di ProjectLocker.
    2. Digitare il nome e la descrizione del repository.
    3. Scegliere SVN.
    4. Fare clic su Create Project.
    5. Nella visualizzazione Projects fare clic su Click To View.
    6. Nella finestra emergente selezionare l'URL corrispondente a Subversion (non a Trac), copiarlo e incollarlo in un documento di testo vuoto (sarà necessario più avanti).
  2. Assegnazione degli utenti al repository:
    1. Fare clic sul nome del repository e aggiungere uno o più utenti (creati in precedenza). È anche possibile aggiungere un gruppo.
    2. Fare clic su Manage SVN Permissions (pannello sinistro).
    3. Aggiungere gruppo (ad es.: Translation).
    4. Fare clic sul nome del gruppo.
    5. Aggiungere uno o più utenti al gruppo.
  3. Per comodità creiamo una nuova cartella sul computer, per esempio /Repositories/, ma si può anche usare una cartella esistente.
Importazione del progetto per Mac
  1. Selezionare la cartella appena creata e lanciare lo script SVN Checkout dal menu in alto a destra.
  2. Incollare l'URL annotata al punto 1.f e fare clic su OK.
  3. Scegliere il percorso di destinazione (viene creata una sottocartella chiamata /svn/ di default, ma le si può dare un altro nome o si può usare una cartella esistente).
  4. Nella finestra del Terminale che si apre, inserire, quando vengono richiesti, la password di amministratore del computer, il nome utente e la password di ProjectLocker.
  5. Aprire OmegaT e creare un nuovo progetto all'interno della cartella /Repositories/svn/ (verificando che sia presente il file project-save.tmx)
  6. Selezionare la cartella del progetto appena creato e lanciare lo script SVN Add e confermare cliccando su OK.
  7. Selezionare la cartella superiore /Repositories/SVN/ e lanciare lo script SVN Commit per sincronizzare il contenuto della cartella e confermare cliccando su OK.
Importazione del progetto per Windows
  1. Aprire OmegaT e creare un nuovo progetto in una cartella temporanea.
  2. Selezionare la cartella appena creata e fare clic con il pulsante secondario del mouse, scegliendo Import... dal menu contestuale aggiunto da TortoiseSVN. Questo comando aggiunge i file della cartella al repository creato precedentemente.
  3. Nella finestra emergente, inserire il nome utente e la password di ProjectLocker. TortoiseSVN ricorda i dati introdotti, per cui essi verranno richiesti solo la prima volta.
  4. Incollare l'URL annotata al punto 1.f e fare clic su OK, lasciando gli altri parametri invariati. È consigliabile aggiungere una nota nel campo dei commenti, per facilitare la tracciabilità.
  5. Attenzione! Tenere conto che SVN importa tutti i file contenuti nella cartella selezionata, ma non la cartella stessa. Se si usa un solo Repository (come suggerito in questo tutorial), è necessario aggiungere manualmente il nome della cartella di progetto all'URL. Ad es., se si sta lavorando al progetto n. 1, aggiungere 2012_0001 all'URL del repository principale, ottenendo https://free5.projectlocker.com/nome-repo-principale/svn/2012_0001
  6. È possibile eliminare la cartella temporanea, in quanto il progetto verrà poi scaricato e gestito mediante OmegaT.
Checkout del progetto

A questo punto ogni traduttore a cui viene assegnata una parte della traduzione deve aprire OmegaT e selezionare Scarica il progetto in collaborazione... dal menu Progetto. Nella finestra emergente scegliere SVN, digitare l'URL copiato in precedenza (completo del numero di progetto, cioè https://free5.projectlocker.com/nome-repo-principale/svn/2012_0001 come nel nostro esempio) e indicare la cartella locale del proprio computer in cui salvare il progetto. Se viene richiesta l'autenticazione, inserire il nome utente e la password del server SVN (ProjectLocker nel nostro esempio).

Durante il primo collegamento al server SVN, vengono scaricati in locale tutti i file creati nel repository. Attenzione! Fino alla versione 2.6.1 solo il file project-save.tmx, ovvero quello che contiene le unità tradotte, viene versionato, cioè sincronizzato. Dalla versione 2.6.1_2, viene versionato anche il file di glossario, ma solo quello di progetto, ovvero quello il cui nome è solitamente {project_name}-glossary.txt. Ciò significa che eventuali modifiche ad altri file del progetto, ad esempio eventuali modifiche alla segmentazione o ai file originali, non vengono rilevate automaticamente da OmegaT. Tuttavia, dato che l'intero progetto è caricato sul server SVN, è sempre possibile eseguire il checkout e la sincronizzazione manuale con il client SVN (procurando che OmegaT non sia attivo durante queste operazioni, in modo da evitare conflitti).

Durante la traduzione, ogni qualvolta si salva il progetto, viene sincronizzato il file project-save.tmx contenente tutte le modifiche che vengono fuse insieme a quelle degli altri collaboratori. Impostando il salvataggio automatico ogni pochi minuti (ad esempio 2 o 3) ci si assicura di sincronizzare con una certa frequenza il proprio lavoro con quello di tutti gli altri. Lo stesso avviene per il file di glossario.

È importante sottolineare che se il progetto non viene terminato in un'unica sessione, nella sessione successiva non è necessario riscaricare il progetto in collaborazione, ma bisogna semplicemente aprire il progetto già scaricato. OmegaT rileva che è un progetto collaborativo e si collegherà al server automaticamente. In caso di errore di connessione, chiudere il progetto e riaprirlo.

Rispetto al procedimento con Dropbox già illustrato in un precedente articolo, l'utilizzo della funzione "team project" presenta alcuni chiari vantaggi. A fronte di una certa maggior complessità nella configurazione iniziale, con la funzione "team project" è possibile organizzarsi in gruppi di lavoro formati da più di due traduttori. Oltretutto, nel pieno spirito di OmegaT come progetto, si fa ricorso solo a strumenti open source (sia Apache Subversion che Git sono distribuiti con licenze open source) senza dipendere da software commerciali (come nel caso di Dropbox). Ancora, sfruttando le caratteristiche del server SVN si può fornire al committente un accesso di sola lettura alla cartella contenente i file di arrivo, agevolando così la consegna del progetto.

Senza dimenticare che tutti questi vantaggi sono a disposizione degli utenti completamente gratis. Un rapido confronto con i prezzi delle soluzioni server-based dei concorrenti commerciali dovrebbe essere sufficiente a comprendere la portata e l'importanza di questo nuovo sviluppo di OmegaT. Chi volesse contribuire al progetto con una donazione, può farlo comodamente da qui mediante PayPal.

Qabiria white logo

Crediamo nell’aumento della produttività attraverso l’uso creativo della tecnologia.

Ultime notizie

Contatti

Qabiria Studio SLNE
Carrer Lleida, 3 1-2
08912 Badalona
(Barcelona)
SPAGNA

+34 675 800 826

qabiria

Inviaci un messaggio

Ricevi la newsletter

Vuoi leggere gli articoli e le novità di Qabiria direttamente nella posta?