# bash completion for gphoto2(1) -*- shell-script -*- _gphoto2() { local cur prev words cword split _init_completion -s -n : || return case $prev in --debug-logfile) _filedir return 0 ;; --hook-script) _filedir return 0 ;; --filename) _filedir return 0 ;; -u|--upload-file) _filedir return 0 ;; --port) COMPREPLY=( $(compgen -W "$( $1 --list-ports 2>/dev/null | \ awk 'NR>3 { print $1 }' )" -- "$cur") ) __ltrim_colon_completions "$cur" return 0 ;; --camera) local IFS=$'\n' COMPREPLY=( $(compgen -W "$( $1 --list-cameras 2>/dev/null | \ awk -F'"' 'NR>2 { print $2 }' )" -- "$cur") ) return 0 ;; --get-config|--set-config|--set-config-index|--set-config-value) COMPREPLY=( $(compgen -W "$( $1 --list-config 2>/dev/null \ )" -- "$cur") ) return 0 ;; esac $split && return if [[ "$cur" == -* ]]; then COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) ) [[ $COMPREPLY == *= ]] && compopt -o nospace return 0 fi } && complete -F _gphoto2 gphoto2 # ex: ts=4 sw=4 et filetype=sh