From: Mathias Lafeldt Date: Thu, 21 Oct 2010 10:35:03 GMT Subject: Re: bash completion broken on ubuntu 10.10? Message-ID: <4CC01757.9040706@debugon.org> In-Reply-To: <20101020225018.46f7e70e@montecarlo.grandprix.int> On 10/21/2010 04:50 AM, Peter van der Does wrote: > 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= > > Same problem here. $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 10.04.1 LTS Release: 10.04 Codename: lucid $ bash --version GNU bash, version 4.1.5(1)-release (i486-pc-linux-gnu) $ shopt autocd off cdable_vars off cdspell off checkhash off checkjobs off checkwinsize on cmdhist on compat31 off compat32 off compat40 off dirspell off dotglob off execfail off expand_aliases on extdebug off extglob on extquote on failglob off force_fignore on globstar off gnu_errfmt off histappend on histreedit off histverify off hostcomplete off huponexit off interactive_comments on lithist off login_shell off mailwarn off no_empty_cmd_completion off nocaseglob off nocasematch off nullglob off progcomp on promptvars on restricted_shell off shift_verbose off sourcepath on xpg_echo off -Mathias