2008-04-16

翻譯軟體: OmegaT (翻譯記憶)

你雖然可以花多一筆錢買Trados,但是也許你先要了解這種軟體好不好用,所以一開始不想花太多錢。或者你是學生,根本沒有太多錢可以花。或者你發現,自由軟體其實蠻不錯,本來就做得到你需要的。

反正,我在這裡想介紹OmegaT,一個我認為真不錯的翻譯軟體。它是Java軟體,所以你電腦上沒有裝Java,你沒有辦法執行它。如果你不確定你電腦有沒有裝,你可以下載包含Java的套件。目前的官方版本還沒有安裝程式,你只要下載ZIP檔,然後把裡面的檔案解壓縮到適合的地方。在Windows,你要點OmegaT.bat啟動它。

啟動之後,我們先要建立新的方案(project)。一個方案只適合用在一個語言方向(例如英翻中),但是可以包含幾個文件。一個方案的文件會共用翻譯記憶跟詞庫。建立方案的時候,軟體想知道一些設定:


最重要的是原語言跟目標語言的設定。因為一個句子包含比較完整的意思,我們最好也要選sentence-level segmenting。(等一下就能看到這是什麼,先相信我,OK?)你先最好不要進去"Segmentation" - 這個也請你相信我。那邊都已經設好,需要修改的可能率很低。而且,你最好先多了解這個軟體才要考慮修改這些設定。

你會發現OmegaT在方案的目錄下想建立另外一些目錄。平常沒有必要改這些。在source files有原來的(原語言)文件,這些不會被修改。Translation memory是翻譯記憶檔案,而在glossary可以自己放詞庫檔案。我們翻完的文件會在translated files (target)裡面出現。設完之後,我們的方案當然需要文件。


我已經加一個原語言文件:pigs.txt。(我猜你應該知道這個故事。等一下你會了解為什麼我這裡要用它。)OmegaT能處理普通的文字檔、HTML、ODT,而最近好像也開始支援XLIFFOOXML。 (Grrrrrrr...)


主要的視窗之後可能變成如上的樣子。好像不太精彩:沒有3D,沒有敵人,沒有其它槍可以選... 而且,fuzzy matches視窗跟glossary視窗(目前看不到)也都沒有東西,我是不是還要自己動手翻?

是。一開始,這種軟體對你不會是很大的幫助。但是你用它越久,它幫助越大。目前我們最好先高興地發現它在原語言的文件裡好像有把標題獨立出來。標題就是第一個segment,第一個分段。Segment 0001 跟 end segment之間我們可以寫目標語言版本,上面(綠色)都會有原語言版本。


這裡可以看到分段裡面,原語言跟目標語言的句子都在。我寫完目標語言版,現在可以刪除原來的句子。我其實也可以一開始直接刪除,因為上面會有無法刪除的原語言版本,但是我個人比較喜歡翻完才拿掉原來的句子。不過,到這裡好像還是沒有特別的“動作”,軟體還沒有幫我任何忙。好吧,繼續翻...


Ooops,軟體終於睡醒了!這裡發生了什麼事?我目前翻的句子比較像我之前翻的另一個句子。OmegaT認為之前的句子像目前的44%,籃色的詞是跟目前的句子不同的地方。Hmm,然後呢?

然後我有選擇:我可以不理軟體的建議。(別忘記你有這個選擇。)我可以把之前的目標語言句子插入目前的分段。(Ctrl-I) 或者我可以把目前分段裡面的原語言句子換成之前的目標語言句子。(Ctrl-R)

不過,44%還不是很高的數字,而如果我們看籃色的部分多大,不管我們決定哪一個選擇,都還需要一些手工。但是我們其實也剛才開始,所以就繼續翻吧!


Voila! 這個比較有趣。OmegaT發現已經有兩個句子像目前要翻的。最像的當然排第一名,因為如果我要用記憶裡面的句子,它應該是第一個選擇。只有兩個詞不同,像度80%,相當高。我個人這次會選取代,按Ctrl-R,把第一個目標語言句子放進分段,然後修改那兩個不同的詞。

也許你現在了解為什麼我要剛好用這個故事:這裡有一些重復的句子,只有少數的詞不同,所以我們這麼快就可以看到效果。如果我用OmegaT更久,它會記住更多我翻的句子,給我更多,更方便的選擇。此外:軟體雖然會幫你記住很多句子,但是我也想建議你記住它的快速按鍵。這樣工作才真快...

到現在我們好像一直沒有看到glossary(詞庫)這個視窗。其實,OmegaT可惜不是完美的軟體。這不能算是錯誤,只是使用者介面的問題,但是... 你可能不小心把三個視窗其中一個或兩個關掉,然後不知道怎麼再叫回來,所以可能沒辦法正常工作。放心,只要到Options - Restore Main Window,它就會還原視窗的排版。


現在我們終於也可以看到glossary視窗,而它好像也有意見。OmegaT可以使用一個詞庫,一個簡單的辭典。這種檔案原則上是簡單的文字檔,每一行有一個原語言的詞跟一個目標語言的詞,中間用tab隔開,像這樣:


這種檔案的名稱可以自己定,但是副檔名要用"utf8"。如果你把這個相當小的詞庫跟上面glossary視窗的建議,還有剛要翻的句子比較的話,你應該會發現軟體沒有提到bricks的翻譯。原因很簡單:我的詞庫裡面只有單數的brick,但是句子裡面有復數的bricks。所以,最好要注意這一點。(雖然你的母語不會特別分...)

我當然可以中間停,把軟體跟電腦關掉。下次啟動OmegaT我只需要開之前的方案,它就會告訴我每一個文件的進度:


翻完一個文件,你要到Project - Create Translated Documents,軟體就會在目標語言的目錄(target)裡輸出目標語言的文件。原來的文件一樣還在source目錄裡面,沒有被改過。

這樣好用吧!而且,你不用花幾萬塊的錢...

2 comments:

Anonymous said...

你好,不知道您會不會看到
有一個疑問是所以我只能設定一種目標語言嗎?
謝謝

dl7und said...

不好意思,沒有想到還有人會來這裡看,所以現在才回答。每個專案只可以有一個原語言,一個目標語言。如果需要另一個目標語言,需要開新的專案。所有相關軟體都這樣,因為每個語言需要的支援(翻譯記憶體,機械翻譯等)不一樣且軟體必須知道要怎麼支援。