2 # Dieses Perl-Skript wendet die TeX-Trennmusterdatei $1 auf den Datenstrom
3 # an, wobei $2 als Translationsdatei benutzt wird (das ist diejenige Datei,
4 # die `patgen' als viertes Argument benötigt).
6 # Folgende Zeichen werden vor der Weiterverarbeitung aus der Eingabe
11 # Ist Option `-1' nicht gegeben, werden Trennungen direkt nach dem ersten
12 # und vor dem letzten Buchstaben in der Ausgabe entfernt, wie z.B. bei
13 # deutschen Trennungen erforderlich.
15 # Dieses Skript benützt patgen, nicht TeX! Die Trennmusterdatei darf daher
16 # keine TeX-Konstrukte (Makros u.ä.) enthalten.
18 # Aufruf: perl apply-pattern.pl trennmuster german.tr < eingabe > ausgabe
21 # Dieses Perl-Skript extrahiert einfache Wortlisten aus der
22 # »wortliste«-Datenbank, die beispielsweise als Eingabedateien für »patgen«
23 # verwendet werden können.
25 # Aufruf: perl extract-tex.pl [Optionen...] < wortliste > input.patgen
27 # Die »wortliste«-Datei muss in UTF-8 kodiert sein.
29 # Option »-t« wählt die traditionelle deutsche Rechtschreibung aus, Option
30 # »-s« die traditionelle (deutsch)schweizerische Rechtschreibung. Wenn
31 # weder »-s« noch »-t« gesetzt ist, wird die reformierte deutsche
32 # Rechtschreibung ausgewählt.
34 # Ist Option »-x« gesetzt, werden Optionen »-g« und »-u« ignoriert und die
35 # die sprachspezifischen Felder unbearbeitet ausgegeben.
37 # Option »-g« bewirkt die Ausgabe von Wörtern mit gewichteten Trennstellen;
38 # Wörter mit »·« werden ignoriert.
40 # Option »-u« verhindert die Ausgabe von Wörtern mit Markern für
41 # unerwünschte Trennungen (z.B. »An-al.pha-bet«).
43 # Option »-v« verhindert die Ausgabe von Versalformen, wo »ß« durch »ss«
46 # Option »-l« konvertiert die Ausgabe nach latin-1 (wie von »patgen«
50 # -*- coding: utf-8 -*-
52 # Dieses Skript generiert deutsche Trennmuster.
56 # sh make-full-pattern.sh words.hyphenated german.tr
59 # Fügt mehrere Wortlisten zu einer sortierten Gesamtliste der einfachen
60 # (ungetrennten) Wörter)zusammen.
62 # Eingabe: ein oder mehrere Dateinamen.
63 # Ausgabe ist nach stdout.
66 # Dieses Skript liest eine DIFF-Datei der Patgen-Eingabelisten (siehe
67 # Skript patgen-list-diff.sh) und zerlegt sie in Wörter,
69 # * die neu hinzugefügt,
71 # * deren Trennung korrigiert und
72 # * deren Klein- und Großschreibung korrigiert
74 # wurde. Die Wörter werden in Dateien der Form <Eingabedatei>.<ext>
75 # gespeichert. <ext> ist entsprechend 'added', 'removed', 'case' oder
76 # 'hyph'. Beim Aufruf des Skripts muss die Variable 'ftr' mit dem Namen
77 # der Translate-Datei für Patgen vorbelegt werden:
78 # gawk -v ftr=<translate datei> ...
82 # -*- coding: utf-8 -*-
84 # Dieses Skript erzeugt Differenzbilder (diff) für die
85 # Patgen-Eingabelisten zwischen zwei angegebenen Commits. Wird nur ein
86 # Commit angegeben, wird als Zielcommit "master" verwendet. Die
87 # Ausgabedateien werden als Dateien
89 # dehyph*-x/<Start-Commit-Hash>-<Ziel-Commit-Hash>.diff
91 # in Verzeichnissen gespeichert, die der jeweiligen Rechtschreibung
92 # entsprechen. Start- und Ziel-Commit können in jeder gültigen
93 # Git-Syntax angegeben werden. Für die Dateinamen werden die
94 # entsprechenden abgekürzten alphanumerischen Commit-Hashes
98 # $ sh prepare-wordlist.sh < Textdatei
100 # listet alle Wörter mit mindestens vier Buchstaben, die keine römischen
101 # Zahlen sind, aus einer gegebenen Textdatei auf und …
103 # $ sh prepare-wordlist.sh < Textdatei | grep -Fixvf Prüfliste
105 # … prüft sie gegen eine ebenfalls gegebene Prüfliste:
108 Syntax-Test der Wortliste. Benötigt ``texlua`` als Interpreter.
110 Aufruf: ``texlua validate.lua < ../wortliste``
112 -h, --help print help
113 -s, --statistics output record statistics
116 Sortiere die Wortliste und erstelle einen Patch im "unified diff" Format.
118 Aufruf: ``./sort.py`` oder ``python sort.py``
120 Anwenden des Patches: ``patch ../wortliste < wortliste-sortiert.patch``
122 Details mit ``./sort.py -h``
124 Für einen Test der inneren Konsistenz der Wortliste
125 (Doppeleinträge, Übereinstimmung Schlüssel-Trennmuster) siehe
126 skripte/python/werkzeug.py.
130 Python-Module, Hilfsdateien und experimentelle Skripte zur Arbeit mit der
131 Wortliste. Siehe python/MANIFEST
134 Lua-Module und Hilfsdateien zur Arbeit mit der Wortliste. Enthält
135 u.a. eine formale Beschreibung zulässiger Wörter und Datensätze in der
136 Wortliste. Siehe lua/MANIFEST.