123456789101112131415161718192021222324252627 |
- #compdef {pkgname}
- ###-begin-{pkgname}-completion-###
- if type compdef &>/dev/null; then
- _{pkgname}_completion () {
- local reply
- local si=$IFS
- IFS=$'\n' reply=($(COMP_CWORD="$((CURRENT-1))" COMP_LINE="$BUFFER" COMP_POINT="$CURSOR" SHELL=zsh {completer} completion-server -- "${words[@]}"))
- IFS=$si
- if [ "$reply" = "__tabtab_complete_files__" ]; then
- _files
- else
- _describe 'values' reply
- fi
- }
- # When called by the Zsh completion system, this will end with
- # "loadautofunc" when initially autoloaded and "shfunc" later on, otherwise,
- # the script was "eval"-ed so use "compdef" to register it with the
- # completion system
- if [[ $zsh_eval_context == *func ]]; then
- _{pkgname}_completion "$@"
- else
- compdef _{pkgname}_completion {pkgname}
- fi
- fi
- ###-end-{pkgname}-completion-###
|