summaryrefslogtreecommitdiffstats
path: root/completions/hunspell
diff options
context:
space:
mode:
Diffstat (limited to 'completions/hunspell')
-rw-r--r--completions/hunspell43
1 files changed, 43 insertions, 0 deletions
diff --git a/completions/hunspell b/completions/hunspell
new file mode 100644
index 0000000..92b4fe8
--- /dev/null
+++ b/completions/hunspell
@@ -0,0 +1,43 @@
+# hunspell(1) completion -*- shell-script -*-
+
+_hunspell()
+{
+ local cur prev words cword
+ _init_completion || return
+
+ case $prev in
+ --help | --version | -vv | -[hPv])
+ return
+ ;;
+ -d)
+ local IFS=$' \t\n' reset=$(shopt -p nullglob)
+ shopt -s nullglob
+ local -a dicts=(/usr/share/hunspell/*.dic
+ /usr/local/share/hunspell/*.dic)
+ dicts=("${dicts[@]##*/}")
+ dicts=("${dicts[@]%.dic}")
+ $reset
+ IFS=$'\n'
+ COMPREPLY=($(compgen -W '${dicts[@]}' -- "$cur"))
+ return
+ ;;
+ -i)
+ _xfunc iconv _iconv_charsets
+ return
+ ;;
+ -p)
+ _filedir
+ return
+ ;;
+ esac
+
+ if [[ $cur == -* ]]; then
+ COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur"))
+ return
+ fi
+
+ _filedir
+} &&
+ complete -F _hunspell hunspell
+
+# ex: filetype=sh