[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: A programmable completoin bug?
From: |
Chet Ramey |
Subject: |
Re: A programmable completoin bug? |
Date: |
Fri, 02 Dec 2011 20:32:46 -0500 |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:8.0) Gecko/20111105 Thunderbird/8.0 |
On 11/30/11 2:08 AM, Clark J. Wang wrote:
> (Tested with bash 4.2.10 and 4.1.9)
>
> [bash-4.2.10] # cat foo.compspec
> compspec_foo()
> {
> local cmd=$1 cur=$2 pre=$3
>
> if [[ $cur = :* ]]; then
> COMPREPLY=( changed changed/IGNORE_ME )
> fi
> }
>
> complete -F compspec_foo foo
> [bash-4.2.10] # source foo.compspec
> [bash-4.2.10] # foo :short<TAB>
> [bash-4.2.10] # foo changed <-- Fine, this is what I want
> [bash-4.2.10] # foo :this-is-a-long-word<TAB>
> [bash-4.2.10] # foo :this-i <-- Bug here?
>
First of all, you must have removed `:' from $COMP_WORDBREAKS, because
you won't get any matches unless you have.
I can't reproduce this behavior using bash-4.2.20 (after modifying
COMP_WORDBREAKS); I get `changed' as the completion in both cases.
Have you done `set -x' to get an idea of what's happening when the
completion function runs?
Chet
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU chet@case.edu http://cnswww.cns.cwru.edu/~chet/
- Re: A programmable completoin bug?,
Chet Ramey <=
- Re: A programmable completoin bug?, Clark J. Wang, 2011/12/04
- Re: A programmable completoin bug?, Chet Ramey, 2011/12/04
- Re: A programmable completoin bug?, Clark J. Wang, 2011/12/04
- Re: A programmable completoin bug?, Chet Ramey, 2011/12/04
- Re: A programmable completoin bug?, Clark J. Wang, 2011/12/05
- Re: A programmable completoin bug?, Clark J. Wang, 2011/12/05
- Re: A programmable completoin bug?, Chet Ramey, 2011/12/06