2 # -*- coding: utf-8 -*-
5 # Dieses Skript generiert deutsche Trennmuster.
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
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
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]}" \
65 | patgen
$1 pattern.$
(($i-1)) pattern.
$i $2 \
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]}" \