dotfiles/dot_oh-my-zsh/plugins/fossil/_fossil
2023-01-30 14:28:59 +01:00

32 lines
692 B
Text

#compdef fossil
function _fossil_get_command_list () {
fossil help -a | grep -v "Usage|Common|This is"
}
function _fossil () {
local context state state_descr line
typeset -A opt_args
_arguments \
'1: :->command'\
'2: :->subcommand'
case $state in
command)
local _OUTPUT=$(fossil branch 2>&1 | grep "use --repo")
if [[ -z "$_OUTPUT" ]]; then
compadd "$(_fossil_get_command_list)"
else
compadd clone init import help version
fi ;;
subcommand)
case "$words[2]" in
help) compadd "$(_fossil_get_command_list)" ;;
add) compadd "$(fossil extra)" ;;
*) compcall -D ;;
esac ;;
esac
}
_fossil "$@"