Sha256: 18bf115f4487407f451d0d28f70c234727b122f555e5fe192c12866076abcfd3
Contents?: true
Size: 1.95 KB
Versions: 2
Compression:
Stored size: 1.95 KB
Contents
#compdef jkr # Subcommand completion function __jkr-execute-cmd() { local curcontext context state line local env_dir integer ret=1 _arguments \ -C -S \ '--debug[enable debug mode]' \ {-C,--directory}':Jkr directory:_directories' \ '(-): :->jkr_plans' \ && return case $state in (jkr_plans) if [[ -n ${opt_args[(I)-C|--directory]} ]]; then env_dir=${opt_args[${opt_args[(I)-C|--directory]}]} else env_dir="" fi __jkr_plans $env_dir && ret=0 ;; esac return $ret } __jkr-list-cmd() { _arguments \ -C -S \ '--debug[enable debug mode]' \ {-C,--directory}':Jkr directory:_directories' \ && return } __jkr_plans() { local old_IFS="$IFS" # save IFS IFS=$'\n' if [[ -n $1 ]]; then _values "Available plans" $(JKR_ZSHCOMP_HELPER=y jkr list --directory=$1) else _values "Available plans" $(JKR_ZSHCOMP_HELPER=y jkr list) fi IFS="$old_IFS" # restore IFS } # Main completion function _jkr() { local curcontext context state line declare -A opt_args integer ret=1 _arguments \ -C -S \ '(-): :->subcmds' \ '(-)*:: :->option-or-argument' \ && return case $state in (subcmds) __jkr_subcmds && ret=0 ;; (option-or-argument) if (( $+functions[__jkr-$words[1]-cmd] )); then _call_function ret __jkr-$words[1]-cmd else _message 'no completion' fi ;; esac return $ret } __jkr_subcmds() { _values 'Jkr command' \ 'init[Init a Jkr environment]' \ 'execute[Execute a plan]' \ 'resume[Resume in-progress execution]' \ 'list[List jkr plans]' \ 'analyze[Analyze a result]' \ 'query[Query interesting result]' }
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
jkr-0.2.2 | etc/zsh-comp.sh |
jkr-0.2.1 | etc/zsh-comp.sh |