summaryrefslogtreecommitdiffstats
path: root/Completion/Core/compinit
diff options
context:
space:
mode:
authorSven Wischnowsky <wischnow@users.sourceforge.net>2001-02-16 14:57:48 +0000
committerSven Wischnowsky <wischnow@users.sourceforge.net>2001-02-16 14:57:48 +0000
commitd9b00a38701ff795a382020291dfed6c32b6d40e (patch)
tree9bde4411f573d861a75e185e283d37074c01eb2d /Completion/Core/compinit
parentPartial sh emulation fixs for ${1+"$@"} and "${foo=$@}". (diff)
downloadzsh-d9b00a38701ff795a382020291dfed6c32b6d40e.tar
zsh-d9b00a38701ff795a382020291dfed6c32b6d40e.tar.gz
zsh-d9b00a38701ff795a382020291dfed6c32b6d40e.tar.bz2
zsh-d9b00a38701ff795a382020291dfed6c32b6d40e.tar.lz
zsh-d9b00a38701ff795a382020291dfed6c32b6d40e.tar.xz
zsh-d9b00a38701ff795a382020291dfed6c32b6d40e.tar.zst
zsh-d9b00a38701ff795a382020291dfed6c32b6d40e.zip
make `compdef foo=bar' use the service defined for `bar' if there is any (13494)
Diffstat (limited to 'Completion/Core/compinit')
-rw-r--r--Completion/Core/compinit1
1 files changed, 1 insertions, 0 deletions
diff --git a/Completion/Core/compinit b/Completion/Core/compinit
index e9e2c93ee..96779d7f7 100644
--- a/Completion/Core/compinit
+++ b/Completion/Core/compinit
@@ -249,6 +249,7 @@ compdef() {
cmd="${i%%\=*}"
svc="${i#*\=}"
func="$_comps[${(k)_services[(R)$svc]:-$svc}]"
+ (( $+_services[$svc] )) && svc=$_services[$svc]
[[ -z "$func" ]] &&
func="${_patcomps[(K)$svc][1]:-${_postpatcomps[(K)$svc][1]}}"
if [[ -n "$func" ]]; then