[Bash-completion-devel] Bug#544024: Completion with backslashes broken

EspeonEefi espeoneefi at eep.dnsalias.org
Sat Aug 29 22:34:02 UTC 2009

Package: bash-completion
Version: 1:1.0-3
Severity: normal

I've noticed that this seems to affect all completions involving paths
that need a backslash to escape some character. I have a number of files
with square brackets in their names which also have had their
completions broken after the upgrade to bash 4.0. Basically, as long as
the filename fragment to be completed does not contain a backslash, the
completion will work just fine, but any filename fragment that does
contain a backslash will fail to complete.

Perhaps this is related to this item in the NEWS file for bash 4.0?

i.  The programmable completion code now uses the same set of characters as
    readline when breaking the command line into a list of words.

I see that /etc/bash_completion uses its own _get_cword() and _filedir()
functions instead of using the shell builtins. Perhaps the above change
made some of the assumptions these functions are making inaccurate? Note
that completion of filenames with backslashes does work when I turn
bash_completion off (i.e., remove the sourcing of /etc/bash_completion
from my ~/.bashrc).

-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.30-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages bash-completion depends on:
ii  bash                          4.0-4      The GNU Bourne Again SHell

bash-completion recommends no packages.

bash-completion suggests no packages.

-- no debconf information

More information about the Bash-completion-devel mailing list