A few corrections to my last mail:
bash completion before the first letter of the file name fails at
all, even for "normal" file names:
$ mkdir /tmp/test && cd /tmp/test && touch a
$ ls <TAB><TAB>
Also not all characters where the completion after the first
letter fails are characters which bash would escape with a
backslash during the completion as the comma actually does not
get escaped by bash.
Not sure what qualifies "special characters" in this context.
Characters where completion does not work for me (when file
names share the same beginning, as you have mentioned before)
are:
!"$&'()*,:;<=>?[\]^`{|}
Interesting is also this example:
$ mkdir /tmp/test && cd /tmp/test && touch aa 'a('
$ ls a<TAB><TAB>
a( aa
So far it's ok. But:
$ ls a(<TAB>
results in a wrong completion:
$ ls a(a
Uwe