summaryrefslogtreecommitdiff
path: root/share/spack/bash/spack-completion.in
diff options
context:
space:
mode:
Diffstat (limited to 'share/spack/bash/spack-completion.in')
-rwxr-xr-xshare/spack/bash/spack-completion.in12
1 files changed, 8 insertions, 4 deletions
diff --git a/share/spack/bash/spack-completion.in b/share/spack/bash/spack-completion.in
index ae9cbc555c..77cd16d076 100755
--- a/share/spack/bash/spack-completion.in
+++ b/share/spack/bash/spack-completion.in
@@ -39,10 +39,14 @@
if test -n "${ZSH_VERSION:-}" ; then
if [[ "$(emulate)" = zsh ]] ; then
- # ensure base completion support is enabled, ignore insecure directories
- autoload -U +X compinit && compinit -i
- # ensure bash compatible completion support is enabled
- autoload -U +X bashcompinit && bashcompinit
+ if ! typeset -f compdef >& /dev/null ; then
+ # ensure base completion support is enabled, ignore insecure directories
+ autoload -U +X compinit && compinit -i
+ fi
+ if ! typeset -f complete >& /dev/null ; then
+ # ensure bash compatible completion support is enabled
+ autoload -U +X bashcompinit && bashcompinit
+ fi
emulate sh -c "source '$0:A'"
return # stop interpreting file
fi