#compdef mkmsg
_mkmsg(){
  typeset -A opt_args;
  local context state state_descr line ret=1;
  local actions options commands;

  options=(
    "(-m --message)"{-m=,--message=}"[Custom message, parsed as markdown]" 
    "(-p --prepend)"{-p,--prepend}"[Prepend message to the stream]" 
    "(-h --help)"{-h,--help}"[Display help and exit]" 
    "--version[Print the version and exit]"
  )

  _arguments \
    $options \
    $actions && ret=0;

  (( $ret == 1 )) && _arguments \
    $options \
    $actions && ret=0;
  return $ret;
}

_mkmsg "$@"