Re: [QUERY] How do you sort completions?
- From
SZEDER Gábor <szeder@ira.uka.de>
- Date
- May 24, 2013, 16:12 UTC
- Message-ID
- <20130524161243.GB2104@goldbirke>
- In-Reply-To
- <CALkWK0k=nVHOBe5SgRH9xQK1+yAYBzbNMqsWxhYPo0MTZPp63g@mail.gmail.com>
Hi,
On Fri, May 24, 2013 at 05:03:27PM +0530, Ramkumar Ramachandra wrote:
Show 10 quoted lines
> I'm not able to sort completions for some weird reason. No matter > what I order I insert stuff into COMPREPLY, bash seems to auto-sort > them lexically. I tried to pass --sort='-committerdate' to git > for-each-ref so I can get a sensible 'git checkout <TAB>' reply, and > I'm very annoyed that it doesn't work. > > I thought it was bash's complete builtin doing the implicit sorting, > so I read the manual with no success. Is readline doing it? If so, > why am I not getting the ordering even in zsh (which doesn't use > readline)?
The order of elements in COMPREPLY doesn't matter, it will be sorted anyway:
$ _foo () { COMPREPLY=("foo" "bar" "baz") ; } $ complete -F _foo foo $ foo <TAB> bar baz foo
I don't know who does the sorting (Bash or readline), and I don't know any way to disable it.
Gábor