mirror of
git://git.code.sf.net/p/zsh/code
synced 2026-01-02 08:21:09 +01:00
37725: Completion: _init_d: add OpenBSD bits
This commit is contained in:
parent
295133d741
commit
3c9185272d
2 changed files with 24 additions and 1 deletions
|
|
@ -1,3 +1,8 @@
|
|||
2016-01-23 Matthew Martin <phy1729@gmail.com>
|
||||
|
||||
* 37725: Completion/Unix/Command/_init_d: Completion: _init_d:
|
||||
add OpenBSD bits
|
||||
|
||||
2016-01-23 Daniel Shahaf <d.s@daniel.shahaf.name>
|
||||
|
||||
* 37703: Completion/Unix/Command/_git: Completion: git: Also
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
#compdef -p */(init|rc[0-9S]#).d/*
|
||||
|
||||
local cmds script
|
||||
local -a flags
|
||||
|
||||
_compskip=all
|
||||
|
||||
|
|
@ -41,6 +42,23 @@ if [[ $OSTYPE = freebsd* ]]; then
|
|||
|
||||
return 0
|
||||
}
|
||||
elif [[ $OSTYPE = openbsd* ]]; then
|
||||
(( $+functions[_init_d_fullpath] )) ||
|
||||
_init_d_fullpath() {
|
||||
echo /etc/rc.d/$1
|
||||
return 0
|
||||
}
|
||||
|
||||
(( $+functions[_init_d_get_cmds] )) ||
|
||||
_init_d_get_cmds() {
|
||||
local -a cmds disabled
|
||||
|
||||
cmds=(start stop reload restart check)
|
||||
disabled=(${${${(M)${(f)"$(< $script)"}:#rc_(${(~j:|:)cmds})=NO}#rc_}%=NO})
|
||||
echo ${cmds:|disabled}
|
||||
}
|
||||
|
||||
flags=('-d[print debug information]' '-f[forcibly start the daemon]')
|
||||
else
|
||||
(( $+functions[_init_d_fullpath] )) ||
|
||||
_init_d_fullpath() {
|
||||
|
|
@ -90,4 +108,4 @@ cmds=( $(_init_d_get_cmds) ) || return
|
|||
(( $#cmds )) || zstyle -a ":completion:${curcontext}:commands" commands cmds ||
|
||||
cmds=(start stop)
|
||||
|
||||
_sub_commands $cmds
|
||||
_arguments -s -A "-*" $flags ':init.d command:_sub_commands $cmds'
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue