diff options
Diffstat (limited to 'completions')
| -rw-r--r-- | completions/upgradepkg | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/completions/upgradepkg b/completions/upgradepkg index 06dbe571..59a27ca5 100644 --- a/completions/upgradepkg +++ b/completions/upgradepkg @@ -11,6 +11,18 @@ _upgradepkg() return 0 fi + if [[ "$cur" == ?*%* ]]; then + prev="${cur%%?(\\)%*}" + cur="${cur#*%}" + local nofiles IFS=$'\n' + compopt -o filenames + COMPREPLY=( $( compgen -P "$prev%" -f -X "!*.@(t[bgxl]z)" -- "$cur" ) ) + [[ $COMPREPLY ]] || nofiles=1 + COMPREPLY+=( $( compgen -P "$prev%" -S '/' -d -- "$cur" ) ) + [[ $nofiles ]] && compopt -o nospace + return 0 + fi + _filedir "t[bglx]z" } && complete -F _upgradepkg upgradepkg |
