frunge-internal
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Frunge] Brechprogramm


From: Dennis Heidsiek
Subject: Re: [Frunge] Brechprogramm
Date: Sat, 26 Sep 2009 05:40:48 +0200
User-agent: Thunderbird 2.0.0.23 (Windows/20090812)

Hallo allerſeits,


Martin Roppelt ſchrieb am 26.09.2009 02:51 Uhr:
Dennis Heidsiek ſchrieb:
TeX-Silbentrennungsalgorithmus und insb. die dafür überarbeiteten freien 
Trennmuſter¹.
Interessant. Ich wüsste auch gerne wie die „Trennmuster“ aussehen oder 
funktionieren.

Ein paar exemplariſche Trennmuſter für Englisch ſehen ſo aus:
x1a
xam3
4m1p
1p2l2

Und anſchaulich werden ſie folgendermaſſen auf das Wort »example« angewendet:
• Die Buchſtaben des Wortes werden mit Leerzeichen aufgefüllt,
• Dann werden alle irgendwie auf das Wort paſſenden Trennmuſter daruntergeſchrieben,
• Dann wird aus jeder »Zahlenſpalte« der höchſte Wert genommen,
• und das Wort darf jetzt an den /ungeraden/ Stellen getrennt werden.

Ein Bild ſagt mehr als tauſend Worte (hier mögliſchſt eine Monoſpace-Schrift einſtellen!):

. e x a m p l e .
    x1a
    x a m3
       4m1p
         1p2l2
-----------------
. e x1a4m3p2l2e .
     ^ - ^ - -
  e x-a m-p l e

Die ungeraden Zahlen ſind alſo erlaubte, die graden verbotene Trennſtellen, wobei höhere Zahlen ſtets die niedrigen außer Kraft ſetzen. in7schl iſt alſo eine »ſtarke« Trennſtelle. Die umſchließenden Punkte ermöglichen ſpezielle Trennmuſter für Wortanfang oder -ende.

Komplexere Trennmuſter kann man quaſi als Ausnahmeregeln für Auſnahmeregeln … für Sonderfälle anſehen: • Das Trennmuſter rein8s7tre bewirkt etwa, dass beim Wort »Vereinstreue« das s- und nicht -s getrennt wird;
• das Trennmuſter .aus5s kommt hingegen bei »ausſchließen« zum Einſatz.

(Ich bin deinem Link gefolgt, und es scheint, dass Wortlisten (ganze 
zusammengesetzte Wörter?) benutzt werden.)

Nein, in TeX (und OpenOffice) kommen nur die Trennmuſter zum Einſatz.

Aber Du haſt Recht: Die primäre Arbeit dieſes Projektes beſteht tatſächlich darin, ihre Wortliſte zu pflegen. Das iſt kurz geſagt eine ziemlich große (>13 MB) Datei, in der korrekte Trennungen einzelner Wörter geſammelt und Korrektur geleſen werden. Wieder ein Beiſpiel:
Kindesbeinen;Kin-des=bei-nen
Kindesentführungen;Kin-des=ent-füh-run-gen
Kindesentführung;Kin-des=ent-füh-rung
Kindesentziehung;Kin-des=ent-zie-hung
Kindeskinder;Kin-des=kin-der
Kindeskindern;Kin-des=kin-dern
Kindes;Kin-des

Aus dieſer Wortliſte wird dann mit dem Programm patgen die Liſte der Trennmuſter berechnet bzw. ›extrahiert‹. Dies bewirkt nicht nur eine enorme Größenreduzierung (bſpw. 93 KB für die deutſchen Trennmuſter), ſondern ſtellt quaſi das Regel-Deſtilat dar. Die Trennmuſter können aber eben auf auf ›ähnliche‹ Wörter angewendet werden, die nicht in der urſprünglichen Wortliſte vorkommen. Die Trennmuſter ſind quaſi ein optimaler Kompromiſs.

Genauere Informationen kann man in der Urſprungsarbeit nachleſen:
Frank Liang: Word hy-phen-a-tion by com-puter,
STAN-CS-83-977, Stanford University Ph.D. thesis, 1983.
http://www.tug.org/docs/liang/

Das meinte ich damit, daſs wir nicht das Rad neu erfinden ſollten (bzw. müſſen ;-)).

Eine Anregung noch: Das Programm könnte erstmal den gesamten Text „glätten“, 
d.h. eventuelle (ß?,) ſ, UNZ(und damit auch Unicode)-Ligaturen auflösen. Damit 
kann man dann auch (per Option) prüfen, ob der Text schon richtig gesetzt ist 
(durch simplen Datenvergleich) (ja, das ist auch durch manuelles Vergleichen 
möglich; aber ich dachte, es ist besser, den Text erstmal zu normalisieren.

Gute Idee, ſo eine Normaliſierung finde ich auch ſinnvoll.


Viele Grüße,
Dennis-ſ





reply via email to

[Prev in Thread] Current Thread [Next in Thread]