help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Sorting Order of Completion Candidates


From: Ted Zlatanov
Subject: Re: Sorting Order of Completion Candidates
Date: Tue, 01 Mar 2011 13:25:47 -0600
User-agent: Gnus/5.110014 (No Gnus v0.14) Emacs/24.0.50 (gnu/linux)

On Tue, 01 Mar 2011 19:22:47 +0100 Florian Beck <fb@miszellen.de> wrote: 

FB> On 03/01/2011 05:29 PM, Ted Zlatanov wrote:
>> Florian: I've proposed a patch to use the string property
>> :completion-score to attach a numerical score to the completion
>> candidates.  The discussion so far is in the BBDB mailing list (where we
>> needed to score completion candidates) but I will propose it on
>> emacs-devel once Stefan reviews it.

FB> Nice idea. You mean text properties on the strings?

FB> So I would use something like

FB> (defun string-score-higher (a b)
FB>   (if (> (or (get-text-property 0 :completion-score a) 0)
FB>      (or (get-text-property 0 :completion-score b) 0))
FB>       a
FB>     (string-lessp a b)))

FB> as a sorting predicate?

FB> Seems to work (so far),

With my proposal it will be built into
`completion-all-sorted-completions':

- if both candidates have a :completion-score, lowest wins

- if only one has :completion-score, it wins

- else we sort by string length (shortest wins)

Thus you don't have to craft custom sort predicates :)

Ted


reply via email to

[Prev in Thread] Current Thread [Next in Thread]