On Fri, Mar 20, 2009 at 1:22 PM, <gibbo...@gmail.com> wrote: > - I *tried* the completion of the beginning of the host. But I > can't get the -o nospace working :[
You have to add the `-o nospace' option after `complete' instead of `compgen'. See diff. > Another problem is that after 'http', 's://' and '://' ARE > proposed BUT all is messed up with filename completion if I add a > ':' (maybe because of the slash or something around $IFS ?). You can take a look at `scp' completion in file `contrib/ssh' which already solves processing `:'. Note the: cur=`_get_cword ":"` (?) I found it difficult though: I tried copying things to wget but couldn't get it work. Maybe you can give it a try. > [parenthesis] > It makes me think : would an algorithm to convert a regexp in > a completion script like this be useful ? > ---> (ht|f)tps?://(www.)? > ---> (h => http, ht => http, f => ftp, http => ( http:// https://),...) > ---> h) COMPREPLY=( $( compgen -o nospace -W 'http' -- $cur ) );return 0;;... > [/parenthesis] Or use bash parameter expansion (see also diff): COMPREPLY=( $( compgen -W "http{,s}://{,www} ftp://" -- $cur ) ) Regards, Freddy Vulto http://fvue.nl ---8<--------------------------------------------------------------- --- wget.sh.orig 2009-03-20 22:20:13.000000000 +0100 +++ wget.sh 2009-03-20 22:55:39.000000000 +0100 @@ -93,23 +93,11 @@ COMPREPLY=( $( compgen -W "$(wget -h | sed -n 's/^[ [:blank:]]*\(-[a-zA-A46]\).*$/\1/p')" -- $cur ) ) return 0 ;; - h) - COMPREPLY=( $( compgen -o nospace -W 'http' -- $cur ) ) - return 0 - ;; - f) - COMPREPLY=( $( compgen -o nospace -W 'ftp://' -- $cur ) ) - return 0 - ;; - http) - COMPREPLY=( $( compgen -W 'http:// https://' -- $cur ) ) - return 0 - ;; - https\?://w) - COMPREPLY=( $( compgen -W "${cur}ww." -- $cur ) ) + *) + COMPREPLY=( $( compgen -W "http{,s}://{,www} ftp://" -- $cur ) ) return 0 ;; esac return 0 } -complete -F _wget -o default wget +complete -F _wget -o nospace wget _______________________________________________ Bash-completion-devel mailing list Bash-completion-devel@lists.alioth.debian.org http://lists.alioth.debian.org/mailman/listinfo/bash-completion-devel