#compdef url _url() { local ret=1 context curcontext="$curcontext" state line typeset -A opt_args _arguments -C -w -s \ '(-h --help)'{-h,--help}'[show this help message and exit]' \ '1: :->command' case $state in (command) declare -a commands local commands=( encode:'encode unencoded text' decode:'decode encoded text' ) _describe -t commands command commands && ret=0 ;; esac return ret }