#!/usr/bin/env bash _ap_bin() { local cur opts COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" opts="--help -h" opts+=" --wipe -w" opts+=" --unhide-groups -u" opts+=" --speedup -s SPEEDUP" opts+=" --rate -r" opts+=" --console -C" opts+=" --instance -I" opts+=" --synthetic-clock -S" opts+=" --home -O" opts+=" --model -M" opts+=" --config" opts+=" --fg -F" opts+=" --disable-fgview" opts+=" --gimbal" opts+=" --autotest-dir" opts+=" --defaults" opts+=" --uartA" opts+=" --uartB" opts+=" --uartC" opts+=" --uartD" opts+=" --uartE" opts+=" --uartF" opts+=" --uartG" opts+=" --uartH" opts+=" --uartI" opts+=" --rtscts" opts+=" --base-port" opts+=" --rc-in-port" opts+=" --sim-address" opts+=" --sim-port-in" opts+=" --sim-port-out" opts+=" --irlock-port" # 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 COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) } complete -F _ap_bin arducopter complete -F _ap_bin arduplane complete -F _ap_bin ardusub complete -F _ap_bin arducopter