]> gitweb.fperrin.net Git - DictionaryPC.git/blob - generate_dictionaries.sh
Add EN-cmn generation.
[DictionaryPC.git] / generate_dictionaries.sh
1 #!/bin/sh
2 DE_DICTS=true
3 #DE_DICTS=false
4 EN_DICTS=true
5 #EN_DICTS=false
6 FR_DICTS=true
7 #FR_DICTS=false
8 IT_DICTS=true
9 #IT_DICTS=false
10 # Spanish is unfortunately not yet working
11 SINGLE_DICTS="en de fr it"
12 #SINGLE_DICTS=""
13
14 #./run.sh --lang1=EN --dictOut=test --dictInfo=test --input0=data/inputs/wikiSplit/en/EN.data  --input0Name=enwikitionary --input0Format=enwiktionary --input0LangPattern=English --input0LangCodePattern=en --input0EnIndex=1 --input0WiktionaryType=EnEnglish
15
16 if $EN_DICTS; then
17 # Note: using input1 seems to hang for ZH currently!
18 while read langcode langname ; do
19 lang=$(echo $langcode | tr '[a-z]' '[A-Z]')
20 test "$lang" = "CY" && lang=CI
21 test "$lang" = "CMN" && lang=cmn
22
23 reverse_dicts=""
24 if test "$lang" = "DE" -o "$lang" = "FR" -o "$lang" = "IT" ; then
25 reverse_dicts="--input3=data/inputs/wikiSplit/$langcode/EN.data --input3Format=WholeSectionToHtmlParser --input3Name=${langcode}wikitionary --input3WiktionaryLang=$lang --input3TitleIndex=1 --input3WebUrlTemplate=http://${langcode}.wiktionary.org/wiki/%s"
26 fi
27
28 stoplist=""
29 test -e data/inputs/stoplists/${langcode}.txt && stoplist="--lang2Stoplist=data/inputs/stoplists/${langcode}.txt"
30 ./run.sh --lang1=EN --lang2=$lang --lang1Stoplist=data/inputs/stoplists/en.txt $stoplist --dictOut=data/outputs/EN-${lang}.quickdic --dictInfo="(EN)Wiktionary-based EN-$lang dictionary." --input0=data/inputs/wikiSplit/en/${lang}.data  --input0Name=enwikitionary --input0Format=enwiktionary --input0LangPattern=${langname} --input0LangCodePattern=${langcode} --input0EnIndex=1 --input0WiktionaryType=EnForeign --input1=data/inputs/wikiSplit/en/EN.data --input1Name=enwikitionary --input1Format=enwiktionary --input1LangPattern=${langname} --input1LangCodePattern=${langcode} --input1EnIndex=1 --input1WiktionaryType=EnToTranslation --input2=data/inputs/wikiSplit/en/${lang}.data --input2Format=WholeSectionToHtmlParser --input2Name=enwikitionary --input2WiktionaryLang=EN --input2TitleIndex=2 --input2WebUrlTemplate=http://en.wiktionary.org/wiki/%s $reverse_dicts
31 rm -f data/outputs/EN-${lang}.quickdic.v006.zip
32 7z a -mx=9 data/outputs/EN-${lang}.quickdic.v006.zip ./data/outputs/EN-${lang}.quickdic
33
34 done < EN-foreign-dictlist.txt
35 fi
36
37 # EnEnglish only makes the dictionary cluttered
38 #./run.sh --lang1=EN --lang1Stoplist=data/inputs/stoplists/en.txt --dictOut=data/outputs/EN.quickdic --dictInfo="Wiktionary-based EN dictionary." --input0=data/inputs/wikiSplit/en/EN.data  --input0Name=enwikitionary --input0Format=enwiktionary --input0LangPattern=English --input0LangCodePattern=en --input0EnIndex=1 --input0WiktionaryType=EnEnglish --input2=data/inputs/wikiSplit/en/EN.data --input2Format=WholeSectionToHtmlParser --input2Name=enwikitionary --input2WiktionaryLang=EN --input2TitleIndex=1 --input2WebUrlTemplate=http://en.wiktionary.org/wiki/%s
39 #rm -f data/outputs/EN.quickdic.v006.zip
40 #7z a -mx=9 data/outputs/EN.quickdic.v006.zip ./data/outputs/EN.quickdic
41
42 for langcode in $SINGLE_DICTS ; do
43 lang=$(echo $langcode | tr '[a-z]' '[A-Z]')
44 ./run.sh --lang1=$lang --lang1Stoplist=data/inputs/stoplists/${langcode}.txt --dictOut=data/outputs/${lang}.quickdic --dictInfo="Wiktionary-based ${lang} dictionary." --input1=data/inputs/wikiSplit/${langcode}/${lang}.data --input1Format=WholeSectionToHtmlParser --input1Name=${langcode}wikitionary --input1WiktionaryLang=$lang --input1TitleIndex=1 --input1WebUrlTemplate=http://${langcode}.wiktionary.org/wiki/%s
45 rm -f data/outputs/${lang}.quickdic.v006.zip
46 7z a -mx=9 data/outputs/${lang}.quickdic.v006.zip ./data/outputs/${lang}.quickdic
47
48 done
49
50 if $DE_DICTS; then
51 while read langcode langname ; do
52 lang=$(echo $langcode | tr '[a-z]' '[A-Z]')
53
54 reverse_dicts=""
55 if test "$lang" = "FR" -o "$lang" = "IT" ; then
56 reverse_dicts="--input3=data/inputs/wikiSplit/$langcode/DE.data --input3Format=WholeSectionToHtmlParser --input3Name=${langcode}wikitionary --input3WiktionaryLang=$lang --input3TitleIndex=1 --input3WebUrlTemplate=http://${langcode}.wiktionary.org/wiki/%s"
57 fi
58
59 stoplist=""
60 test -e data/inputs/stoplists/${langcode}.txt && stoplist="--lang2Stoplist=data/inputs/stoplists/${langcode}.txt"
61 ./run.sh --lang1=DE --lang2=$lang --lang1Stoplist=data/inputs/stoplists/de.txt $stoplist --dictOut=data/outputs/DE-${lang}.quickdic --dictInfo="(DE)Wiktionary-based DE-$lang dictionary." --input0=data/inputs/wikiSplit/de/${lang}.data --input0Name=dewikitionary --input0Format=enwiktionary --input0LangPattern=${langname} --input0LangCodePattern=${langcode} --input0EnIndex=1 --input0WiktionaryType=EnForeign --input1=data/inputs/wikiSplit/en/EN.data --input1Name=enwikitionary --input1Format=EnTranslationToTranslation --input1LangPattern1=de --input1LangPattern2=${langcode} --input2=data/inputs/wikiSplit/de/${lang}.data --input2Format=WholeSectionToHtmlParser --input2Name=dewikitionary --input2WiktionaryLang=DE --input2TitleIndex=2 --input2WebUrlTemplate=http://de.wiktionary.org/wiki/%s $reverse_dicts
62 rm -f data/outputs/DE-${lang}.quickdic.v006.zip
63 7z a -mx=9 data/outputs/DE-${lang}.quickdic.v006.zip ./data/outputs/DE-${lang}.quickdic
64
65 done < DE-foreign-dictlist.txt
66 fi
67
68 if $FR_DICTS; then
69 while read langcode langname ; do
70 lang=$(echo $langcode | tr '[a-z]' '[A-Z]')
71
72 reverse_dicts=""
73 if test "$lang" = "DE" -o "$lang" = "IT" ; then
74 reverse_dicts="--input3=data/inputs/wikiSplit/$langcode/FR.data --input3Format=WholeSectionToHtmlParser --input3Name=${langcode}wikitionary --input3WiktionaryLang=$lang --input3TitleIndex=1 --input3WebUrlTemplate=http://${langcode}.wiktionary.org/wiki/%s"
75 fi
76
77 stoplist=""
78 test -e data/inputs/stoplists/${langcode}.txt && stoplist="--lang2Stoplist=data/inputs/stoplists/${langcode}.txt"
79 ./run.sh --lang1=FR --lang2=$lang --lang1Stoplist=data/inputs/stoplists/fr.txt $stoplist --dictOut=data/outputs/FR-${lang}.quickdic --dictInfo="(FR)Wiktionary-based FR-$lang dictionary." --input0=data/inputs/wikiSplit/fr/${lang}.data --input0Name=frwikitionary --input0Format=enwiktionary --input0LangPattern=${langname} --input0LangCodePattern=${langcode} --input0EnIndex=1 --input0WiktionaryType=EnForeign --input1=data/inputs/wikiSplit/en/EN.data --input1Name=enwikitionary --input1Format=EnTranslationToTranslation --input1LangPattern1=fr --input1LangPattern2=${langcode} --input2=data/inputs/wikiSplit/fr/${lang}.data --input2Format=WholeSectionToHtmlParser --input2Name=frwikitionary --input2WiktionaryLang=FR --input2TitleIndex=2 --input2WebUrlTemplate=http://fr.wiktionary.org/wiki/%s $reverse_dicts
80 rm -f data/outputs/FR-${lang}.quickdic.v006.zip
81 7z a -mx=9 data/outputs/FR-${lang}.quickdic.v006.zip ./data/outputs/FR-${lang}.quickdic
82
83 done < FR-foreign-dictlist.txt
84 fi
85
86 if $IT_DICTS; then
87 while read langcode langname ; do
88 lang=$(echo $langcode | tr '[a-z]' '[A-Z]')
89
90 reverse_dicts=""
91 if test "$lang" = "FR" -o "$lang" = "DE" ; then
92 reverse_dicts="--input3=data/inputs/wikiSplit/$langcode/IT.data --input3Format=WholeSectionToHtmlParser --input3Name=${langcode}wikitionary --input3WiktionaryLang=$lang --input3TitleIndex=1 --input3WebUrlTemplate=http://${langcode}.wiktionary.org/wiki/%s"
93 fi
94
95 stoplist=""
96 test -e data/inputs/stoplists/${langcode}.txt && stoplist="--lang2Stoplist=data/inputs/stoplists/${langcode}.txt"
97 ./run.sh --lang1=IT --lang2=$lang --lang1Stoplist=data/inputs/stoplists/it.txt $stoplist --dictOut=data/outputs/IT-${lang}.quickdic --dictInfo="(IT)Wiktionary-based IT-$lang dictionary." --input0=data/inputs/wikiSplit/it/${lang}.data --input0Name=itwikitionary --input0Format=enwiktionary --input0LangPattern=${langname} --input0LangCodePattern=${langcode} --input0EnIndex=1 --input0WiktionaryType=EnForeign --input1=data/inputs/wikiSplit/en/EN.data --input1Name=enwikitionary --input1Format=EnTranslationToTranslation --input1LangPattern1=it --input1LangPattern2=${langcode} --input2=data/inputs/wikiSplit/it/${lang}.data --input2Format=WholeSectionToHtmlParser --input2Name=itwikitionary --input2WiktionaryLang=IT --input2TitleIndex=2 --input2WebUrlTemplate=http://it.wiktionary.org/wiki/%s $reverse_dicts
98 rm -f data/outputs/IT-${lang}.quickdic.v006.zip
99 7z a -mx=9 data/outputs/IT-${lang}.quickdic.v006.zip ./data/outputs/IT-${lang}.quickdic
100
101 done < IT-foreign-dictlist.txt
102 fi