mirror of https://gitee.com/openkylin/systemd.git
37 lines
1.2 KiB
Plaintext
37 lines
1.2 KiB
Plaintext
#compdef systemd-inhibit
|
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
|
|
(( $+functions[_systemd-inhibit_commands] )) ||
|
|
_systemd-inhibit_commands(){
|
|
if (( CURRENT == 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
|
|
}
|
|
|
|
(( $+functions[_systemd-inhibit_what] )) ||
|
|
_systemd-inhibit_what() {
|
|
local _inhibit
|
|
_inhibit=(shutdown sleep idle handle-power-key handle-suspend-key handle-hibernate-key handle-lid-switch)
|
|
_values -s : "${_inhibit[@]}"
|
|
}
|
|
|
|
_arguments \
|
|
{-h,--help}'[Show this help]' \
|
|
'--version[Show package version]' \
|
|
'--what=[Operations to inhibit]:options:_systemd-inhibit_what' \
|
|
'--who=[A descriptive string who is inhibiting]:who is inhibiting:' \
|
|
'--why=[A descriptive string why is being inhibited]:reason for the lock:' \
|
|
'--mode=[One of block or delay]:lock mode:( block delay )' \
|
|
'--list[List active inhibitors]' \
|
|
'*:commands:_systemd-inhibit_commands'
|