7 Selbstdokumentierende Python-Module, Hilfsdateien und experimentelle Skripte
8 zur Arbeit mit der Wortliste.
10 Siehe Abschnitt `Arbeitsfluss`_ für einen Vorschlag zur Anwendung.
12 Das Program PyLit_ kann die ausführbaren Dateien ``*.py`` reversibel in
13 Textdokumente ``*.py.txt`` konvertieren. Mit Docutils_ lassen sich aus den
14 in reStructuredText_ geschriebenen Texten Dokumentationen im HTML- oder
17 .. _PyLit: http://pylit.berlios.de
18 .. _reStructuredText: http://docutils.sourceforge.net/rst.html
19 .. _Docutils: http://docutils.sourceforge.net/rst.html
26 Verzeichnis für Hilfsdateien (Daten/Text)
33 Python-Module für die Arbeit mit der `Wortliste`
34 Wird von den anderen Python-Skripten importiert.
36 Aufruf mit ``python werkzeug.py`` startet einen
37 Test der Werkzeuge und der inneren Konsistenz der Wortliste
38 (Doppeleinträge, Übereinstimmung Schlüssel-Trennmuster).
40 Skripte zur Trennstellenkategorisierung
41 =======================================
43 Siehe auch den Abschnitt `Arbeitsfluss`_ am Ende dieses Dokumentes.
45 Achtung experimentell:
47 * Die Skripte wurden für die eigene Arbeit mit der Wortliste entwickelt und
48 erfordern zum Teil Anpassungen im Quelltext, eine gewisse Einarbeitung,
49 Lesen der enthaltenen Dokumentation und gegebenenfalls Rücksprachen mit
52 * Die Skripte können ohne Schaden anzurichten probiert werden, denn sie
53 ändern nicht direkt die Wortliste sondern erstellen eine Datei
56 * Die Änderungen in dieser Datei können nach Korrekturlesen mittels ::
58 patch ../../wortliste < wortliste.patch
60 auf die Wortliste angewendet werden.
63 Helfer für kleine Editieraufgaben, u.a. entfernen von Doppeleinträgen,
64 Einsortieren neuer Einträge, Überschreiben mit korrigierten Einträgen, ...
65 Erstellt eine Patch-Datei.
67 Aufruf: siehe ``./prepare_patch.py -h``
71 Sammeln und Sortieren von Teilwörtern
73 Aufruf: ``python analyse.py``
75 Vorher in Zeile 355 ff. die gewünschte Sprachvariante
76 durch ein/auskommentieren wählen.
78 Schreibt eine Liste der Teilwörter von in der Wortliste markierten
79 zusammengesetzten Wörtern mit den Häufigkeiten des Auftretens
80 in eine Datei ``teilwoerter-<Sprachtag>.txt``
81 (z.B. ``teilwoerter-de-1901.txt``).
83 Auf der Standardausgabe erscheint eine Zusammenfassung zum Stand der
88 Abgleich der Trennstellen für Ableitungen/Varianten mit unterschiedlicher
91 Die zu vergleichenden Endungen sind im Skript in der Liste ``endungen``
95 abgleich_sprachvarianten.py
96 Abgleich der Trennstellen zwischen Sprachvarianten
98 Aufruf: ``python abgleich_sprachvarianten.py``
100 * Übertragen von kategorisierten Trennstellen zwischen Sprachvarianten
101 desselben Wortes, und/oder
103 * Zusammenfassen von Feldern mit gleichem Inhalt wenn das Ergebnis ein
104 wohlgeformter Eintrag ist.
107 abgleich_teilwoerter.py
108 Übertragen von kategorisierten Trennstellen von Teilwörtern auf
109 Vorkommen dieser Teilwörter mit unkategorisierten Trennstellen.
111 Aufruf: ``python abgleich_teilwoerter.py``
113 Vorher in Zeile 26 ff. die gewünschte Sprachvariante
114 durch ein/auskommentieren wählen.
118 Abgleich der Trennstellen zwischen Woertern mit unterschiedlichem Präfix
120 Benötigt eine Liste der Teilwörter, die mit ``analyse.py`` erstellt werden
121 kann (siehe Arbeitsfluss_).
124 Abgleich der Trennstellen zwischen Woertern mit unterschiedlichem Suffix.
126 Benötigt eine Liste der Teilwörter, die mit ``analyse.py`` erstellt werden
127 kann (siehe Arbeitsfluss_).
130 abgleich_neueintraege.py
131 Versuche Trennstellen neuer Wörter aus vorhandenen zu ermitteln
133 Übertragen von kategorisierten Trennstellen vorhandener Wörter
134 auf neu aufzunehmende, ungetrennte Wörter.
136 Erwartet eine Datei mit 1 Wort/Zeile.
137 Pfad/Dateiname im Abschnitt Konfiguration anpassen!
139 Schreibt eine Liste von Einträgen für die Wörter, welche durch Abgleich
140 mit der Datenbasis getrennt werden konnten auf stdout.
142 Die Liste kann nach ``neu.todo`` gespeichert und (nach Durchsicht) mit
143 ``prepare_patch.py neu`` in die Wortliste eingepflegt werden.
147 Suche nach "Teilwortkandidaten" in der Wortliste.
150 Test der Markierung von Komposita in der Wortliste
152 vorsilben_in_teilwoertern.py
153 Spezialwerkzeug zur Präfixmarkierung.
155 Benötigt eine Liste der Teilwörter, die mit ``analyse.py`` erstellt werden
163 Automatische Bestimmung der S-Schreibung auf Basis der Silbentrennung
164 in der `Wortliste der deutschsprachigen Trennmustermannschaft`.
166 Gesamtwortzahl (traditionelle Rechtschreibung): 422398
167 Automatisch konvertiert: 418440
168 Kategorisierung der Trennstellen fehlt: 3903
174 Trennstellenkategorisierung mit Hilfe der Python-Skripte,
177 * Erstellen einer Liste mit Teilwörtern (Zerlegung ausgezeichneter Komposita
178 an den Wortfugen "="):
180 - in `analyse.py` die gewünschte Sprachvariante ein-/auskommentieren.
182 - ``python analyse.py``
184 Die erstellte Wortliste ist ``teilwoerter-<Sprachtag>.txt``.
186 * Bearbeiten der generierten Datei
188 - im Texteditor (suchen/ersetzen, regexp-replace, ...)
190 - mit Skripten (``abgleich_praefixe.py``,
192 ``abgleich_suffixe.py``,
193 ``vorsilben_in_teilwoertern.py``)
195 ``abgleich_suffixe.py``,
196 ``vorsilben_in_teilwoertern.py``)
199 * Rückübertragen der Korrekturen auf die Wortliste
201 - in `abgleich_teilwoerter.py` die gewünschte Sprachvariante und
202 Bearbeitungsfunktion ein-/aukommentieren.
204 - ``python abgleich_teilwoerter.py``
206 - Prüfen der Kontrollausgabe, ggf. Korrektur von ``wortliste.patch``.
208 - ``patch ../../wortliste < wortliste.patch``