diff options
-rw-r--r-- | completions/mplayer | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/completions/mplayer b/completions/mplayer index 85d11b09..ba8e3e90 100644 --- a/completions/mplayer +++ b/completions/mplayer @@ -243,6 +243,17 @@ _mplayer() COMPREPLY=( $( compgen -W 'all gui system user' -- "$cur" ) ) return 0 ;; + -*) + # Assume arg is required for everything else except options + # for which -list-options says Type is Flag or Print. + $cmd -nomsgcolor -nomsgmodule -list-options 2>/dev/null \ + | while read -r i j k; do + if [[ $i == ${prev#-} ]]; then + [[ ${j,,} != @(flag|print) ]] && return 1 + break + fi + done || return 0 + ;; esac case $cur in |