#compdef vm-tui

_vm_tui_guests() {
  local -a guests
  guests=(${(f)"$(vm-tui -list 2>/dev/null | awk 'NR > 1 { print $1 }')"})
  _describe 'guest' guests
}

_vm_tui_keys() {
  local -a keys
  keys=(${(f)"$(vm-tui -catalogue 2>/dev/null | awk '/^  / { print $1 }')"})
  _describe 'key' keys
}

_arguments \
  '-refresh[reload every N seconds]:seconds:' \
  '-section[the section to open]:section:(guests switches storage media templates settings)' \
  '-list[print the guests]' \
  '-info[print a guest]:guest:_vm_tui_guests' \
  '-switches[print the switches]' \
  '-json[JSON output]' \
  '-catalogue[print the configuration keys]' \
  '-describe[describe a key]:key:_vm_tui_keys' \
  '-version[print the version]' \
  '1:guest:_vm_tui_guests'
