# shellcheck disable=SC2148 # No hashbang for bash completion scripts! They are intended to be sourced, not executed. _km-package-uninstall_completions() { local cur prev opts COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" opts="-h --help -s --shared -v --verbose -vv --veryverbose --version" if [[ ${cur} == -* ]] ; then # shellcheck disable=SC2207 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") ) return 0 fi if [[ "${#COMP_WORDS[@]}" != "2" ]]; then if [[ ${prev} != -* ]]; then return 0 fi fi words="" shared="" case "${prev}" in "-s"|"--shared") for file in /usr/local/share/keyman/*; do kbid="$(basename "${file}")"; shared="${shared} ${kbid}"; done # shellcheck disable=SC2207 COMPREPLY=($(compgen -W "${shared}" -- "${cur}")) ;; *) # shellcheck disable=SC2231 # doesn't work with quotes for file in ${XDG_DATA_HOME:-~/.local/share}/keyman/*; do kbid="$(basename "${file}")"; words="${words} ${kbid}"; done # shellcheck disable=SC2207 COMPREPLY=($(compgen -W "${words}" -- "${cur}")) ;; esac } complete -F _km-package-uninstall_completions km-package-uninstall