X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=shell-completion%2Fzsh%2F_systemctl;h=cc2df3c828626809c1a9cd622c7a27ce595e11b8;hb=ea92ae33e0fbbf8a98cd2e08ca5a850d83d57fae;hp=70d6f3394a805dc02469b56c5b738475926f978d;hpb=ff7a0685a9aaa621f14bfe7cd36010a3236f775a;p=elogind.git diff --git a/shell-completion/zsh/_systemctl b/shell-completion/zsh/_systemctl index 70d6f3394..cc2df3c82 100644 --- a/shell-completion/zsh/_systemctl +++ b/shell-completion/zsh/_systemctl @@ -288,23 +288,29 @@ _systemctl_caching_policy() return 1 } -_hosts_or_user_at_host() { - _alternative \ - 'users-hosts:: _user_at_host' \ - 'hosts:: _hosts' -} - _outputmodes() { local -a _output_opts _output_opts=(short short-monotonic verbose export json json-pretty json-see cat) _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 specifyied 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]' \ @@ -332,7 +338,7 @@ _arguments -s \ {-f,--force}'[When enabling unit files, override existing symlinks. When shutting down, execute action immediately]' \ '--root=[Enable unit files in the specified root directory]:directory:_directories' \ '--runtime[Enable unit files only temporarily until next reboot]' \ - {-H,--host=}'[Show information for remote host]:userathost:_hosts_or_user_at_host' \ + {-H,--host=}'[Show information for remote host]:userathost:_sd_hosts_or_user_at_host' \ {-P,--privileged}'[Acquire privileges before execution]' \ {-n,--lines=}'[Journal entries to show]:number of entries' \ {-o,--output=}'[Change journal output mode]:modes:_outputmodes' \