#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'
