summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--shell-completion/zsh/_machinectl7
-rw-r--r--shell-completion/zsh/_sd_machines13
-rw-r--r--shell-completion/zsh/_systemd-run17
3 files changed, 15 insertions, 22 deletions
diff --git a/shell-completion/zsh/_machinectl b/shell-completion/zsh/_machinectl
index 2e5e05cfcc..026d74fca4 100644
--- a/shell-completion/zsh/_machinectl
+++ b/shell-completion/zsh/_machinectl
@@ -19,12 +19,7 @@
case $cmd in
list) msg="no options" ;;
*)
- _machines=( "${(foa)$(machinectl list | awk '{print $1}')}" )
- if [[ -n "$_machines" ]]; then
- _describe 'machines' _machines
- else
- _message 'no machines'
- fi
+ _sd_machines
esac
else
_message "no more options"
diff --git a/shell-completion/zsh/_sd_machines b/shell-completion/zsh/_sd_machines
new file mode 100644
index 0000000000..1d64d13b1a
--- /dev/null
+++ b/shell-completion/zsh/_sd_machines
@@ -0,0 +1,13 @@
+#autoload
+__get_machines () {
+ machinectl --full --no-pager list | {while read -r a b; do echo $a; done;};
+}
+
+local -a _machines
+_machines=("${(fo)$(__get_machines)}")
+typeset -U _machines
+if [[ -n "$_machines" ]]; then
+ _describe 'machines' _machines
+else
+ _message 'no machines'
+fi
diff --git a/shell-completion/zsh/_systemd-run b/shell-completion/zsh/_systemd-run
index 4bfbd196ca..9bb770072e 100644
--- a/shell-completion/zsh/_systemd-run
+++ b/shell-completion/zsh/_systemd-run
@@ -18,27 +18,12 @@ __slices () {
_describe 'slices' _slices
}
-__get_machines () {
- machinectl --full --no-pager list | {while read -r a b; do echo $a; done;};
-}
-
-__machines () {
- local -a _machines
- _machines=("${(fo)$(__get_machines)}")
- typeset -U _machines
- if [[ -n "$_machines" ]]; then
- _describe 'machines' _machines
- else
- _message 'no machines'
- fi
-}
-
_arguments \
{-h,--help}'[Show help message]' \
'--version[Show package version]' \
'--user[Run as user unit]' \
{-H+,--host=}'[Operate on remote host]:[user@]host:_sd_hosts_or_user_at_host' \
- {-M+,--machine=}'[Operate on local container]:machines:__machines' \
+ {-M+,--machine=}'[Operate on local container]:machines:_sd_machines' \
'--scope[Run this as scope rather than service]' \
'--unit=[Run under the specified unit name]:unit name' \
'--description=[Description for unit]:description' \