]> gitweb.fperrin.net Git - DictionaryPC.git/blobdiff - generate_dictionaries.sh
Attempt at using maven for compilation
[DictionaryPC.git] / generate_dictionaries.sh
index b78b508d780b5842c377bb51a5b9beac1b12687f..50a0e2099755552bb7d73ee5fc72e1f438513abc 100755 (executable)
@@ -7,8 +7,9 @@ FR_DICTS=true
 #FR_DICTS=false
 IT_DICTS=true
 #IT_DICTS=false
-# Spanish is unfortunately not yet working
-SINGLE_DICTS="en de fr it"
+EN_TRANS_DICTS=true
+#EN_TRANS_DICTS=false
+SINGLE_DICTS="en de fr it es pt"
 #SINGLE_DICTS=""
 
 VERSION=v007
@@ -17,15 +18,23 @@ VERSION=v007
 
 if $EN_DICTS; then
 # Note: using input1 seems to hang for ZH currently!
-while read langcode langname ; do
+while read langcode langname enlangname ; do
 lang=$(echo $langcode | tr '[a-z]' '[A-Z]')
 test "$lang" = "CY" && lang=CI
 test "$lang" = "CMN" && lang=cmn
 test "$lang" = "GRC" && lang=grc
+test "$lang" = "HAW" && lang=haw
+test "$lang" = "SCN" && lang=scn
+test "$lang" = "YUE" && lang=yue
+test "$lang" = "PDC" && lang=pdc
+test "$lang" = "NDS" && lang=nds
+test "$lang" = "CU" && lang=cu
+test "$lang" = "ROM" && lang=rom
 
 reverse_dicts=""
 if test "$lang" = "DE" -o "$lang" = "FR" -o "$lang" = "IT" ; then
 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"
+#reverse_dicts="$reverse_dicts --input4=data/inputs/wikiSplit/$langcode/EN.data --input4Name=${langcode}wikitionary --input4Format=enwiktionary --input4LangPattern=${enlangname} --input4LangCodePattern=en --input4EnIndex=1 --input4WiktionaryType=EnForeign"
 fi
 
 stoplist=""
@@ -53,6 +62,11 @@ done
 if $DE_DICTS; then
 while read langcode langname ; do
 lang=$(echo $langcode | tr '[a-z]' '[A-Z]')
+test "$lang" = "CY" && lang=CI
+test "$lang" = "CMN" && lang=cmn
+test "$lang" = "GRC" && lang=grc
+test "$lang" = "HAW" && lang=haw
+test "$lang" = "YUE" && lang=yue
 
 reverse_dicts=""
 if test "$lang" = "FR" -o "$lang" = "IT" ; then
@@ -61,7 +75,9 @@ fi
 
 stoplist=""
 test -e data/inputs/stoplists/${langcode}.txt && stoplist="--lang2Stoplist=data/inputs/stoplists/${langcode}.txt"
+input0=""
 test -e data/inputs/wikiSplit/de/${lang}.data && input0="--input0=data/inputs/wikiSplit/de/${lang}.data --input0Name=dewikitionary --input0Format=enwiktionary --input0LangPattern=${langname} --input0LangCodePattern=${langcode} --input0EnIndex=1 --input0WiktionaryType=EnForeign"
+input2=""
 test -e data/inputs/wikiSplit/de/${lang}.data && input2="--input2=data/inputs/wikiSplit/de/${lang}.data --input2Format=WholeSectionToHtmlParser --input2Name=dewikitionary --input2WiktionaryLang=DE --input2TitleIndex=2 --input2WebUrlTemplate=http://de.wiktionary.org/wiki/%s"
 ./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 --input1=data/inputs/wikiSplit/en/EN.data --input1Name=enwikitionary --input1Format=EnTranslationToTranslation --input1LangPattern1=de --input1LangPattern2=${langcode} $input2 $reverse_dicts
 rm -f data/outputs/DE-${lang}.quickdic.${VERSION}.zip
@@ -73,6 +89,11 @@ fi
 if $FR_DICTS; then
 while read langcode langname ; do
 lang=$(echo $langcode | tr '[a-z]' '[A-Z]')
+test "$lang" = "CY" && lang=CI
+test "$lang" = "CMN" && lang=cmn
+test "$lang" = "GRC" && lang=grc
+test "$lang" = "HAW" && lang=haw
+test "$lang" = "YUE" && lang=yue
 
 reverse_dicts=""
 if test "$lang" = "DE" -o "$lang" = "IT" ; then
@@ -91,6 +112,11 @@ fi
 if $IT_DICTS; then
 while read langcode langname ; do
 lang=$(echo $langcode | tr '[a-z]' '[A-Z]')
+test "$lang" = "CY" && lang=CI
+test "$lang" = "CMN" && lang=cmn
+test "$lang" = "GRC" && lang=grc
+test "$lang" = "HAW" && lang=haw
+test "$lang" = "YUE" && lang=yue
 
 reverse_dicts=""
 if test "$lang" = "FR" -o "$lang" = "DE" ; then
@@ -105,3 +131,27 @@ rm -f data/outputs/IT-${lang}.quickdic.${VERSION}.zip
 
 done < IT-foreign-dictlist.txt
 fi
+
+if $EN_TRANS_DICTS; then
+while read langcode1 langname1 langcode2 langname2 ; do
+lang1=$(echo $langcode1 | tr '[a-z]' '[A-Z]')
+lang2=$(echo $langcode2 | tr '[a-z]' '[A-Z]')
+test "$lang1" = "CY" && lang1=CI
+test "$lang1" = "CMN" && lang1=cmn
+test "$lang1" = "GRC" && lang1=grc
+test "$lang1" = "HAW" && lang1=haw
+test "$lang1" = "YUE" && lang1=yue
+test "$lang2" = "CY" && lang2=CI
+test "$lang2" = "CMN" && lang2=cmn
+test "$lang2" = "GRC" && lang2=grc
+test "$lang2" = "HAW" && lang2=haw
+test "$lang2" = "YUE" && lang2=yue
+stoplist1=""
+stoplist2=""
+test -e data/inputs/stoplists/${langcode1}.txt && stoplist1="--lang1Stoplist=data/inputs/stoplists/${langcode1}.txt"
+test -e data/inputs/stoplists/${langcode2}.txt && stoplist2="--lang2Stoplist=data/inputs/stoplists/${langcode2}.txt"
+./run.sh --lang1=$lang1 --lang2=$lang2 $stoplist1 $stoplist2 --dictOut=data/outputs/${lang1}-${lang2}.quickdic --dictInfo="(EN)Wiktionary-based ${lang1}-${lang2} dictionary." --input1=data/inputs/wikiSplit/en/EN.data --input1Name=enwikitionary --input1Format=EnTranslationToTranslation --input1LangPattern1=${langcode1} --input1LangPattern2=${langcode2}
+rm -f data/outputs/${lang1}-${lang2}.quickdic.${VERSION}.zip
+7z a -mx=9 data/outputs/${lang1}-${lang2}.quickdic.${VERSION}.zip ./data/outputs/${lang1}-${lang2}.quickdic
+done < EN-trans-dictlist.txt
+fi