# Segmentacija izvornih datoteka

- Segmentacija na strukturnom nivou
- Segmentacija na rečeničnom nivou
  - Pravila segmentacije
  - Setup pravila
    - Prioritet
    - Stvaranje pravila
    - Prijelom/Izuzetak
    - Jednostavni primjeri
- Konstrukcije uobičajenih izraza

Alatke s memorijama prevoda rade sa jedinicama teksta: segmentima. OmegaT segmentira tekst na dva moguća načina: segmentacija po odjeljcima i rečenična segmentacija.

Radi izbora vrste segmentacije, izaberi Projekt → Svojstva... sa glavnog menija i koristi za to predviđenu kućicu.

Ako je izabrana rečenična segmentacija, pravila za istu možeš napraviti idući na Opcije → Segmentacija... na glavnom meniju.

Imaj u vidu da je dosta razvojnog rada provedeno na sačinjavanju pogodnih pravila segmentacije, tako da u većini slučajeva nećeš se morati odviše napinjati oko pisanja svojih pravila segmentacije. Opet, ova funkcija u nekim slučajevima može biti od velike koristi, tako da ćeš moći prevoditi željeni tekst bez rizika da će doći do neželjenih prelamanja teksta, te će sve ostati na svom mjestu.

Upozorenje! Promena opcija filtera dok je projekt otvoren može dovesti do gubitka podataka. Imaj u vidu da ako pri otvorenom projektu promijeniš neke od opcija segmentacije, da ćeš morati iznova učitati projekt, kako bi softver prihvatio promjene.

# Segmentacija na strukturnom nivou

OmegaT isprva pročešljava tekst radi segmentacije na strukturnoj razini. Tokom ovog procesa samo struktura izvorne datoteke stvara segmente.

Na primjer, text datoteke mogu biti izsegmentirane na prijelomu redova, na praznim redovima ili pak potpuno nesegmentirane. Datoteke s formatacijom u sebi (OpenOffice.org, OpenDocument, XHTML i HTML dokumenti) bivaju segmentirane pomoću tagova na blok-razini (po odjeljcima). Prevodivi atributi objekata (u datotekama XHTML ili HTML) se mogu ekstrahovati u odvojene segmente.

# Segmentacija na rečeničnom nivou

Pošto je program OmegaT izsegmentirao izvornu datoteku u logičke jedinice, OmegaT će nastaviti s daljom segmentacijom tih blokova u rečenice.

## Pravila segmentacije

Proces segmentacije može se prikazati uprošćeno na sljedeći način. zamislite da se kursor kreće po tekstu, slovo po slovo. Za svaki položaj kursora uzimamo pravilo u datom redoslijedu i pokušavamo primijeniti oblik Prije na cijeli tekst koji se nalazi lijevo od kursora i oblik Poslije na tekst koji se nalazi desno od njega. Ako se pronađe podudaranje, program prestaje sa provjerom pravila (za pravilo izuzetka) ili pravi novi segment (za pravilo prijeloma).

Rečenična segmentacja je implementirana putem standarda Segmentation Rules eXchange (SRX) - napominjemo da ne postoji podrška za cjelokupne mogućnosti SRX. Kao što nije moguće importovati/eksportovati definisana pravila u SRX formatu. Međutim, ako ti već poznaš način funkcionisanja SRX pravila, tada će ti biti jasno kako OmegaT segmentira.

Postoje dvije vrste pravila:

- Pravila prijeloma dijele izvorni tekst u segmente.

  Primjer: "Da li je to bilo pametno? Nisam bila sigurna." trebalo je biti izdijeljeno u dva segmenta.
  Znači da bi trebalo da postoji pravilo prijeloma za "`?`".

- Pravila o izuzetku specificiraju koji dijelovi teksta se NE BI trebali odvajati jedan od drugog.

  Primjer: "Mrs. Dalloway " se ne bi trebalo razdvajati između, tako da se, znači, mora načiniti pravilo o izuzetku za Mrs (i Mr. Dr, prof, itd), iza koga slijedi tačka.

Unaprijed podešeno pravilo prijeloma (default) trebalo bi biti dovoljno za većinu evropskih jezika i japanski. S obzirom na tu fleksibilnost, možeš napraviti još pravila o izuzetku za tvoj prevodni jezik. Na taj način će segmenti dobiti na značenju i smislu.

## Setup pravila

### Prioritet

Svi setovi pravila segmentacije s podudarnim jezičkim oblikom, primjenjuju se u datom redoslijedu, tako da bi pravila za određeni jezik, morala biti viša od onih pod "default".

Tako bi na primjer, pravila za kanadski francuski (FR-CA) trebalo da budu viša od pravila za francuski (FR.*) te viša od pravila Default (.*). Time će projekt prevođenja s kanadskog francuskog, koristiti definisana pravila za dotični jezik, potom za francuski, i na kraju pravila pod default, u pravilnom redoslijedu.

### Stvaranje pravila

Radi stvaranja praznog seta pravila, u gornjoj polovini dijaloga, klikni na Add . U dnu tabele pojaviće se jedan prazan redak.

Setu pravila i jezičkom obliku promijeni naziv. Sintaksa jezičkog oblika odgovara sintaksi uobičajenih izraza. Ako tvoj set pravila barata sa parom jezik-država, savjetujemo ti da ga pomjeriš na vrh pomoću dugmeta Pomjeri gore. Radi uređivanja seta pravila, jednostavno klikni po njemu i pravila seta će se pojaviti u donjoj polovini okna.

### Prijelom/Izuzetak

Kućica Prijelom/Izuzetak određuje da li se radi o pravilu prijeloma (kliknuta kućica) ili o pravilu o izuzetku (ne-kliknuta kućica). Dva uobičajena izraza Prije i Poslije određuju šta se mora nalaziti prije i poslije određenog položaja, tako da se, shodno tome, tretira kao pravilo o izuzetku ili o prijelomu.

### Nekoliko jednostavnih primjera

Namjera | Prije | Poslije | Napomena
da se segment napravi poslije tačke ('`.`') ali prije razmaka | `\.` | `\s` | "`\.`" predstavlja znak "`.`" "`\s`" predstavlja bilo kakav znak za bijeli prostor
ne segmentiraj poslije Mr. | `Mr\.` | `\s` | Radi se o pravilu o izuzetku, pa stoga kućica mora biti od-kliknuta.
`napravi segment poslije` `"``。``"` `(japanska tačka)` | `。` |  | Zapazi da je poslije prazno
ne segmentiraj poslije M. Mr. Mrs. i Ms. | `Mr??s??\.` | `\s` | pravilo o izuzetku - pogledaj o upotrebi ? u uobičajenim izrazima (ne-lakomi identifier)

# Rezime konstrukcija uobičajenih izraza

Uobičajeni izrazi za upotrebu ko pravila segmentacije su oni koje podržava Java. Kratak pregled se nalazi u dodatku Konstrukcije uobičajenih izraza.

Za bliže informacije, konsultuj http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html.

Jednostavne savjete možeš naći na internetu (na primjer http://www.regular-expressions.info/quickstart.html.)

`Napomene pravne prirode`