Files
darkfi/contrib/auto-complete

87 lines
1.8 KiB
Bash

#!/usr/bin/env bash
_drk()
{
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
# don't complet =
_init_completion -n = || return
opts="-h"
opts+=" -c "
opts+=" -v "
opts+=" -V"
opts+=" deposit"
opts+=" features"
opts+=" hello"
opts+=" help"
opts+=" id"
opts+=" transfer"
opts+=" wallet"
opts+=" withdraw"
# Prevent word reuse
lim=$((COMP_CWORD - 1))
for i in $( seq 0 $lim )
do
if [[ $opts == *"${COMP_WORDS[i]}"* ]]; then
opts=${opts//${COMP_WORDS[i]}/}
opts=${opts//--${COMP_WORDS[i]}/}
fi
done
# case $prev in
# -v)
# opts=$(./drk --verbose | sed -e '$d')
# COMPREPLY=($(compgen -W "${opts}" -- ${cur}))
# return 0
# ;;
# esac
#
# case $prev in
# --V)
# opts=$(./drk --version | sed -e '$d')
# COMPREPLY=($(compgen -W "${opts}" -- ${cur}))
# return 0
# ;;
# esac
COMPREPLY=( $(compgen -W '$(_parse_help "$1")' -- "$cur") $(compgen -W "${opts}" -- ${cur}) )
[[ ${COMPREPLY-} == *= ]] && compopt -o nospace
}
complete -F _drk drk
_darkfid()
{
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
_init_completion -n = || return
opts="-h"
opts+=" -c "
opts+=" -v "
opts+=" -V"
lim=$((COMP_CWORD - 1))
for i in $( seq 0 $lim )
do
if [[ $opts == *"${COMP_WORDS[i]}"* ]]; then
opts=${opts//${COMP_WORDS[i]}/}
opts=${opts//--${COMP_WORDS[i]}/}
fi
done
COMPREPLY=( $(compgen -W '$(_parse_help "$1")' -- "$cur") $(compgen -W "${opts}" -- ${cur}) )
[[ ${COMPREPLY-} == *= ]] && compopt -o nospace
}
complete -F _darkfid darkfid