Package: bash-completion Version: 20080705 Severity: normal When completion perl options -I or -x: - spaces in directory names aren't honoured - with `perl -I<space><tab>', completions are falsely prefixed with -I resulting in an additional `-I' appended to the commandline: `perl -I -I' - with `perl -I<space><tab>' a slash is added to directory names, whereas with `perl -I<tab>' no slash is added - with `perl -I<tab>' an additional space is added after each directory name completion, making it difficult to assemble a path using completion
Attached diff addresses these problems. Regards, Freddy Vulto -- System Information: Debian Release: 4.0 APT prefers stable APT policy: (500, 'stable') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-6-686 Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)
=== modified file 'bash_completion' --- bash_completion 2008-11-01 11:32:22 +0000 +++ bash_completion 2008-11-04 23:00:35 +0000 @@ -5294,27 +5294,30 @@ _perl() { - local cur prev prefix temp + local cur optPrefix optSuffix prev prefix temp COMPREPLY=() cur=`_get_cword` prev=${COMP_WORDS[COMP_CWORD-1]} prefix="" - # completing an option (may or may not be separated by a space) + # If option not followed by whitespace, reassign prev and cur if [[ "$cur" == -?* ]]; then temp=$cur prev=${temp:0:2} cur=${temp:2} + optPrefix=-P$prev + optSuffix=-S/ prefix=$prev fi # only handle module completion for now case "$prev" in - -I|-x) - COMPREPLY=( $( compgen -d -P "$prev" -- "$cur" ) ) - return 0 - ;; + -I|-x) + local IFS=$'\t\n' + COMPREPLY=( $( compgen -d $optPrefix $optSuffix -- "$cur" ) ) + return 0 + ;; -m|-M) _perlmodules return 0 @@ -5332,7 +5335,7 @@ -n -a -F -l -0 -I -m -M -P -S -x -i -e ' -- $cur ) ) return 0 } -complete -F _perl $filenames perl +complete -F _perl $nospace $filenames perl _perldoc() {
_______________________________________________ Bash-completion-devel mailing list Bash-completion-devel@lists.alioth.debian.org http://lists.alioth.debian.org/mailman/listinfo/bash-completion-devel