Выберыце мэню
, адкрыецца вакно сцэнароў:Акно сцэнароў дазваляе загрузіць існы сцэнар у тэкставую вобласьць і выканаць яго для бягучага праекта. Каб наладзіць выкананьне сцэнара, выканайце наступныя дзеяньні:
Загрузеце сцэнар у рэдактар, націснуўшы ягоную назву ў сьпісе на левай панэлі.
Правай кнопкай мышы націсьнеце на кнопку “<1>” — “<12>” на ніжняй панэлі і выберыце “Дадаць”. У прыкладзе вышэй два сцэнара (пазыцыі 1 і 2) ужо дададзеныя.
Калі націснуць нумар левай кнопкай мышы, выканаецца выбраны сцэнар. Выбраныя сцэнары можна запускаць праз адпаведныя падпункты пункта мэню Ctrl+Alt+F# (дзе # — 1 да 12).
або націскаючыПа змаўчаньні сцэнары знаходзяцца ў падкаталёгу “scripts” у каталёгу ўсталёўкі OmegaT (г. зн., каталёгу, які зьмяшчае файл OmegaT.jar).
Туды можна дадаваць новыя сцэнары, якія будуць зьяўляцца ў акне сцэнароў.
Некалькі дадатковых сцэнароў можна знайсьці тут: OmegaT Scripts
Рэалізаваныя наступныя мовы сцэнароў:
Groovy (http://groovy.codehaus.org): дынамічны мова для віртуальнай машыны Java. Ён аб’ядноўвае моц Java і зручныя функцыі, падобныя мовам тыпу Python, Ruby і Smalltalk.
JavaScript (часам скарочана JS, не блытаць з Java): прататыпаарыентаваная мова сцэнароў, дынамічная, са слабой тыпізацыяй і першакляснымі функцыямі. Гэта — шматпарадыгмавая мова, якая падтрымлівае аб’ектна-арыентаваны, імпэратыўны і функцыянальны стылі праграмаваньня. Дзякуючы ўжываньню ў папулярных праграмах, такіх як Firefox, гэтую мову добра ведаюць і любяць прыхільнікі свабоднага праграмнага забесьпячэньня.
Усе мовы маюць доступ да аб’ектнай мадэлі OmegaT з праектам у якасьці верхняга аб’екта. У наступным фрагмэнце коду на Groovy, напрыклад, робіцца прагляд усіх сэгмэнтаў ва ўсіх файлах у бягучым праекце і, калі пераклад існуе, выводзіцца крыніца і пераклад сэгмэнта:
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); } } }