Appendix F. Script

1. Introduzione
2. Uso
3. Linguaggi delle azioni di script

1. Introduzione

OmegaT consente di avviare script scritti in diversi linguaggi, all'interno di OmegaT.

2. Uso

Facendo clic su Strumenti > Azioni di script si apre la finestra di dialogo per le azioni:

La finestra delle Azioni di script consente di caricare uno script esistente all'interno dell'area di testo e avviarlo nel progetto attivo aperto. Per personalizzare le funzionalità di script, osservare la procedura seguente:

  • Caricare uno script all'interno dell'editor facendo clic sul suo nome nell'elenco contenuto nel pannello sinistro.

  • Fare clic col destro su un pulsante da "<1>" a "<12>" nella parte inferiore del pannello e selezionare "Aggiungi". Nell'esempio sopra, sono stati già aggiunti due script (posizione 1 e 2).

  • Il clic sinistro sul numero farà avviare lo script selezionato. È possibile avviare le macro selezionate sia dal menu principale, sia tramite le voci all'interno del menu Strumenti, sia premendo Ctrl+Alt+F# (# 1 a 12).

Per impostazione predefinita, gli script vengono memorizzati nella cartella "scripts" che si trova nella cartella di installazione di OmegaT (quella in cui è presente il file OmegaT.jar).

È possibile aggiungere i nuovi script in quella cartella, essi appariranno nell'elenco degli script disponibili all'interno della finestra Azioni di script.

Si possono trovare alcuni script aggiuntivi qui: OmegaT Scripts

3. Linguaggi delle azioni di script

Sono stati implementati i seguenti linguaggi di script:

  • Groovy (http://groovy.codehaus.org): è un linguaggio dinamico per la Java Virtual machine. Si basa sulle potenzialità Java ma contiene potenti funzioni aggiuntive ispirate da linguaggi come Python, Ruby e Smalltalk.

  • JavaScript (a volte abbreviato in JS, da non confondere con Java): è un linguaggio di script basato su un prototipo, dinamico, debolmente tipizzato e con funzioni di prima classe. È un linguaggio a paradigma multiplo, che supporta gli stili di programmazione funzionali, imperativi e orientati agli oggetti. Essendo il linguaggio che sta dietro programmi diffusi, come Firefox, è uno strumento di programmazione familiare e preferito nell'ambiente open source.

Tutti i linguaggi hanno accesso al modello oggetti di OmegaT e con il progetto come oggetto primario. La seguente porzione di codice scritto in groovy, per esempio, esegue un'analisi di tutti i segmenti, all'interno di tutti i file del progetto attivo e, se esiste la traduzione, restituisce il testo di partenza e di arrivo del segmento:

    files = project.projectFiles;
    for (i in 0 ..< files.size())
    {
        for (j in 0 ..< files[i].entries.size())
        {
            currSegment = files[i].entries[j];
            if (project.getTranslationInfo(currSegment))
            {
                source = currSegment.getSrcText();
                target = project.getTranslationInfo(currSegment).translation;
                console.println(source + " >>>> " + target);
            }     
        }
    }