diff options
Diffstat (limited to 'app-shells/zsh/files')
| -rw-r--r-- | app-shells/zsh/files/zsh-5.9.1-init.d-gentoo.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/app-shells/zsh/files/zsh-5.9.1-init.d-gentoo.patch b/app-shells/zsh/files/zsh-5.9.1-init.d-gentoo.patch new file mode 100644 index 000000000000..15309c6e0623 --- /dev/null +++ b/app-shells/zsh/files/zsh-5.9.1-init.d-gentoo.patch @@ -0,0 +1,32 @@ +--- a/Completion/Unix/Command/_init_d ++++ b/Completion/Unix/Command/_init_d +@@ -1,6 +1,6 @@ + #compdef -p */(init|rc[0-9S]#).d/* + +-local cmds script state ++local cmds script state opts + local -a flags line + + _compskip=all +@@ -116,11 +116,19 @@ fi + + script=$words[1] + [[ $script = */* ]] || script="$(_init_d_fullpath "$script")" ++[[ ! -f $script ]] && ++ { _message "${words[1]:t} is not an init script" && return } ++ + + cmds=( $(_init_d_get_cmds) ) || return 1 + +-(( $#cmds )) || zstyle -a ":completion:${curcontext}:commands" commands cmds || +- cmds=(start stop) ++(( $#cmds )) || zstyle -a ":completion:${curcontext}:commands" commands cmds ++opts=(start stop restart pause zap status ineed iuse needsme usesme broken) ++ ++# If we didn't get $cmds from a zstyle, then read init script for opts. ++# If script doesn't specify opts, then default to the standard opts. ++(( $#cmds )) || cmds=( ${(eQz)${(M)${(f)"$( <$script)"}:#[[:blank:]]#opts=*}#*=} ) ++(( $#cmds )) || cmds=($opts) + + local svcname=$words[1] ret=1 + |
