[Bash-completion-devel] [bash-completion-Bugs][311385] DBTS 427758: filenames starting with =

bash-completion-bugs at alioth.debian.org bash-completion-bugs at alioth.debian.org
Sat Nov 5 17:39:07 UTC 2011


Bugs item #311385, was changed at 2009-01-30 11:30 by Igor Murzov
You can respond by visiting: 
https://alioth.debian.org/tracker/?func=detail&atid=413095&aid=311385&group_id=100114

Status: Open
Priority: 3
Submitted By: David Paleino (hanska-guest)
Assigned to: Nobody (None)
Summary: DBTS 427758: filenames starting with = 
Distribution: None
Originally reported in: Debian BTS
Milestone: None
>Status: Accepted
Original bug number: 427758


Initial Comment:
$ touch =foo
$ echo =<TAB>

Expansion results in "=\=foo" rather than "\=foo".


----------------------------------------------------------------------

>Comment By: Igor Murzov (garik-guest)
Date: 2011-11-05 21:39

Message:
I also see problems with filenames containing brackets.
For example:

 $ touch '[x]' 'x'
 $ ls \[x<TAB>

gives `ls x`, so brackets are ignored in this situation.
Another example is:

 $ rm -r ./*
 $ touch '[x]'
 $ ls \[x\] \[<TAB>

gives no completion, but it should complete "\[x\]" again.

----------------------------------------------------------------------

Comment By: Ville Skyttä  (scop-guest)
Date: 2009-02-15 13:21

Message:
I'm not sure if "echo" is a good way to test this as it appears no bash_completion code is executed with the reproducers (checked with "set -x").  The odd /tmp vs /tmp/foo behaviour seems to come from bash itself with "echo".

On the other hand, with "cat" there are some issues present with the current code in git:

$ mkdir /tmp/foo
$ cd /tmp
$ touch foo/=bar

$ cat foo/<TAB>
$ cat foo/\=bar          # ok

$ cat foo/=<TAB>
$ cat foo/=foo/\=bar     # not ok

$ cat foo/=b<TAB>
$ cat foo/=foo/\=bar     # not ok


----------------------------------------------------------------------

Comment By: David Paleino (hanska-guest)
Date: 2009-01-30 11:32

Message:
It doesn't happen anymore with our bzr revision, but still shows a bug:

$ mkdir /tmp/foo
$ cd /tmp
$ touch foo/=bar
$ echo foo/=<TAB>
$ echo foo/=bar

If there are other files in /tmp/foo/, it behaves oddly:

$ touch foo/buz foo/foo
$ echo foo/=<TAB>
claws-mail-1000             orbit-neo/
foo/                        .pcmanfm-socket:0.0-neo
gconfd-neo/                 serverauth.lwDVrycexY
gpg-HiLpT3/                 ssh-vyyNyO3687/
.ICE-unix/                  .X0-lock
liferea.neo.3796948728      .X11-unix/
.lxterminal-socket:0.0-neo
$

(i.e. shows files in /tmp/ and not /tmp/foo/)

----------------------------------------------------------------------

You can respond by visiting: 
https://alioth.debian.org/tracker/?func=detail&atid=413095&aid=311385&group_id=100114



More information about the Bash-completion-devel mailing list