From 9eaa749f5e334dfa52c51e594ed6ee3094c3609d Mon Sep 17 00:00:00 2001 From: Sam Tobin-Hochstadt Date: Fri, 16 Apr 2010 17:23:32 -0400 Subject: [PATCH] more like zsh --- .../meta/contrib/completion/racket-completion.bash | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/collects/meta/contrib/completion/racket-completion.bash b/collects/meta/contrib/completion/racket-completion.bash index d93df07ae6..1363e983c8 100644 --- a/collects/meta/contrib/completion/racket-completion.bash +++ b/collects/meta/contrib/completion/racket-completion.bash @@ -9,6 +9,16 @@ # # Change $PLTHOME to whatever references your Racket installation +_smart_filedir() +{ + COMPREPLY=() + _filedir '@(rkt|ss|scm|scrbl)' + if [[ ${#COMPREPLY[@]} -eq 0 ]]; then + _filedir + fi + return 0 +} + _racket() { local cur prev singleopts doubleopts @@ -24,7 +34,7 @@ _racket() # if '--' is already given, complete all kind of files, but no options for (( i=0; i < ${#COMP_WORDS[@]}-1; i++ )); do if [[ ${COMP_WORDS[i]} == -- ]]; then - _filedir + _smart_filedir return 0 fi done @@ -57,7 +67,7 @@ _racket() COMPREPLY=( $(compgen -W "${warnlevels}" -- ${cur}) ) ;; *) - _filedir #'@(rkt|ss|scm|scrbl)' + _smart_filedir ;; esac ;;