mirror of
https://github.com/systemd/systemd.git
synced 2024-11-01 17:51:22 +03:00
35 lines
1.0 KiB
Plaintext
35 lines
1.0 KiB
Plaintext
#compdef systemd-inhibit
|
|
# SPDX-License-Identifier: LGPL-2.1+
|
|
|
|
_systemd_inhibit_command(){
|
|
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
|
|
}
|
|
|
|
_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:_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_command'
|