Python-Skript update:
[wortliste.git] / skripte / python / MANIFEST
blobdcbed236e669e720d36c0aeb500a6bcc55a96fa7
1 skripte/python
2 ==============
4 Vorwort
5 =======
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
15 PDF-Format erstellen.
17 .. _PyLit: http://pylit.berlios.de
18 .. _reStructuredText: http://docutils.sourceforge.net/rst.html
19 .. _Docutils: http://docutils.sourceforge.net/rst.html
22 Unterverzeichnisse
23 ==================
25 wortteile/
26   Verzeichnis für Hilfsdateien (Daten/Text)
29 Module
30 ======
32 werkzeug.py
33   Python-Module für die Arbeit mit der `Wortliste` 
34   Wird von den anderen Python-Skripten importiert.
35   
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
50   dem Autor.
52 * Die Skripte können ohne Schaden anzurichten probiert werden, denn sie
53   ändern nicht direkt die Wortliste sondern erstellen eine Datei
54   ``wortliste.patch``.
56 * Die Änderungen in dieser Datei können nach Korrekturlesen mittels ::
57   
58     patch ../../wortliste < wortliste.patch
59     
60   auf die Wortliste angewendet werden.
62 analyse.py
63   Sammeln und Sortieren von Teilwörtern
64   
65   Aufruf: ``python analyse.py``
66   
67           Vorher in Zeile 355 ff. die gewünschte Sprachvariante
68           durch ein/auskommentieren wählen.
70   Schreibt eine Liste der Teilwörter von in der Wortliste markierten
71   zusammengesetzten Wörtern mit den Häufigkeiten des Auftretens
72   in eine Datei ``teilwoerter-<Sprachtag>.txt``
73   (z.B. ``teilwoerter-de-1901.txt``).
75   Auf der Standardausgabe erscheint eine Zusammenfassung zum Stand der
76   Präfixauszeichnung.
79 abgleich_endungen.py
80   Abgleich der Trennstellen für Ableitungen/Varianten mit unterschiedlicher
81   Endung.
82   
83   Die zu vergleichenden Endungen sind im Skript in der Liste ``endungen``
84   definiert.  
87 abgleich_sprachvarianten.py
88   Abgleich der Trennstellen zwischen Sprachvarianten
89   
90   Aufruf: ``python abgleich_sprachvarianten.py``
91   
92   * Übertragen von kategorisierten Trennstellen zwischen Sprachvarianten
93     desselben Wortes, und/oder
95   * Zusammenfassen von Feldern mit gleichem Inhalt wenn das Ergebnis ein
96     wohlgeformter Eintrag ist.
97   
99 abgleich_teilwoerter.py
100   Übertragen von kategorisierten Trennstellen von Teilwörtern auf
101   Vorkommen dieser Teilwörter mit unkategorisierten Trennstellen.
102   
103   Aufruf: ``python abgleich_teilwoerter.py``
105           Vorher in Zeile 26 ff. die gewünschte Sprachvariante
106           durch ein/auskommentieren wählen.
108 abgleich_praefixe.py
109   Abgleich der Trennstellen zwischen Woertern mit unterschiedlichem Präfix
111   Benötigt eine Liste der Teilwörter, die mit ``analyse.py`` erstellt werden
112   kann (siehe Arbeitsfluss_).
114 abgleich_sufffixe.py
115   Abgleich der Trennstellen zwischen Woertern mit unterschiedlichem Suffix.
117   Benötigt eine Liste der Teilwörter, die mit ``analyse.py`` erstellt werden
118   kann (siehe Arbeitsfluss_).
120 prepare_patch.py
121   Helfer für kleine Editieraufgaben, u.a. entfernen von Doppeleinträgen.
122   Erstellt eine Patch-Datei.
123   
124   Aufruf: siehe ``./prepare_patch.py -h``
126 wortfugen.py
127   Suche nach "Teilwortkandidaten" in der Wortliste.
128   
129 test_teilwoerter.py
130   Test der Markierung von Komposita in der Wortliste
131   
132 vorsilben_in_teilwoertern.py
133   Spezialwerkzeug zur Präfixmarkierung.
135   Benötigt eine Liste der Teilwörter, die mit ``analyse.py`` erstellt werden
136   kann.
138 Lang-s Schreibung
139 =================
141 s2long-s.py
142   Automatische Bestimmung der S-Schreibung auf Basis der Silbentrennung
143   in der `Wortliste der deutschsprachigen Trennmustermannschaft`.
144   
145   Gesamtwortzahl (traditionelle Rechtschreibung): 422398
146   Automatisch konvertiert: 418440
147   Kategorisierung der Trennstellen fehlt: 3903
148   noch offen: 55
150 Arbeitsfluss
151 ============
153 Trennstellenkategorisierung mit Hilfe der Python-Skripte, 
154 2-stufiges Vorgehen:
156 * Erstellen einer Liste mit Teilwörtern (Zerlegung ausgezeichneter Komposita
157   an den Wortfugen "="):
158   
159   - in `analyse.py` die gewünschte Sprachvariante ein-/auskommentieren.
160   
161   - ``python analyse.py``
162   
163   Die erstellte Wortliste ist ``teilwoerter-<Sprachtag>.txt``.
164   
165 * Bearbeiten der generierten Datei 
167   - im Texteditor (suchen/ersetzen, regexp-replace, ...)
168   
169   - mit Skripten (``abgleich_praefixe.py``, 
170                   ``abgleich_suffixe.py``, 
171                   ``vorsilben_in_teilwoertern.py``)
172   
173 * Rückübertragen der Korrekturen auf die Wortliste
175   - in `abgleich_teilwoerter.py` die gewünschte Sprachvariante und
176     Bearbeitungsfunktion ein-/aukommentieren.
177   
178   - ``python abgleich_teilwoerter.py``
180   - Prüfen der Kontrollausgabe, ggf. Korrektur von ``wortliste.patch``.
181   
182   - ``patch ../../wortliste < wortliste.patch``