Python-Skript Update
[wortliste.git] / skripte / make-full-pattern.sh
blob7093dac9ece66fd4ee125d539a7c0a6ea160d755
1 #!/bin/bash
2 # -*- coding: utf-8 -*-
5 # Dieses Skript generiert deutsche Trennmuster.
7 # Aufruf:
9 # sh make-full-pattern.sh words.hyphenated german.tr
12 # Eingabe: words.hyphenated Liste von getrennten Wörtern.
13 # german.tr Translationsdatei für patgen.
15 # Ausgabe: pattmp.[1-8] patgen-Resultate.
16 # pattern.[0-8] Trennmuster -- pattern.8 ist die finale
17 # Trennmusterdatei.
18 # pattern.[1-8].log Log-Dateien.
19 # pattern.rules Die patgen-Parameter in kompakter Form.
23 # Die Parameter für patgen für die Level eins bis acht.
25 hyph_start_finish[1]='1 1'
26 hyph_start_finish[2]='2 2'
27 hyph_start_finish[3]='3 3'
28 hyph_start_finish[4]='4 4'
29 hyph_start_finish[5]='5 5'
30 hyph_start_finish[6]='6 6'
31 hyph_start_finish[7]='7 7'
32 hyph_start_finish[8]='8 8'
34 pat_start_finish[1]='2 5'
35 pat_start_finish[2]='2 5'
36 pat_start_finish[3]='2 6'
37 pat_start_finish[4]='2 6'
38 pat_start_finish[5]='2 7'
39 pat_start_finish[6]='2 7'
40 pat_start_finish[7]='2 13'
41 pat_start_finish[8]='2 13'
43 good_bad_thres[1]='1 1 1'
44 good_bad_thres[2]='1 2 1'
45 good_bad_thres[3]='1 1 1'
46 good_bad_thres[4]='1 4 1'
47 good_bad_thres[5]='1 1 1'
48 good_bad_thres[6]='1 6 1'
49 good_bad_thres[7]='1 4 1'
50 good_bad_thres[8]='1 8 1'
53 # Erzeuge leere Startmuster, lösche Datei mit patgen-Parametern.
54 rm -f pattern.0 pattern.rules
55 touch pattern.0
57 for i in 1 2 3 4 5 6 7 8; do
59 # Erzeuge Muster des aktuellen Levels. Steuereingaben werden patgen
60 # mittels einer Pipe übergeben.
61 printf "%s\n%s\n%s\n%s" "${hyph_start_finish[$i]}" \
62 "${pat_start_finish[$i]}" \
63 "${good_bad_thres[$i]}" \
64 "y" \
65 | patgen $1 pattern.$(($i-1)) pattern.$i $2 \
66 | tee pattern.$i.log
68 # Sammle verwendete patgen-Parameter in Datei.
69 printf "%% %s | %s | %s\n" "${hyph_start_finish[$i]}" \
70 "${pat_start_finish[$i]}" \
71 "${good_bad_thres[$i]}" \
72 >> pattern.rules
74 done
76 # eof