{"id":247,"date":"2009-09-24T18:42:20","date_gmt":"2009-09-24T16:42:20","guid":{"rendered":"http:\/\/hell.pl\/wasaty\/blog\/?p=247"},"modified":"2011-06-04T15:17:01","modified_gmt":"2011-06-04T14:17:01","slug":"ciezki-orzech-do-zgryzienia-czyli-zmiana-segmentacji-tm","status":"publish","type":"post","link":"https:\/\/wasaty.pl\/blog\/2009\/09\/24\/ciezki-orzech-do-zgryzienia-czyli-zmiana-segmentacji-tm\/","title":{"rendered":"Ci\u0119\u017cki orzech do zgryzienia, czyli zmiana segmentacji TM"},"content":{"rendered":"<div style=\"float: right; margin-left: 10px;\"><a href=\"https:\/\/twitter.com\/share\" class=\"twitter-share-button\" data-via=\"Wasaty\" data-count=\"vertical\" data-url=\"https:\/\/wasaty.pl\/blog\/2009\/09\/24\/ciezki-orzech-do-zgryzienia-czyli-zmiana-segmentacji-tm\/\">Tweet<\/a><\/div>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignleft size-full wp-image-250\" title=\"Okapi\" src=\"http:\/\/hell.pl\/wasaty\/blog\/wp-content\/uploads\/2009\/09\/Okapi.png\" alt=\"Okapi\" width=\"80\" height=\"80\" \/>Wyobra\u017amy sobie, \u017ce dostajemy do przet\u0142umaczenia du\u017cy plik &#8211; now\u0105 wersj\u0119 instrukcji, kt\u00f3r\u0105 ju\u017c kiedy\u015b t\u0142umaczyli\u015bmy. Dzi\u0119ki programowi CAT i starej TM z poprzedniego t\u0142umaczenia mo\u017cemy przet\u0142umaczy\u0107 tylko nowy tekst, stare fragmenty podstawiaj\u0105c z pami\u0119ci, dzi\u0119ki czemu zrobimy to szybciej i taniej ni\u017c kto\u015b inny. Problem w tym, \u017ce \u201estara\u201d TM powsta\u0142a z u\u017cyciem innych regu\u0142 segmentacji, ni\u017c stosowane w obecnie u\u017cywanym oprogramowaniu. Jak sobie z tym poradzi\u0107?<\/p>\n<p><!--more-->U progu swojej \u201ekariery\u201d t\u0142umacza technicznego pracowa\u0142em w systemie Linuks, u\u017cywaj\u0105c wy\u0142\u0105cznie darmowych narz\u0119dzi. Nie powinno wi\u0119c dziwi\u0107, \u017ce moim pierwszym programem CAT by\u0142a OmegaT &#8211; ca\u0142kiem darmowy program napisany w Javie. U\u017cy\u0142em go mn. do przet\u0142umaczenia kilku do\u015b\u0107 du\u017cych instrukcji obs\u0142ugi, w czym bardzo mi pom\u00f3g\u0142 dzi\u0119ki sporej powtarzalno\u015bci tekstu. Niestety, w tamtych czasach w programie OmegaT dost\u0119pna by\u0142a jedynie segmentacja akapitowa, a w\u0142a\u015bnie zg\u0142osi\u0142 si\u0119 do mnie klient z t\u0142umaczeniem nowszej wersji jednej z tamtych instrukcji. Wydawa\u0142o mi si\u0119, \u017ce nie ma na to pytanie prostej odpowiedzi. Kilka miesi\u0119cy wcze\u015bniej w analogicznej sytuacji wygenerowa\u0142em TM z segmentacj\u0105 zdaniow\u0105 robi\u0105c align dokumentu \u017ar\u00f3d\u0142owego i t\u0142umaczenia (tych z poprzedniej wersji). Niestety, by\u0142o to do\u015b\u0107 pracoch\u0142onne. Tym razem postanowi\u0142em uwa\u017cniej przyjrze\u0107 si\u0119 programom z pakietu <a href=\"http:\/\/okapi.sourceforge.net\/\">Okapi<\/a>.<\/p>\n<p>Co to takiego? Cytuj\u0105c opis ze strony projektu: \u201ejest to zestaw specyfikacji interfejs\u00f3w, modeli obiekt\u00f3w, element\u00f3w i aplikacji zapewniaj\u0105cych \u015brodowisko do tworzenia uniwersalnych narz\u0119dzi s\u0142u\u017c\u0105cych do lokalizacji i t\u0142umaczenia dokumentacji i oprogramowania.\u201d Brzmi strasznie, na szcz\u0119\u015bcie w rzeczywisto\u015bci nie jest tak \u017ale. Okapi to zestaw narz\u0119dzi i filtr\u00f3w s\u0142u\u017c\u0105cych do pracy z pami\u0119ciami t\u0142umacze\u0144 oraz konwersj\u0105 i przygotowaniem do t\u0142umaczenia r\u00f3\u017cnego rodzaju plik\u00f3w. Funkcja, kt\u00f3ra mnie tym razem najbardziej zainteresowa\u0142a to w\u0142a\u015bnie mo\u017cliwo\u015b\u0107 przesegmentowania pami\u0119ci t\u0142umacze\u0144.<\/p>\n<p>Niestety, jak to czasami bywa w projektach Open Source, pakiet zosta\u0142 stosunkowo niedawno przepisany na inny j\u0119zyk programowania i w sieci dost\u0119pne s\u0105 jego dwie wersje. W procedurze wymagany jest jeden program w starej wersji i jeden w nowej.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-249\" title=\"Okapi2\" src=\"http:\/\/hell.pl\/wasaty\/blog\/wp-content\/uploads\/2009\/09\/Okapi2-580x452.png\" alt=\"Okapi2\" width=\"580\" height=\"452\" \/><\/p>\n<p>Opis procedury zaczerpn\u0105\u0142em <a href=\"http:\/\/tech.groups.yahoo.com\/group\/okapitools\/message\/794\">st\u0105d<\/a>.<\/p>\n<ol>\n<li>Pobra\u0107 i zainstalowa\u0107 program <a href=\"http:\/\/okapi.sourceforge.net\/applications.html\">Olifant<\/a>. S\u0142u\u017cy on do edycji i tworzenia plik\u00f3w TM. W naszym wypadku jest konieczny tylko, je\u015bli segmenty pami\u0119ci do przer\u00f3bki nie maj\u0105 atrybut\u00f3w &#8220;tuid&#8221;, czyli unikalnych identyfikator\u00f3w segment\u00f3w.<\/li>\n<li>Wczyta\u0107 pami\u0119\u0107 w formacie TMX do programu Olifant i wybra\u0107 z menu \u201eEntries\u201d polecenie \u201eGenerate IDs\u201d. Zapisa\u0107 plik.<\/li>\n<li>Pobra\u0107 i rozpakowa\u0107 do stworzonego folderu program program Rainbow w wersji 6.0 lub wy\u017cszej (dost\u0119pny <a href=\"http:\/\/okapi.opentag.com\/\">tutaj<\/a>, na stronie z Olifantem dost\u0119pna jest wersja 5).<\/li>\n<li>Uruchomi\u0107 program\u00a0 (nie jest tworzona ikona na pulpicie ani w menu Start). Korzystaj\u0105c z Eksploratora (lub innego managera plik\u00f3w) przeci\u0105gn\u0105\u0107 na kart\u0119 Input List 1 plik TM do konwersji. Ten sam plik przeci\u0105gn\u0105\u0107 na kart\u0119 Input List 2. W karcieLanguages and Encodings ustawi\u0107 w\u0142a\u015bciwe parametry (w razie w\u0105tpliwo\u015bci sprawdzi\u0107 nag\u0142\u00f3wek pliku TMX).<br \/>\n<strong>UWAGA<\/strong>: W \u015bcie\u017cce do pliku nie mog\u0105 si\u0119 znajdowa\u0107 foldery ze spacjami w nazwie.<\/li>\n<li>Z menu \u201eUtilities\u201d wybra\u0107 polecenie \u201eID-based alignment\u201d. Zaznaczy\u0107 opcj\u0119 \u201eSegment the extracted text using the following SRX rules:\u201d (Segmentuj ekstrahowany tekst u\u017cywaj\u0105c nast\u0119puj\u0105cych regu\u0142). Wybra\u0107 plik .srx z regu\u0142ami segmentacji. Jeden dost\u0119pny jest w podfolderze Config folderu Okapi. Ja u\u017cy\u0142em pliku domy\u015blnych regu\u0142 segmentacji programu SDLX z pakietu Trados 2007.<\/li>\n<li>Na karcie Output wybra\u0107 wpisa\u0107 nazw\u0119 pliku wyj\u015bciowego i klikn\u0105\u0107 OK. Je\u015bli nie pope\u0142nili\u015bmy jakiego\u015b b\u0142\u0119du, program rozpocznie prac\u0119 (patrz ilustracja wy\u017cej).<\/li>\n<\/ol>\n<p>I to wszystko. W moim wypadku zamiast ca\u0142ego dnia uzyska\u0142em przesegmentowan\u0105 TM w nieca\u0142e trzy godziny (w\u0142\u0105cznie z wyja\u015bnieniem problemu spacji w nazwie).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wyobra\u017amy sobie, \u017ce dostajemy do przet\u0142umaczenia du\u017cy plik &#8211; now\u0105 wersj\u0119 instrukcji, kt\u00f3r\u0105 ju\u017c kiedy\u015b t\u0142umaczyli\u015bmy. Dzi\u0119ki programowi CAT i starej TM z poprzedniego t\u0142umaczenia mo\u017cemy przet\u0142umaczy\u0107 tylko nowy tekst, stare fragmenty podstawiaj\u0105c z pami\u0119ci, dzi\u0119ki czemu zrobimy to szybciej i taniej ni\u017c kto\u015b inny. Problem w tym, \u017ce \u201estara\u201d TM powsta\u0142a z u\u017cyciem innych regu\u0142 segmentacji, ni\u017c stosowane w obecnie u\u017cywanym oprogramowaniu. Jak sobie z tym poradzi\u0107?<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3],"tags":[12,47,24,50],"_links":{"self":[{"href":"https:\/\/wasaty.pl\/blog\/wp-json\/wp\/v2\/posts\/247"}],"collection":[{"href":"https:\/\/wasaty.pl\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wasaty.pl\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wasaty.pl\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/wasaty.pl\/blog\/wp-json\/wp\/v2\/comments?post=247"}],"version-history":[{"count":1,"href":"https:\/\/wasaty.pl\/blog\/wp-json\/wp\/v2\/posts\/247\/revisions"}],"predecessor-version":[{"id":550,"href":"https:\/\/wasaty.pl\/blog\/wp-json\/wp\/v2\/posts\/247\/revisions\/550"}],"wp:attachment":[{"href":"https:\/\/wasaty.pl\/blog\/wp-json\/wp\/v2\/media?parent=247"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wasaty.pl\/blog\/wp-json\/wp\/v2\/categories?post=247"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wasaty.pl\/blog\/wp-json\/wp\/v2\/tags?post=247"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}