diff options
Diffstat (limited to 'Completion/Zsh/Context')
-rw-r--r-- | Completion/Zsh/Context/_default | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Completion/Zsh/Context/_default b/Completion/Zsh/Context/_default new file mode 100644 index 000000000..8176f392c --- /dev/null +++ b/Completion/Zsh/Context/_default @@ -0,0 +1,27 @@ +#compdef -default- + +local ctl + +if { zstyle -s ":completion:${curcontext}:" use-compctl ctl || + zmodload -e zsh/compctl } && [[ "$ctl" != (no|false|0|off) ]]; then + local opt + + opt=() + [[ "$ctl" = *first* ]] && opt=(-T) + [[ "$ctl" = *default* ]] && opt=("$opt[@]" -D) + compcall "$opt[@]" || return 0 +fi + +_files "$@" && return 0 + +# magicequalsubst allows arguments like <any-old-stuff>=~/foo to do +# file name expansion after the =. In that case, it's natural to +# allow completion to handle file names after any equals sign. + +if [[ -o magicequalsubst && "$PREFIX" = *\=* ]]; then + compstate[parameter]="${words[1]:t}-${PREFIX%%\=*}" + compset -P 1 '*=' + _value "$@" +else + return 1 +fi |