2017-03-16 12:08:00 -07:00
|
|
|
#!/usr/bin/env bash
|
2017-04-24 00:06:31 -07:00
|
|
|
|
|
|
|
# A simple script for correcting the spelling of a word. Uses (and requires) fzf
|
|
|
|
# to select the correct word. This output can be piped to something like dict
|
|
|
|
#
|
|
|
|
# Usage: spell mispeling
|
|
|
|
# Example: dict $(spell mispeling)
|
|
|
|
|
|
|
|
result=$(echo "$@" | aspell -a | tail -n-2)
|
|
|
|
if [[ "$result" == '*' ]]; then
|
|
|
|
echo "$@"
|
|
|
|
else
|
|
|
|
if ! command -v 'fzf' >/dev/null; then
|
|
|
|
>&2 echo "fzf not installed"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
words=$(echo "$result" | sed 's/[:,] /\n/g' | tail -n +2)
|
|
|
|
if (( $(wc -l <<< "$words") > 1 )); then
|
|
|
|
fzf <<< "$words"
|
|
|
|
else
|
|
|
|
echo "$words"
|
|
|
|
fi
|
|
|
|
fi
|