From: Peter van der Does Date: Thu, 21 Oct 2010 02:50:18 GMT Subject: Re: bash completion broken on ubuntu 10.10? Message-ID: <20101020225018.46f7e70e@montecarlo.grandprix.int> In-Reply-To: <20101020230409.GB1767@neumann> On Thu, 21 Oct 2010 01:04:09 +0200 SZEDER Gábor wrote: > Hi, > > Git's bash completion script offers possible arguments to some > options, e.g. it lists pretty formats after 'git log --pretty=', > merge tools after 'git mergetool --tool=', refs after 'git commit > --reuse-message=', etc. > > On a three day old ubuntu 10.10 install these don't work anymore; the > completion script offers the list of files in all those cases. > > After a bit of investigation I found that when I press TAB after 'git > log --pretty=', then ${COMP_WORDS[COMP_CWORD-1]} contains '--pretty' > and ${COMP_WORDS[COMP_CWORD]} contains "=". Weird. > > Then I remembered that we had some COMP_WORDBREAKS issues in the past > (db8a9ff, bash completion: Resolve git show ref:path losing ref: > portion, 2008-07-15)). So I looked at my $COMP_WORDBREAKS, but didn't > see anything suspicious (it contains "'><=;|&(: ). Removing the '=' > makes the listing after 'git log --pretty=' work, but breaks many > other things badly. > > I don't have any ideas what could possibly be wrong here (but it's too > late here for any bright ideas anyway...). Could someone confirm or > deny this behaviour on ubuntu 10.10? > > > Thanks, > Gábor > My guess is that it has to do with Bash 4, the equal sign must be seen as a new word. I'm running Ubuntu 10.04 and have the same problem. I fixed the problem locally, I just don't know if that works on Bash 3 and I doubt it will work on Bash 3. I changed the script only for git log, not other commands yet, like git am --whitespace= -- Peter van der Does GPG key: E77E8E98 IRC: Ganseki on irc.freenode.net Twitter: @petervanderdoes WordPress Plugin Developer Blog: http://blog.avirtualhome.com Forums: http://forums.avirtualhome.com Twitter: @avhsoftware