From 67982da4c12a62e96879f92026b336b61bfd8237 Mon Sep 17 00:00:00 2001 From: Laurent Mazet Date: Thu, 28 May 2020 00:47:05 +0200 Subject: [PATCH] keep rule to generate dictionnaries --- dict-dists-extractor/Makefile | 91 ++++++++++++++++++++++++++++++++--- 1 file changed, 85 insertions(+), 6 deletions(-) diff --git a/dict-dists-extractor/Makefile b/dict-dists-extractor/Makefile index 9cdb61b..ede51bf 100644 --- a/dict-dists-extractor/Makefile +++ b/dict-dists-extractor/Makefile @@ -7,17 +7,67 @@ all: $(ROOT_DICT): mkdir $(ROOT_DICT) -$(ROOT_DICT)/en.json: /usr/share/dict/american-english Makefile +#sed -e 's/Ѝ/И/g' +$(ROOT_DICT)/bg.json: /usr/share/dict/bulgarian Makefile + iconv -f Windows-1251 -t utf-8 $< | \ + grep -v '^.$$' | \ + grep -v "['-]" | \ + tr '[абвгдежзийклмнопрстуфхцчшщъьюя]' '[АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЬЮЯ]' | \ + sort | \ + uniq | \ + awk 'BEGIN { print "[" } \ + { print " \"" $$0 "\"," } \ + END { print " \"\"\n]" }' > $@ + +$(ROOT_DICT)/ca.json: /usr/share/dict/catalan Makefile + cat $< | \ + grep -v '^.$$' | \ + grep -v "['-]" | \ + sed -e 's/[áàã]/a/g' \ + -e 's/[éè]/e/g' \ + -e 's/[ç]/c/g' \ + -e 's/[íï]/i/g' \ + -e 's/[ñ]/n/g' \ + -e 's/[óöò]/o/g' \ + -e 's/[úüù]/u/g' | \ + tr '[a-z]' '[A-Z]' | \ + sort | \ + uniq | \ + awk 'BEGIN { print "[" } \ + { print " \"" $$0 "\"," } \ + END { print " \"\"\n]" }' > $@ + +$(ROOT_DICT)/da.json: /usr/share/dict/danish Makefile + cat $< | \ + grep -v '^.$$' | \ + grep -v "['-]" | \ + sed -e 's/æ/Æ/g' \ + -e 's/ø/Ø/g' \ + -e 's/å/Å/g' \ + -e 's/[áä]/a/g' \ + -e 's/ð/d/g' \ + -e 's/[éëè]/e/g' \ + -e 's/[íì]/i/g' \ + -e 's/[óöô]/o/g' \ + -e 's/[ü]/u/g' | \ + tr '[a-z]' '[A-Z]' | \ + sort | \ + uniq | \ + awk 'BEGIN { print "[" } \ + { print " \"" $$0 "\"," } \ + END { print " \"\"\n]" }' > $@ + +$(ROOT_DICT)/en.json: /usr/share/dict/british-english-huge Makefile cat $< | \ grep -v '^.$$' | \ grep -v "[.'-]" | \ sed -e 's/[áâàäå]/a/g' \ -e 's/[ç]/c/g' \ - -e 's/[éêè]/e/g' \ - -e 's/[íî]/i/g' \ + -e 's/[éêèë]/e/g' \ + -e 's/[íîï]/i/g' \ -e 's/[ñ]/n/g' \ - -e 's/[óôö]/o/g' \ - -e 's/[ûü]/u/g' | \ + -e 's/[óôöø]/o/g' \ + -e 's/[úûüù]/u/g' | \ tr '[a-z]' '[A-Z]' | \ sort | \ uniq | \ @@ -42,5 +92,34 @@ $(ROOT_DICT)/fr.json: /usr/share/dict/french Makefile { print " \"" $$0 "\"," } \ END { print " \"\"\n]" }' > $@ +$(ROOT_DICT)/nl.json: /usr/share/dict/dutch Makefile + cat $< | \ + grep -v '^.$$' | \ + grep -v "[1-9+/' .-]" | \ + sed -e 's/[áäâà]/a/g' \ + -e 's/[ç]/c/g' \ + -e 's/[éëèê]/e/g' \ + -e 's/[íïî]/i/g' \ + -e 's/[ñ]/n/g' \ + -e 's/[óöô]/o/g' \ + -e 's/[úüûù]/u/g' | \ + tr '[a-z]' '[A-Z]' | \ + sort | \ + uniq | \ + awk 'BEGIN { print "[" } \ + { print " \"" $$0 "\"," } \ + END { print " \"\"\n]" }' > $@ + +CHECKER = grep -v '^ "[A-Z]*",$$' | grep -v '\[' | grep -v '\]' | grep -v '""' + +check-bg:$(ROOT_DICT)/bg.json + cat $< | grep -v '"[АОЕИТНПРСВМБДКЛГЪЖЗУЧЯЙХЦШЮФЩЬ]*"' | grep -v '\[' | grep -v '\]' | grep -v '""' || echo "$< is correct" + +check-ca:$(ROOT_DICT)/ca.json + cat $< | $(CHECKER) | grep -v '"[A-Z]*L·L[A-Z]*"' || echo "$< is correct" + +check-da:$(ROOT_DICT)/da.json + cat $< | $(CHECKER) | grep -v '"[A-ZÆØÅ]*"' || echo "$< is correct" + check-%:$(ROOT_DICT)/%.json - grep -v '^ "[A-Z,]*",$$' $< | grep -v '\[' | grep -v '\]' | grep -v '""' || echo "$< is correct" + cat $< | $(CHECKER) || echo "$< is correct" -- 2.30.2