Bronsegmentatie

Inhoud

Basisbegrippen van segmentatie

Programma's met vertaalgeheugens werken met teksteenheden die segmenten worden genoemd. Er bestaan meerdere manieren om een tekst op te delen in segmenten.

OmegaT parst eerst de tekst voor segmentatie op structuur-niveau. Gedurende dit proces wordt alleen de structuur van het brondocument gebruikt om segmenten te maken. Bijvoorbeeld: tekstbestanden kunnen worden gesegmenteerd op regeleinden, lege regels of helemaal niet op structuurniveau worden gesegmenteerd. Bestanden met opmaak (OpenOffice.org, OpenDocument, XHTML- en HTML-documenten) worden gesegmenteerd op blok-niveau (alinea) tags.

Vertaalbare objectattributen (in XHTML- of HTMLbestanden) worden ook als afzonderlijke segmenten ingedeeld.

OmegaT kan ook segmenteren per zin. Zin-segmentatie gebeurt na de segmentatie op structuur-niveau. Segmenten die gedurende beide processen worden gemaakt kunnen helaas niet worden gewijzigd (gesplitst of samengevoegd) tijdens de vertaling. Dit is een beperking van OmegaT welke wij erkennen.

Als u niet tevreden bent met de segmentatie dient u ofwel het bronbestand extern aan te passen, dan wel de segmentatieregels aan te passen. Als dat eenmaal is gedaan moet u het project herladen om uw aanpassingen te kunnen doorvoeren.

Zin-segmentatie

Nadat OmegaT het bronbestand in logische eenheden heeft gesegmenteerd, voor opgemaakte bestanden meestal overeenkomend met alinea's, zal het deze blokken verder segmenteren in zinnen als u Zin-segmentatie niet heeft uitgeschakeld. Algemeen gesproken kan OmegaT de logische bronbestand-blokken segementeren naar elk segment dat u instelt. Als standaard segmenteert OmegaT echter in zinnen, we zullen dat zin-segmentatie noemen.

De Zin-segmentatie werd ingebouwd met de Segmentation Rules eXchange (SRX)-standaard in gedachten, maar op het moment van schrijven ondersteunt OmegaT niet alle SRX-mogelijkheden, noch is het in staat om in SRX-formaat gedefinieerde regels te im-/exporteren. Maar als u weet hoe SRX werkt, dan weet u ook al hoe OmegaT werkt omdat ze min of meer hetzelfde zijn.

Over regels

Er zijn twee soorten mogelijke regels.

Voorbeeld afbreekregel: "Did it make sense? I was not sure." kan gesegmenteerd worden als twee zinnen na het "?". Er zou een afbreekregel moeten zijn voor "?".

Voorbeeld uitzonderingregel: "Who is afraid of Mrs. Woolf?" kan niet worden gesegmenteerd na de ".". Er zou een uitzonderingregel moeten zijn voor "Mrs.".

De voorgedefinieerde afbreekregels zouden voldoende moeten zijn voor de meeste Europese talen en Japans, maar we raden aan om meer uitzonderingregels te definiëren voor de taal waaruit u vertaalt, omdat het uiteraard onmogelijk is om alle mogelijke uitzonderingen voor alle mogelijke talen vooraf te definiëren.

Regels instellen

Selecteer Opties -> Segmentatie... uit het hoofdmenu om de regels in te stellen. Let er op dat u als u segmentatie-opties wijzigt als een project geopend is, u het project moet herladen om de wijzigingen door te voeren.

Verzamelingen van regels

Alle segmentatieregels die zijn ingesteld met een overeenkomend taalpatroon worden toegepast in de opgegeven volgorde van prioriteit, dus regels voor een specifieke taal zouden hoger moeten staan dan de standaardregels.

Regels voor Canadees Frans (FR-CA) zouden bijvoorbeeld hoger moeten staan dan de regels voor Frans (FR.*) en hoger dan de standaardregels (.*). Dan zal bij vertalen vanuit Canadees Frans uw project de regels, die zijn gedefinieerd voor die taal, de regels voor Frans en de standaardregels, in de juiste volgorde gebruiken.

Klik op Toevoegen in het bovengedeelte van het dialoogvenster om een lege verzameling van regels te maken. Een nieuwe regel verschijnt aan de onderzijde van de tabel. Wijzig de naam van de regelverzameling en het taalpatroon. De syntax van het taalpatroon komt overeen met de syntax voor reguliere uitdrukkingen. Zie de sectie Korte samenvatting van constructies van reguliere uitdrukkingen hieronder.

Als uw verzameling van regels een taal/land-paar betreft raden wij u aan om het naar boven te verplaatsen met de knop Naar boven.

Klik eenvoudigweg op een verzameling van regels in een tabel om die te bewerken, de regels van de verzameling zullen in het onderste gedeelte van het venster verschijnen.

Het keuzevak Afbreek/Uitzondering bepaalt of het een afbreekregel (keuzevak geselecteerd) of een uitzonderingregel is (keuzevak niet geselecteerd). Twee reguliere uitdrukkingen Voor en Na specificeren wat er voor en na een bepalde positie staat zodat het voldoet aan of de uitzonderingregel of de afbreekregel.

Het proces van segmenteren kan vereenvoudigd worden voorgesteld door het volgende. Stelt u zich een cursor voor die zich verplaatst van ná het eerste tot vóór het laatste teken van een tekst. Voor elke cursorpositie nemen we elke regel in de opgegevn volgorde en proberen het Voor-patroon toe te passen op alle tekst die links van de cursor staat en het Na-patroon op de tekst rechts daarvan, zodat zij de cursor raken.

Als de toepassing van een regel succesvol is, voor uitzonderingregels doen we niets maar stoppen het onderzoeken van meer regels en voor afbreekregels nemen we de tekst links als een afzonderlijk segment, voor elke cursorpositie in de tekst.

Eenvoudige voorbeelden

Doel: een segment instellen na een punt ('.') en vóór een spatie
Voor: \. Na: \s
Opmerking: "\." betekent het teken "."
"\s" betekent elk teken voor witruimte
Doel: geen segment instellen na "Mr."
Voor: Mr\. Na: \s
Opmerking: Vergeet niet om het keuzevak niet geselecteerd te laten
Doel: een segment instellen na "。" (Japanse punt)
Voor: 。 Na: (leeg)
Opmerking: U kunt een veld leeg laten

Reguliere uitdrukkingen om te gebruiken in segmentatieregels

De segmentatieregels zelf worden weergegeven als reguliere uitdrukkingen. Dit zorgt voor maximale flexibiliteit in de definities van regels en sluit aan bij SRX.

Korte samenvatting van constructies van reguliere uitdrukkingen

Dit zijn niet de enige constructies die u mag gebruiken in OmegaT segmentatieregels, maar meer de meest toegepaste. OmegaT ondersteunt alle mogelijkheden voor reguliere uitdrukkingen zoals beschreven in de SRX-standaard.

Constructie Overeenkomsten
 
Vlaggen
(?i)Schakelt overeenkomen van hoofd-/kleine letters in (standaard is het patroon hoofdletter-gevoelig).
 
Tekens
xHet teken x, met uitzondering van het volgende...
\uhhhhHet teken met de hexadecimale waarde 0xhhhh
\tHet Tab-teken ('\u0009')
\nHet teken voor een nieuwe regel (line feed) ('\u000A')
\rHet teken voor een carriage-return ('\u000D')
 
Quote
\Niets, maar quote het volgende teken. Dit is vereist als u een van de metatekens !$()*+.<>?[\]^{|} zou willen invoeren om overeen te komen als hetzelfde teken.
\\Dit is bijvoorbeeld het teken voor een backslash
\QNiets, maar quote alle tekens tot \E
\ENiets, maar beëindigt quoten dat werd gestart door \Q
 
Tekenklassen
[abc]a, b of c (eenvoudige klasse)
[^abc]Elk teken met uitzondering van a, b of c (negatie)
[a-zA-Z]a tot en met z of A tot en met Z inclusief (bereik)
 
Voorgedefinieerde tekenklassen
.Elk teken (met uitzondering van regeleinden)
\dEen getal: [0-9]
\DGeen getal: [^0-9]
\sEen teken voor witruimte: [ \t\n\x0B\f\r]
\SEen teken niet zijnde witruimte: [^\s]
\wEen woordteken: [a-zA-Z_0-9]
\WEen teken voor geen-woord: [^\w]
 
Overeenkomsten voor begrenzingen
^Het begin van een regel
$Het einde van een regel
\bEen woordgrens
\BGrens voor geen-woord
 
Gulzige parameters
Deze zullen overeenkomen met zoveel als voor hen mogelijk is. a+ zal bijvoorbeeld overeenkomen met aaa in aaabbb
X?X, één maal of helemaal niet
X*X, nul of meer keren
X+X, één of meer keren
 
Weigerachtige (niet-gulzige) parameters
Deze zullen overeenkomen met zo weinig als voor hen mogelijk is. a+? zal bijvoorbeeld overeen komen met de eerste a in aaabbb
X??X, één maal of helemaal niet
X*?X, nul of meer keren
X+?X, één of meer keren
 
Logische operatoren
XYX gevolgd door Y
X|YOf X óf Y
(XY)XY als een enkele groep

Auteursrechten