X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=shell-completion%2Fzsh%2F_systemctl;h=cc2df3c828626809c1a9cd622c7a27ce595e11b8;hp=dbe168a60969e456ce6739b5a242ccd2e7e06ab1;hb=298b9e23a6e21161a7fe486aab94944a58d5e90c;hpb=1acbb95c2b58373909d1e7a09a2eed0f6595cf6e diff --git a/shell-completion/zsh/_systemctl b/shell-completion/zsh/_systemctl index dbe168a60..cc2df3c82 100644 --- a/shell-completion/zsh/_systemctl +++ b/shell-completion/zsh/_systemctl @@ -294,11 +294,23 @@ _outputmodes() { _describe -t output 'output mode' _output_opts || compadd "$@" } +_unit_states() { + local -a _states + _states=(loaded failed active inactive not-found listening running waiting plugged mounted exited dead masked) + _values -s , "${_states[@]}" +} + +_unit_types() { + local -a _types + _types=(automount device mount path service snapshot socket swap target timer) + _values -s , "${_types[@]}" +} + _arguments -s \ {-h,--help}'[Show help]' \ '--version[Show package version]' \ - {-t,--type=}'[List only units of a particular type]:unit type:(automount device mount path service snapshot socket swap target timer)' \ - '--state=[Display units in the specified state]:unit state:(loaded failed active inactive not-found listening running waiting plugged mounted exited dead masked)' \ + {-t,--type=}'[List only units of a particular type]:unit type:_unit_types' \ + '--state=[Display units in the specifyied state]:unit state:_unit_states' \ \*{-p,--property=}'[Show only properties by specific name]:unit property' \ {-a,--all}'[Show all units/properties, including dead/empty ones]' \ '--reverse[Show reverse dependencies]' \