lib/srx/segment.srx in srx-languagetool-0.9.0 vs lib/srx/segment.srx in srx-languagetool-0.10.0

- old
+ new

@@ -2,14 +2,12 @@ <srx xmlns="http://www.lisa.org/srx20" xmlns:okpsrx="http://okapi.sf.net/srx-extensions" version="2.0"> <header segmentsubflows="yes" cascade="yes"> <formathandle type="start" include="no"></formathandle> <formathandle type="end" include="yes"></formathandle> <formathandle type="isolated" include="no"></formathandle> -<okpsrx:options oneSegmentIncludesAll="no" trimLeadingWhitespaces="no" trimTrailingWhitespaces="no" useJavaRegex="yes"></okpsrx:options> -<okpsrx:sample language="pl" useMappedRules="yes">Als een hoogleraar met emeritaat ('pensioen') is, mag hij de functieaanduiding prof. blijven gebruiken, maar hij heeft tevens het recht gekregen om het bijvoeglijk naamwoord emeritus (Latijn voor 'uitgediend') aan zijn functietitel toe te voegen: em. prof. dr. -Tussen de twee wereldoorlogen vestigde prof. ir. Messerschmitt zich in Augsburg waar hij met behulp van een oudere, rijke vriendin (met wie hij later trouwde) zijn eerste vliegtuigen bouwde, het waren passagierstoestellen. -250 p. n.e.</okpsrx:sample> +<okpsrx:options oneSegmentIncludesAll="no" trimLeadingWhitespaces="no" trimTrailingWhitespaces="no" useJavaRegex="yes" useIcu4JBreakRules="no" treatIsolatedCodesAsWhitespace="no"></okpsrx:options> +<okpsrx:sample language="nl" useMappedRules="yes">De organisatie Doe! is een rare.</okpsrx:sample> <okpsrx:rangeRule></okpsrx:rangeRule> </header> <body> <languagerules> <languagerule languagerulename="Greek"> @@ -1184,10 +1182,14 @@ <rule break="no"> <beforebreak>(…|\.\.\.)[\s\u00A0]?\)[\s\u00A0]</beforebreak> <afterbreak>[^\p{P}]</afterbreak> </rule> <rule break="no"> +<beforebreak>[?!.…]["”]\)[\s\u00A0]</beforebreak> +<afterbreak>[a-z].*</afterbreak> +</rule> +<rule break="no"> <beforebreak>(…|\.\.\.)[\s\u00A0]?\?\)[\s\u00A0]</beforebreak> <afterbreak>[^\p{P}]</afterbreak> </rule> <rule break="no"> <beforebreak>\be\.g\.[\s\u00A0]</beforebreak> @@ -1565,20 +1567,28 @@ <!--Abbrevs that can happen in sentence and at end--> <rule break="no"> <beforebreak>\b(enz|etc|zat|ambt|al|ver|art|wed|lab|bv|Bros)\.\s</beforebreak> <afterbreak>\p{Ll}</afterbreak> </rule> +<rule break="yes"> +<beforebreak>\s(la|do|del)\sMar\.\s</beforebreak> +<afterbreak></afterbreak> +</rule> <rule break="no"> <beforebreak>\b(Ge?n|Ex|Le?v|Nu?m|D(eu)?t|Jo?z|Ri|R[ei]cht|Sa?m|Ko?n|Kr[on]{0,2}|Neh?|Est?|Jb|Ps|Spr?|Pr[ed]{0,2}|H(oog)?l|Je?s|Je?r|Kl(aagl)?|Ez(ech)?|Da?n|Ho?s|Jl|Am|Ob|Mc|Mi[ch]{0,2}|Nah?|Hk|Hab|Zf|[SZ]ef|Ha?g|Zc|Zach|Ma?l|Ma?t|Mk|Mar|Lk|Jh|H(an)?d|Ro?m|Kor|Ga?l|Ef|Fp|Fil|Ko|[CK]ol|Th|Th?e[s]{1,2}|Tm|Ti?t|Fm|Fil(em)?|Hb|Hebr?|Jk|Ja[ck]|Pe?tr?|Joh|Jud|Op(enb)?|Wijsh|Tob|Sir|Bar|Makk)\.\s</beforebreak> <afterbreak></afterbreak> </rule> <rule break="no"> <beforebreak>\b(Drs|Art|Afr|Am|Ar|Br|Cie|Comp|Dhr|(Prof\.)?[Dd]r|Em|Fa|Kon|Stb)\.\s</beforebreak> <afterbreak>\p{Lu}</afterbreak> </rule> <rule break="no"> -<beforebreak>\b([Mm]ej|[Mm]evr|[Mm]rs|[Mm]s|[Mm]gr|[Mm]w|Ndl|Ned|Nl|No|Prof|[Ss]ecr|Chr|Jac|[Ww]ed)\.\s</beforebreak> +<beforebreak>\b(Stb)\.\s</beforebreak> +<afterbreak>[0-9]</afterbreak> +</rule> +<rule break="no"> +<beforebreak>\b([Mm]ej|[Mm]evr|[Mm]rs|[Mm]s|[Mm]gr|[Mm]w|Ndl|Ned|Nl|No|Prof|[Ss]ecr|Chr|Jac|[Ww]ed|Zr)\.\s</beforebreak> <afterbreak></afterbreak> </rule> <rule break="no"> <beforebreak>\b(Sr|St|Ued|Vz|aanh|aanw|aardew|aardr)\.\s</beforebreak> <afterbreak></afterbreak> @@ -1614,11 +1624,11 @@ <rule break="no"> <beforebreak>\b([Ee]d|em|ev|[Ee]xcl|[Ff]a|[Ff]am|[fF]ig|fin|fl|fr)\.\s</beforebreak> <afterbreak></afterbreak> </rule> <rule break="no"> -<beforebreak>\b(geb|[Gg]em|get|gld|id|[Ii]ncl|ind|inf|ing|intern|inz|ir|jhr|jkvr)\.\s</beforebreak> +<beforebreak>\b(geb|[Gg]em|get|gld|id|[Ii]ncl|ind|inf|ing|intern|[Ss]ec|inz|ir|jhr|jkvr)\.\s</beforebreak> <afterbreak></afterbreak> </rule> <rule break="no"> <beforebreak>\b(jl|jr|kr|kt|lic|ll|lt|lw|max|[Mm]evr|mi|[Mm]in|mld)\.\s</beforebreak> <afterbreak></afterbreak> @@ -1727,10 +1737,18 @@ <rule break="no"> <beforebreak>Warner Bros\.</beforebreak> <afterbreak>[a-z]</afterbreak> </rule> <rule break="yes"> +<beforebreak>\s'[2-9][.]\s</beforebreak> +<afterbreak></afterbreak> +</rule> +<rule break="no"> +<beforebreak>\s[A-Z].+!\s</beforebreak> +<afterbreak>[a-z]</afterbreak> +</rule> +<rule break="yes"> <beforebreak>[.!?…][’'"\u00BB\u2019\u201D\u203A\u00AB\p{Pe}\u0002¹²³]*\s</beforebreak> <afterbreak></afterbreak> </rule> <rule break="yes"> <beforebreak>[.!?…][’'"\u00BB\u2019\u201D\u203A\u00AB\p{Pe}\u0002]*</beforebreak> @@ -4970,11 +4988,11 @@ <beforebreak>[\(\)\[\]][\u00A0\s]</beforebreak> <afterbreak></afterbreak> </rule> <!-- don't split at cases like "Friedrich II. wird auch..." --> <rule break="no"> -<beforebreak>[\u00A0\s ][IVX]+\.[\u00A0\s]{1,2}</beforebreak> +<beforebreak>[\u00A0\s ][IVX]+\.[\u00A0\s]{1,2}</beforebreak> <afterbreak>[^\p{Lu}]+</afterbreak> </rule> <!-- don't split at cases like "im 13. oder 14. Jahrhundert" --> <rule break="no"> <beforebreak>\d+\.[\u00A0\s]{1,2}</beforebreak> @@ -5010,11 +5028,11 @@ <beforebreak>\b(spp?)\.[\u00A0\s]{1,2}</beforebreak> <afterbreak></afterbreak> </rule> <!-- German abbreviations --> <rule break="no"> -<beforebreak>\b(betr|Geb|Stk|ggü|Mag|mtl|[Pp]arl|versch|[Ss]tellv|d|Übers|usw|[Bb]zw|Ab[hkst]|[Aa]bzü?gl|[Ll]tda|[Ee]inschl|[Vv]mtl|Ev|bezgl|Abzw|[Vv]sl|ahd|Akk|aktual|allg|alltagsspr|altdt|alttest|amerikan|Anh|Ank|Anm|Art|[Aa]utom|Auftragsnr|Az|Bat|bayr|Bde?|bearb|Bed|Bem|bes|bez|Bez|Bhf|bspw|btto|bw|Dtl|Dez)\.[\u00A0\s]{1,2}</beforebreak> +<beforebreak>\b(betr|Geb|Stk|ggü|Mag|mtl|[Pp]arl|Bsp|versch|[Ss]tellv|d|Übers|usw|[Bb]zw|Ab[hkst]|[Aa]bzü?gl|[Ll]tda|[Ee]inschl|[Vv]mtl|Ev|bezgl|Abzw|[Vv]sl|ahd|Akk|aktual|[Öö]ffentl|prof|allg|alltagsspr|altdt|alttest|amerikan|Anh|Ank|Anm|Art|[Aa]utom|Auftragsnr|Az|Bat|bayr|Bde?|bearb|Bed|Bem|bes|bez|Bez|Bhf|bspw|btto|bw|Dtl|Dez)\.[\u00A0\s]{1,2}</beforebreak> <afterbreak></afterbreak> </rule> <rule break="no"> <beforebreak>\b(cts?|[Cc]a|chem|chin|Chr|cresc|[Dd]at|desgl|ders|dgl|Dipl|Dir?|Doz?|durchg|durchges|Dr|dt|ebd|Ed|[Ee]igt?l|akt|[Ee]ngl|Erg|al|et[cw]|Etw|ev|[Ee]vtl?|[Ee]xkl|Expl|Exz)\.[\u00A0\s]{1,2}</beforebreak> <afterbreak></afterbreak> @@ -5050,11 +5068,11 @@ <rule break="no"> <beforebreak>\d+\.\d+\.[\u00A0\s]</beforebreak> <afterbreak>[\-–][\u00A0\s]\d+</afterbreak> </rule> <rule break="no"> -<beforebreak>\b(Tel|teilw|Temp|trans|Tsd|übertr|übl|ff|überarb|ugs|univ|unveränd|urspr|USt|UST|USt\-IdNr|[Aa][bn]schl|sw|kl|[Gg]r|vgl|vll|Vll|vlt|Vlt|vllt|Vllt|Vgl|Vol|vollst|vorm|Vp|Vs|vs|wesentl|[Rr]echts?staatl|[Ss]taatl|wg|Whg|Hd|Ztr|zus|Zus|zzt?|zzgl|zB|zb|Zz|Zt|zw|Min|Bzgl|bzgl|bezügl|Frhr|ggfs|insb|autom|Mw[sS]t)\.[\u00A0\s]{1,2}</beforebreak> +<beforebreak>\b(Tel|teilw|Temp|trans|Tsd|übertr|übl|ff|überarb|ugs|univ|unveränd|urspr|USt|UST|USt\-IdNr|[Aa][bn]schl|sw|kl|[Gg]r|vgl|vll|Vll|vlt|Vlt|vllt|Vllt|Vgl|Vol|vollst|vorm|Vp|Vs|vs|wesentl|voraussichtl|[Rr]echts?staatl|[Ss]taatl|wg|Whg|Hd|Ztr|zus|Zus|zzt?|zzgl|zB|zb|Zz|Zt|zw|Min|Bzgl|bzgl|bezügl|Frhr|ggfs|insb|autom|Mw[sS]t)\.[\u00A0\s]{1,2}</beforebreak> <afterbreak></afterbreak> </rule> <!-- Break rules --> <rule break="yes"> <beforebreak>[\.!?…][\u0002|'|"|“|«|‹|\)|\]|\}¹²³]?[\u00A0\s]+</beforebreak> @@ -5642,10 +5660,14 @@ <rule break="no"> <beforebreak>\b(абз|арк|ауд|бл|буд|бульв|вул|держ|дод|зав|зб|зв|зовн|екон|к|кв|канд|кн|напр|нпр|нац|обл|оп|пл|пол|поч|пп|пор|просп|розд|стор|табл|[Тт]]ел|ч|част)\.[\h\v]*</beforebreak> <afterbreak></afterbreak> </rule> <rule break="no"> +<beforebreak>\b(кін)\.[\h\v]*</beforebreak> +<afterbreak>[а-яіїєґ0-9IXV]|[ІХ]+\b</afterbreak> +</rule> +<rule break="no"> <beforebreak>\b[сС]т\.[\h\v]</beforebreak> <afterbreak>[\h]*(?!([АВУОІЄ]|На|Але|Так?)[\h\v])</afterbreak> </rule> <!-- нар. 1945 р. | (1966 р. нар.) | 1975 — нар. Осипчук --> <rule break="no"> @@ -5711,16 +5733,16 @@ <afterbreak></afterbreak> </rule> <!-- але розбиваємо «всього 20 м. Почалося» --> <rule break="no"> <beforebreak>(?&lt;!\d[\h\v]*)\bм\.[\h\v]*</beforebreak> -<afterbreak>[А-ЯІЇЄҐ][а-яіїєґ]</afterbreak> +<afterbreak>[А-ЯІЇЄҐ][а-яіїєґ']</afterbreak> </rule> <!-- село/сторінка/місто, але щоб не збігалося з секундами/метрами --> <rule break="no"> <beforebreak>([\h\v][«(][см]|[^0-9/. ][\h\v]+[см])\.[\h\v]+</beforebreak> -<afterbreak>[А-ЯІЇЄҐ]</afterbreak> +<afterbreak>[А-ЯІЇЄҐ][а-яіїєґ']</afterbreak> </rule> <!-- (реж. Емманюель --> <rule break="no"> <beforebreak>[(«"„“”\[‹][а-яіїєґ]+\.[\h\v]+</beforebreak> <afterbreak></afterbreak> @@ -5733,10 +5755,15 @@ <!-- статус правових держав. — Авт.). --> <rule break="no"> <beforebreak></beforebreak> <afterbreak>[\h\v]*[‐-―-][\h\v]*([Рр]ед|[Аа]вт)[\h\v]*\.[\)\]]</afterbreak> </rule> +<!-- Цензор.НЕТ --> +<rule break="no"> +<beforebreak>[а-яіїєґ]\.</beforebreak> +<afterbreak>НЕТ|Інфо|Info|City|Life|UA|Ру</afterbreak> +</rule> <!-- але лишаємо ініціали: С.\u202F Шелухин --> <rule break="yes"> <beforebreak>(?&lt;!\h[А-ЯІЇЄҐ])[.!?…]{1,3}\u202F[\h\v]+</beforebreak> <afterbreak></afterbreak> </rule> @@ -6518,10 +6545,10 @@ <beforebreak>[!?]{1,3}[\)\]]\s</beforebreak> <afterbreak></afterbreak> </rule> <!--Не раздвајај у случају као на пр.: "Петар I дошао је ..."--> <rule break="no"> -<beforebreak>[\s ][IVX]+\s</beforebreak> +<beforebreak>[\s ][IVX]+\s</beforebreak> <afterbreak>[^\p{Lu}]+</afterbreak> </rule> <!--Не раздвајај у случају као "од 13. до 14. века"--> <rule break="no"> <beforebreak>\d+\.\s</beforebreak>