22 lines
580 B
Bash
Executable file
22 lines
580 B
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
# Find the correct spelling of a word. Uses (and requires) fzf to select the
|
|
# correct word. This output can be piped to something like dict to find
|
|
# definitions/synonyms.
|
|
#
|
|
# Requires: aspell, fzf
|
|
# Usage: spell mispeling
|
|
# Example: dict $(spell mispeling)
|
|
|
|
result=$(echo "$@" | aspell -a | tail -n-2)
|
|
if [[ "$result" == '*' ]]; then
|
|
echo "$@"
|
|
else
|
|
words=$(echo "$result" | sed 's/[:,] /\n/g' | tail -n +2)
|
|
if (( $(wc -l <<< "$words") > 1 )) && command -v 'fzf' >/dev/null; then
|
|
fzf <<< "$words"
|
|
else
|
|
echo "$words"
|
|
fi
|
|
fi
|