# Segmetiranje izvora

- Segmentacija na nivoju strukture
- Segmentacija na nivoju povedi
  - Pravila za segmentiranje
  - Zasnova pravil
    - Prioriteta
    - Ustvarjanje pravil
    - prelom/izjema
    - Enostavni primeri
- Sestavki iz regularnih izrazov

Orodja za prevodni spomin obdelujejo besedilne enote, ki jih imenujemo segmenti. Besedila je na segmente mogoče razstaviti na več načinov.

Da izberete zaželeno vrsto segmentiranja, odprite v glavnem meniju Možnosti -> Segmentiranje... in odkljukajte ustrezno izbirno polje..

Če ste se odločili za segmentiranje po povedih, lahko postavite pravila v glavnem meniju Možnosti -> Segmentiranje....

Zavedajte se pri tem, da je precejšen del razvoja šel v pripravo zanesljivih pravil za segmentiranje, tako da se vam v večini primerov ne bo treba ukvarjati z razvojem novih pravil. Po drugi strani je ta funkcionalnost lahko zelo koristna v posebnih primerih, saj lahko prevajate, ne da bi vam bilo treba skrbeti za tiste dele besedila, ki se ne smejo spremeniti.

Pozor! Če spreminjate možnosti za filtre pri odprtem projektu, lahko pride do izgube podatkov. Potem ko ste pravila za segmentiranje spremenili, morate odprt projekt zapreti in ponovno odpreti, šele potem bodo nova pravila začela veljati.

# Segmentacija na nivoju strukture

OmegaT besedilo najprej razstavi s segmentiranjem na ravni strukture. Med tem procesom se za tvorbo segmentov uporablja samo struktura izvirne datoteke.

Na primer, datoteke z enostavnim besedilom se da segmentirati na osnovi novih ali praznih vrstic, ali pa je segmentiranje na nivoju strukture nemogoče.. Oblikovane datoteke (dokumenti OpenOffice.org, XHTML in dokumenti HTML) se segmentirajo s pomočjo oznak na ravni bloka (odstavkov). Za ločevanje na segmente je mogoče uporabiti tudi prevedljive atribute predmetov (v datotekah XHTML ali HTML).

# Segmentacija na nivoju povedi

Potem ko je segmentiral izvorne datoteke v logične enote, bo OmegaT te bloke dodatno razbil na stavčne segmente.

## Pravila za segmentiranje

Segmentiranje si lahko predstavite na naslednji način: pred vami je izvorno besedilo, po katerem se, po en znak naenkrat, premika kazalka.. Za vsak položaj kazalke vzamemo vsa pravila v danem vrstnem redu in skušamo prilagoditi njihov vzorec pred besedilu tik na levi strani, vzorec po pa besedilu tik na desni strani kazalke.. Če pravilo ustreza, program neha pregledovati pravila ( v primeru, da gre za izjemno pravilo) ali pa ustvari nov segment (če gre za prelomno pravilo).

Povedna segmentacija se izvaja s pomočjo standarda Segmentation Rules eXchange (SRX) - zavedajte se prosim, da implementacija ne podpira vseh možnosti SRX. Tudi ni mogoče pravil shranjevati ali nalagati v formatu SRX. V kolikor veste, kako SRX deluje, boste v vsakem primeru tudi vedeli, kako dela OmegaT, ker gre za več ali manj isto stvar.

Obstaja dvoje vrst pravil:

- Prelomna pravila lomijo besedilo v segmente.

  Primer za prelomno pravilo: "Ali je v redu? Nimam pojma." lahko segmentiramo kot dva stavka, s tem da ju ločimo v dva segmenta
  Za znak "`?`" bi moralo obstajati prelomno pravilo.

- Pravila za izjeme določajo, kateri deli besedila morajo ostati skupaj.

  Primer: "Mrs. Dalloway " ne bi smeli deliti, tako da je za Mrs (in mr, dr, prof itd), za katero se nahaja pika, definirati izjemno pravilo.

Obstoječa prelomna pravila bi morala zadostovati za večino evropskih jezikov in za japonščino. Bi pa vam svetovali, da za jezik, iz katerega prevajate, definirati še dodatne izjeme, saj očitno ni mogoče za vse jezike določiti vseh možnih izjem hkrati..

## Zasnova pravil

### Prioriteta

Vsa pravila za segmentiranje z ujemajočim jezikovnim vzorcem se uporablja v zahtevanem zaporedju, zato se morajo pravila za določeni jezik nahajati višje kot samodejna pravila.

Primer: pravila za kanadsko francoščino (FR-CA) naj bodo višje kot pravila za francoščino (FR.*) in višje kot privzeta (.*) pravila. Tako bo vaš projekt, v katerem prevajate iz kanadske francoščine, uporabljal pravila v pravilnem zaporedju.

### Ustvarjanje pravil

Da odprete prazno zalogo pravil, kliknite na Dodaj v zgornji polovici dvogovora. Na dnu tabele se prikaže prazna vrstica.

Spremenite ime pravila in jezikovni vzorec. Skladnja jezikovnega vzorca se ravna po pravilih za regularne izraze. Če se vaša zaloga pravil tiče jezikovnega para, vam svetujemo, da ga z gumbom Premakni navzgor prestavite na vrh. Pravilo uredite tako, da kliknete v tabelo in izbrani niz se bo prikazal v spodnjem delu okna.

### prelom/izjema

Potrdilno polje prelom/izjema določa, ali gre za prelomno pravilo (polje je označeno) ali pa za izjemo (polje ni označeno) . Regularna izraza Pred in Za določata, kaj se mora v besedilu nahajati pred dano točko in za njo, če naj se pravilo (prelom ali izjema) uveljavi.

### Nekaj enostavnih primerov

Namen | Pred | Za | Opomba
segmentirati za piko ('`.`') in pred presledkom | `\.` | `\s` | "`\.`" pomeni znak "`.`" "`\s`" pomeni katerikoli beli presledek
ne segmentirati za Mr. | `Mr\.` | `\s` | Gre za izjemo, pazite zatorej, da izbirno polje za pravilo ne bo označeno
`končaj segment za` `"``。``"` `(japonska pika)` | `。` |  | Kot vidite je za prazno
ne segmentirati za M. Mr. Mrs. in Ms. | `Mr??s??\.` | `\s` | izjemno pravilo - značilna je uporaba meta znaka ? v regularnih izrazih (nepožrešen identifikator)

# Povzetek sestavkov iz regularnih izrazov

Na razpolago so regularni izrazi, ki jih podpira Java. Kratek povzetek pravil boste našli v prilogi Sestavki iz regularnih izrazov.

Če potrebujete bolj konkretno informacijo, si prosimo oglejte http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html.

Enostavne primere lahko najdete na mreži (recimo http://www.regular-expressions.info/quickstart.htmle.)

`Pravni poduk`