[Trennmuster] Kommentare zu »umformatierung.py«

Werner LEMBERG wl at gnu.org
Mi Mär 14 21:58:12 CET 2018


Lieber Günter und weitere Mitstreiter!


Derzeit bastle ich fleißig an meiner Perl-Version der Konversion vom
Kurz- zum Langformat.  Hauptgrund ist natürlich, Günters
Python-Implementation zu überprüfen :-) Hut ab, übrigens – Dein Skript
ist eine beachtliche Leistung!

Noch ist das Kurzformat nicht genügend präzise definiert, meiner
Meinung nach – das merkt man aber erst, wenn man sowas selbst
implementiert...

Hier meine aktuelle Version.  Es sind noch nicht alle Probleme
behandelt; z.B. fehlt noch »Geschoß« vs. »Geschoss«, worüber ich noch
nachdenken muß (und in mein Skript einzubauen habe).


----------------------------------------------------------------------


Die neue Kurzversion der Wortliste
==================================


Es gibt fünf Felder, die implizit oder explizit gesetzt werden.

Feld 1, »de«:
  Wort mit Trennungen nach aktueller Rechtschreibung (de-1996).

  Einziges Pflichtfeld.

  »-1-«, falls die Schreibung in den Feldern 2 bis 5 in de-1996
  unzulässig ist (z.B. »-1-;Pro<zeß«).

  Anderenfalls werden die Wortformen aller anderen Felder implizit
  über Transformationsregeln aus diesem Feld abgeleitet.

Feld 2, »de-1901«:
  Wort mit Trennungen nach traditioneller Rechtschreibung (de-1901).

  »-2-«, falls die implizit abgeleitete Schreibung in de-1901
  unzulässig ist (z.B. »Ur<laubs=tipp;-2-«); die implizit abgeleiteten
  Wortformen »de-1901-x-versal« und »de-CH-1901« sind dann ebenfalls
  nicht zulässig.

  Anderenfalls werden die Felder »de-1901-x-versal« und »de-CH-1901«
  implizit über Transformationsregeln aus diesem Feld abgeleitet und
  nicht aus Feld »de«.

  »-2-«, falls Feld 1 gleich »-1-« ist und weitere Felder folgen.

Feld 3, »de-CH« oder »de-x-versal«:
  Wort mit ß-Ersatzschreibung, die in der Schweiz und bei Satz mit
  Großbuchstaben oder Kapitälchen benutzt wird.  Trennungen nach
  aktueller Rechtschreibung.

  »-3-«, falls die implizit abgeleitete Schreibung in de-CH-1996
  unzulässig ist.

  »-3-«, falls Feld 1 gleich »-1-« ist und weitere Felder folgen.

Feld 4, »de-1901-x-versal«:
  Wort mit ß-Ersatzschreibung für de-1901 mit Großbuchstaben oder
  Kapitälchen.

  »-4-«, falls die implizit abgeleitete Schreibung in de-1901
  unzulässig ist oder fehlt.

  »-4-«, falls Feld 1 gleich »-1-« ist und ein weiteres Feld folgt.

Feld 5, »de-CH-1901«:
  Wort mit ß-Ersatzschreibung, die der Schweiz benutzt wird.  Das sind
  insbesondere Wörter mit »sss« gefolgt von einem Vokal, die wie
  andere Dreifachkonsonanten gehandhabt wurden (also anders, als bei
  Ersatzschreibung in Deutschland und Österreich), z.B. »süssauer«

  »-5-«, falls die abgeleitete Schreibung in de-CH-1901 unzulässig
  ist.


----------------------------------------------------------------------


Dazu verschiedene Anmerkungen.

(1) Feld »de« ist erzeugend (implizit Felder 2-5).  Feld »de-1901« ist
    korrigierend (Feld 2) und erzeugend (implizit Felder 3 und 5).
    Die restlichen drei Felder sind nur korrigierend.

    Diese Unterscheidung ist wichtig, um die exakte Darstellung von
    komplizierteren Einträgen zu verstehen.

(2) Noch ungeklärt: Was genau passiert mit Kommentaren, wenn zwei
    Zeilen im Kurzformat auf zwei Zeilen im Langformat abgebildet
    wird?  Mein Skript erzeugt derzeit beispielsweise aus den
    Kurzformateinträgen

      Well=ness;Well=ness # engl.
      -1-;Well=neß;-3-;-4-;-5-

    die Langformateinträge

      Wellness;Well=ness # engl.
      Wellneß;-2-;Well=neß;-4- # engl.     ,

    während Günters Version

      Wellneß;-2-;Well=neß;-4-

    als zweite Zeile generiert.

    Beachte: Im Prinzip ist die Anordnung von Kommentaren egal, da wir
    ja langfristig das Langformat aufgeben wollen.

(3) Noch ungeklärt: Was geschieht mit Groß- und Kleinschreibung?  Daß
    das zweite Feld im ersten Kurzformateintrag

      schoss;Schoß;schoss;schoss;schoss # schoß und Schoß
      Schoß;-2-;-3- # schoß und Schoß

    großgeschrieben wird, sollte irgendwie formal begründet werden.

    Wiederum gilt, daß das eher für die Konsistenz des Kurzformats
    wichtig ist als für die Konversion zum Langformat.

(4) Kopfzerbrechen bereiten mir Kurzformateinträge der Art

      Bett=tuch;Be[t=t/{tt/tt=t}]uch
      Bet=tuch;-2-

    Ich glaube, daß es stattdessen

      Bet=tuch;Be[t=t/{tt/tt=t}]uch
      Bett=tuch;-2-

    sein sollte.

    Begründung: Bei Konstrukten sowohl in eckigen als auch in
    geschwungenen Klammern ergibt der linksstehende Ausdruck die
    primäre Zusammensetzung.  »Be[t=t/{tt/tt=t}]uch« löst sich also
    bevorzugt zu »Bet=tuch« auf.  Das widerspricht dem Eintrag in
    Feld 1 in der oberen Version.

    Als Regel hätten wir dann, daß die primäre Auflösung von
    »[.../...]« und »{.../...}« mit der Wortform in Feld 1
    übereinstimmen soll.

    Im übrigen wäre es wohl besser, »Be[{tt/tt=t}/t=t]uch« zu
    verwenden:

      Bett=tuch;Be[{tt/tt=t}/t=t]uch
      Bet=tuch;-2-

(5) Ich schließe mich Günters Meinung an, daß Mehrfacheinträge für
    alle Felder zulässig sein sollen, solange sie sich nicht
    widersprechen.  Siehe unten Beispiel 2.

(6) Genauso finde ich es richtig, daß wir Wortformen mit drei
    Buchstaben aufnehmen, falls Ableitungen davon vier Buchstaben
    enthalten – die Kurzformateinträge sind dann leichter zu
    verstehen.

(7) Die Transformationsregeln werde ich bei Gelegenheit nachbringen;
    diese E-Mail ist bereits viel zu lang...

Günter, kannst Du (5) und (6) in deinem Skript einbauen?


----------------------------------------------------------------------


Beispiele
=========

(1) Der folgende Kurzformateintrag

      äu-ßers-te

    definiert wie folgt die möglichen Worttrennungen.

    Schritt 1: Erzeuge implizite Wortformen aus Feld »de«.

      de-1901     de-x-versal  de-1901-x-versal  de-CH-1901
      äu-ßer-ste  äus-sers-te  äu-sser-ste       äus-ser-ste

    Die entsprechenden Einträge im Langformat sind somithin

      äusserste;-2-;-3-;-4-;-5-;äu-sser-ste;äus-sers-te;äus-ser-ste
      äußerste;-2-;äu-ßer-ste;äu-ßers-te

(2) Der folgende Kurzformateintrag

      Pro<zess=en-.de;Pro<zeß=en-de

    definiert wie folgt die möglichen Worttrennungen.

    Schritt 1: Erzeuge implizite Wortformen aus Feld »de«.

      de-1901        de-x-versal     de-1901-x-versal de-CH-1901
      Pro<zeß=en-.de Pro<zess=en-.de Pro<zess=en-.de  Pro<zess=en-.de

    Schritt 2: Feld »de-1901« ist explizit gegeben, wodurch Felder 2,
    4 und 5 überschrieben werden.  Beachte, daß die impliziten
    Konversionsregeln von reformierter zu traditioneller
    Rechtschreibung die Trennstelle nach »ss=en« automatisch als
    ungünstig markieren; somithin ergeben sich keine Änderungen für
    die Felder 4 und 5.

      de-1901        de-1901-x-versal  de-CH-1901
      Pro<zeß=en-de  Pro<zess=en-.de   Pro<zess=en-.de

    Die entsprechenden Einträge im Langformat sind somithin

      Prozessende;-2-;-3-;Pro<zess=en-.de;Pro<zess=en-.de
      Prozeßende;-2-;Pro<zeß=en-de;-4-

(3) Die folgenden Kurzformateinträge

      Abend=dress;Abend=dress
      -1-;Abend=dreß

    definieren wie folgt die möglichen Worttrennungen.

    Schritt 1: Erzeuge implizite Wortformen aus Feld »de«.

      de-1901     de-x-versal  de-1901-x-versal  de-CH-1901
      Abend=dreß  Abend=dress  Abend=dress       Abend=dress

    Schritt 2: Feld »de-1901« ist explizit gegeben, wodurch Felder 2,
    4 und 5 überschrieben werden.

      de-1901      de-1901-x-versal  de-CH-1901
      Abend=dress  Abend=dress       Abend=dress

    Schritt 3: Der zweite Eintrag gibt explizit eine zusätzliche
    Wortform für »de-1901«

      de-1901      de-1901-x-versal  de-CH-1901
      Abend=dreß   Abend=dress       Abend=dress

    Die entsprechenden Einträge im Langformat sind somithin

      Abenddress;Abend=dress
      Abenddreß;-2-;Abend=dreß;-4-

    [Derzeit produziert Günters Skript in der Konversion von Lang- zu
     Kurzformat den Kurzformateintrag »-1-;Abend=dreß;-3-;-4-;-5-«, um
     Dopplungen zu vermeiden.]


        Werner




Mehr Informationen über die Mailingliste Trennmuster