mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
41 lines
1.3 KiB
Bash
41 lines
1.3 KiB
Bash
#!/bin/bash
|
|
# Check common misspellings
|
|
# input file format:
|
|
# word->word1, ...
|
|
# Source: http://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines
|
|
|
|
hunspell=../../src/tools/hunspell
|
|
hlang=${HUNSPELL:-en_US}
|
|
alang=${ASPELL:-en_US}
|
|
input=${INPUT:-List_of_common_misspellings.txt}
|
|
|
|
# remove bad words recognised by Hunspell as good
|
|
cat $input | sed 's/[-]>/ /' | $hunspell -d $hlang -1 -L |
|
|
|
|
# remove items with dash for Aspell
|
|
grep '^[^-]* ' |
|
|
|
|
# remove spaces from end of lines
|
|
sed 's/ *$//' >$input.1
|
|
|
|
# remove bad words recognised by Aspell as good
|
|
cut -f 1 -d ' ' $input.1 | aspell -l $alang --list |
|
|
awk 'FILENAME=="-"{a[$1]=1;next}a[$1]{print$0}' - $input.1 |
|
|
|
|
# change commas with tabs
|
|
sed 's/, */ /g' >$input.2
|
|
|
|
# remove lines with unrecognised suggestions (except suggestion with spaces)
|
|
cut -d ' ' -f 2- $input.2 | tr "\t" "\n" | grep -v ' ' >x.1
|
|
cat x.1 | $hunspell -l -d $hlang >x.2
|
|
cat x.1 | aspell -l $alang --list >>x.2
|
|
cat x.2 | awk 'BEGIN{FS="\t"}
|
|
FILENAME=="-"{a[$1]=1;next}a[$2]!=1 && a[$3]!=1{print $0}' - $input.2 >$input.3
|
|
|
|
cut -f 1 -d ' ' $input.3 | aspell -l $alang -a | grep -v ^$ | sed -n '2,$p' |
|
|
sed 's/^.*: //;s/, / /g' >$input.4
|
|
|
|
cat $input.3 | $hunspell -d $hlang -a -1 | grep -v ^$ | sed -n '2,$p' |
|
|
sed 's/^.*: //;s/, / /g' >$input.5
|
|
|