diff options
Diffstat (limited to 'src/zsh-completion')
-rw-r--r-- | src/zsh-completion/_sd_hosts_or_user_at_host | 5 | ||||
-rw-r--r-- | src/zsh-completion/_sd_machines | 13 | ||||
-rw-r--r-- | src/zsh-completion/_sd_outputmodes | 5 | ||||
-rw-r--r-- | src/zsh-completion/_sd_unit_files | 9 |
4 files changed, 32 insertions, 0 deletions
diff --git a/src/zsh-completion/_sd_hosts_or_user_at_host b/src/zsh-completion/_sd_hosts_or_user_at_host new file mode 100644 index 0000000000..282f7328e4 --- /dev/null +++ b/src/zsh-completion/_sd_hosts_or_user_at_host @@ -0,0 +1,5 @@ +#autoload + +_alternative \ + 'users-hosts:: _user_at_host' \ + 'hosts:: _hosts' diff --git a/src/zsh-completion/_sd_machines b/src/zsh-completion/_sd_machines new file mode 100644 index 0000000000..a0039ee0f8 --- /dev/null +++ b/src/zsh-completion/_sd_machines @@ -0,0 +1,13 @@ +#autoload +__get_machines () { + machinectl --full --no-legend --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/src/zsh-completion/_sd_outputmodes b/src/zsh-completion/_sd_outputmodes new file mode 100644 index 0000000000..3836f79b73 --- /dev/null +++ b/src/zsh-completion/_sd_outputmodes @@ -0,0 +1,5 @@ +#autoload + +local -a _output_opts +_output_opts=(short short-iso short-precise short-monotonic verbose export json json-pretty json-sse cat) +_describe -t output 'output mode' _output_opts || compadd "$@" diff --git a/src/zsh-completion/_sd_unit_files b/src/zsh-completion/_sd_unit_files new file mode 100644 index 0000000000..3e7a4ee803 --- /dev/null +++ b/src/zsh-completion/_sd_unit_files @@ -0,0 +1,9 @@ +#autoload + +_sd_unit_files() { + local files expl + files=( '*:files:->files' ) + + _description files expl 'unit file' + _files "$expl[@]" -g '*.(automount|busname|device|mount|path|service|socket|swap|target|timer)' +} |