dotfiles/styler/.config/zsh/completions/_styler

51 lines
1.1 KiB
Text
Raw Normal View History

#compdef styler
# the above line should contain all commands to be completed using this file
# zsh autocompletions for styler script
local curcontext="$curcontext" state line ret=1
local cmdnames=(theme set download list help version)
_arguments -C \
'1: :->cmds' \
'2: :->args' \
'3: :->subrout' && ret=0
local -a initial_commands=(
'theme:Temporarily switch theme to specified argument'
'set:Permanently set theme to specified argument'
'download:Download a base16 compatible template'
'list:Display installed processors, templates, or themes'
'help:Display help text and exit'
'version:Display styler information and exit'
)
__themes() {
echo "$(styler list themes)"
}
case $state in
cmds)
_describe -t commands 'styler cmd' initial_commands && ret=0
;;
args)
case $words[2] in
theme | set)
_values 'themes' $(__themes) && ret=0
;;
list)
_values 'listopts' \
'processors[Display available application processors]' \
'templates[Display available base16 templates]' \
'themes[Display available base16 themes]' && ret=0
;;
*)
((ret)) && _message 'no more arguments'
;;
esac
;;
esac