#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