1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-09-02 22:11:54 +02:00
zsh/Completion/Unix/Command/_sh
Barton E. Schaefer d5ba3ed245 31818: fix completion for zsh in _sh, and document the _arguments behavior that made the fix necessary
To avoid side effects, reposition the _arguments call in _sh for the zsh
special case. Document the side effects so avoided, and clean up the
_arguments documentation a bit along the way.
2013-10-12 09:19:24 -07:00

30 lines
547 B
Text

#compdef sh ksh bash zsh csh tcsh rc
if [[ $service == zsh ]]; then
# try a bit harder
if [[ ${words[CURRENT-1]} == -o ]]; then
_options
# no other possibilities
return
fi
fi
if (( CURRENT == ${words[(i)-c]} + 1 )); then
compset -q
_normal
else
local n=${words[(b:2:i)[^-]*]}
if (( n <= CURRENT )); then
compset -n $n
_alternative \
'files:file:_files' \
'commands:command:_normal' && return 0
fi
_default
fi
local ret=$?
[[ $service == zsh ]] && _arguments -S -s -- '*:' && ret=0
return ret