#compdef storm-cli autoload -U is-at-least _storm-cli() { typeset -A opt_args typeset -a _arguments_options local ret=1 if is-at-least 5.2; then _arguments_options=(-s -S -C) else _arguments_options=(-s -C) fi local context curcontext="$curcontext" state line _arguments "${_arguments_options[@]}" \ '-S+[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--storm=[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--store=[ZMQ socket for connecting storage daemon]:STORE_ENDPOINT: ' \ '-C+[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '--chat=[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '-L+[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '--lnp=[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '-h[Print help information]' \ '--help[Print help information]' \ '-V[Print version information]' \ '--version[Print version information]' \ '*-v[Set verbosity level]' \ '*--verbose[Set verbosity level]' \ ":: :_storm-cli_commands" \ "*::: :->storm-cli" \ && ret=0 case $state in (storm-cli) words=($line[1] "${words[@]}") (( CURRENT += 1 )) curcontext="${curcontext%:*:*}:storm-cli-command-$line[1]:" case $line[1] in (chat-listen) _arguments "${_arguments_options[@]}" \ '--connect=[Remote node address to force connection (re)establishment]:CONNECT: ' \ '-S+[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--storm=[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--store=[ZMQ socket for connecting storage daemon]:STORE_ENDPOINT: ' \ '-C+[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '--chat=[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '-L+[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '--lnp=[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '-h[Print help information]' \ '--help[Print help information]' \ '*-v[Set verbosity level]' \ '*--verbose[Set verbosity level]' \ ':peer -- Remote node id (public key):' \ && ret=0 ;; (chat-send) _arguments "${_arguments_options[@]}" \ '--connect=[Remote node address to force connection (re)establishment]:CONNECT: ' \ '-S+[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--storm=[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--store=[ZMQ socket for connecting storage daemon]:STORE_ENDPOINT: ' \ '-C+[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '--chat=[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '-L+[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '--lnp=[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '-h[Print help information]' \ '--help[Print help information]' \ '*-v[Set verbosity level]' \ '*--verbose[Set verbosity level]' \ ':peer -- Remote node id (public key):' \ && ret=0 ;; (containerize) _arguments "${_arguments_options[@]}" \ '-m+[MIME file type]:MIME: ' \ '--mime=[MIME file type]:MIME: ' \ '-S+[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--storm=[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--store=[ZMQ socket for connecting storage daemon]:STORE_ENDPOINT: ' \ '-C+[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '--chat=[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '-L+[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '--lnp=[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '-h[Print help information]' \ '--help[Print help information]' \ '*-v[Set verbosity level]' \ '*--verbose[Set verbosity level]' \ ':path -- Local file for containerization:' \ '::info -- Information about the container:' \ && ret=0 ;; (assemble) _arguments "${_arguments_options[@]}" \ '-S+[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--storm=[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--store=[ZMQ socket for connecting storage daemon]:STORE_ENDPOINT: ' \ '-C+[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '--chat=[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '-L+[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '--lnp=[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '-h[Print help information]' \ '--help[Print help information]' \ '*-v[Set verbosity level]' \ '*--verbose[Set verbosity level]' \ ':container-id -- ID of the container to assemble into a file:' \ ':path -- Path and filename to save the file:' \ && ret=0 ;; (upload) _arguments "${_arguments_options[@]}" \ '--connect=[Remote node address to force connection (re)establishment]:CONNECT: ' \ '-S+[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--storm=[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--store=[ZMQ socket for connecting storage daemon]:STORE_ENDPOINT: ' \ '-C+[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '--chat=[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '-L+[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '--lnp=[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '-h[Print help information]' \ '--help[Print help information]' \ '*-v[Set verbosity level]' \ '*--verbose[Set verbosity level]' \ ':peer -- Remote node id (public key):' \ ':container-id -- Container to send:' \ && ret=0 ;; (download) _arguments "${_arguments_options[@]}" \ '--connect=[Remote node address to force connection (re)establishment]:CONNECT: ' \ '-S+[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--storm=[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--store=[ZMQ socket for connecting storage daemon]:STORE_ENDPOINT: ' \ '-C+[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '--chat=[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '-L+[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '--lnp=[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '-h[Print help information]' \ '--help[Print help information]' \ '*-v[Set verbosity level]' \ '*--verbose[Set verbosity level]' \ ':peer -- Remote node id (public key):' \ ':container-id -- Container to send:' \ && ret=0 ;; (help) _arguments "${_arguments_options[@]}" \ '-S+[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--storm=[ZMQ socket for connecting Storm node RPC interface]:STORM_ENDPOINT: ' \ '--store=[ZMQ socket for connecting storage daemon]:STORE_ENDPOINT: ' \ '-C+[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '--chat=[ZMQ socket for chat daemon PUB/SUB API]:RADIO_ENDPOINT: ' \ '-L+[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '--lnp=[ZMQ socket for connecting LNP node RPC interface]:LNP_ENDPOINT: ' \ '*-v[Set verbosity level]' \ '*--verbose[Set verbosity level]' \ '*::subcommand -- The subcommand whose help message to display:' \ && ret=0 ;; esac ;; esac } (( $+functions[_storm-cli_commands] )) || _storm-cli_commands() { local commands; commands=( 'chat-listen:Listen for the incoming chat messages from a remote peer' \ 'chat-send:Send typed-in messages to another peer' \ 'containerize:Convert on-disk file into a container in the Store database' \ 'assemble:Assemble a file from a Store database-present container and save as a file' \ 'upload:Upload given container to the remote peer' \ 'download:Download the container from the remote peer' \ 'help:Print this message or the help of the given subcommand(s)' \ ) _describe -t commands 'storm-cli commands' commands "$@" } (( $+functions[_storm-cli__assemble_commands] )) || _storm-cli__assemble_commands() { local commands; commands=() _describe -t commands 'storm-cli assemble commands' commands "$@" } (( $+functions[_storm-cli__chat-listen_commands] )) || _storm-cli__chat-listen_commands() { local commands; commands=() _describe -t commands 'storm-cli chat-listen commands' commands "$@" } (( $+functions[_storm-cli__chat-send_commands] )) || _storm-cli__chat-send_commands() { local commands; commands=() _describe -t commands 'storm-cli chat-send commands' commands "$@" } (( $+functions[_storm-cli__containerize_commands] )) || _storm-cli__containerize_commands() { local commands; commands=() _describe -t commands 'storm-cli containerize commands' commands "$@" } (( $+functions[_storm-cli__download_commands] )) || _storm-cli__download_commands() { local commands; commands=() _describe -t commands 'storm-cli download commands' commands "$@" } (( $+functions[_storm-cli__help_commands] )) || _storm-cli__help_commands() { local commands; commands=() _describe -t commands 'storm-cli help commands' commands "$@" } (( $+functions[_storm-cli__upload_commands] )) || _storm-cli__upload_commands() { local commands; commands=() _describe -t commands 'storm-cli upload commands' commands "$@" } _storm-cli "$@"