diff --git a/completions/cryptsetup b/completions/cryptsetup index 46f1e482..f1dd1f3b 100644 --- a/completions/cryptsetup +++ b/completions/cryptsetup @@ -17,15 +17,20 @@ _cryptsetup_device() _cryptsetup() { local cur prev words cword - _init_completion || return + _init_completion -n = || return + + local split=false + _split_longopt && split=true case $prev in --key-file|--master-key-file|--header-backup-file|-d) _filedir - return 0; + return 0 ;; esac + $split && return + local arg _get_first_arg if [ -z $arg ]; then diff --git a/completions/wvdial b/completions/wvdial index 78ae25f2..5b4f2b03 100644 --- a/completions/wvdial +++ b/completions/wvdial @@ -5,7 +5,10 @@ have wvdial || return _wvdial() { local cur prev words cword - _init_completion || return + _init_completion -n = || return + + local split=false + _split_longopt && split=true case $prev in --config) @@ -14,6 +17,8 @@ _wvdial() ;; esac + $split && return + local config i IFS=$'\n' case $cur in