# bash completion for check_nvidia_smi_temperature           -*- shell-script -*-

_check_nvidia_smi_temperature()
{
    local cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]}
    COMPREPLY=()

    case $prev in
        -i)
            # the indices of the installed GPUs, after the last comma of a list
            type -P nvidia-smi >/dev/null || return
            local indices
            indices=$(nvidia-smi --query-gpu=index --format=csv,noheader 2>/dev/null)
            mapfile -t COMPREPLY < <(compgen -W "$indices" -P "${cur%"${cur##*,}"}" -- "${cur##*,}")
            return
            ;;
        -w | -c)
            return
            ;;
    esac

    # no positional arguments: offer the options
    mapfile -t COMPREPLY < <(compgen -W '-w -c -i -h' -- "$cur")
}
complete -F _check_nvidia_smi_temperature check_nvidia_smi_temperature
