Bash Version: 4.0
Patch Level: 33
Release Status: release
Description:
When completing options for git I used to be able to get a list
of pretty formats by completing the --pretty= option. The option
ends in an equals sign, so the completion looks for the word
--pretty= in the COMP_WORDS array. It turns out that --pretty and =
are considered two separate words in bash4, but considered one word
in bash3. Is this intended?
I know I'm reporting this on patch level 33, but I've seen it on
patch level 35 too.
Repeat-By:
1) Install git's completion script (in contrib/completion of
http://kernel.org/pub/software/scm/git/git-1.6.5.6.tar.gz)
2) Try to complete
git show --pretty=<TAB><TAB>
and you get a list of filenames instead of a list of pretty formats.
Yes. The programmable completion in bash-4.x uses the same set of
characters to split words as the readline word completion code. Doing
otherwise led to too many weird inconsistencies.
If you want to remove `=' from the set of `completion word break'
characters, you can modify the COMP_WORDBREAKS variable.
Chet
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU ch...@case.edu http://cnswww.cns.cwru.edu/~chet/