From: Juri Linkov <juri@linkov.net>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 70846@debbugs.gnu.org
Subject: bug#70846: Imenu flatten
Date: Mon, 13 May 2024 09:57:43 +0300 [thread overview]
Message-ID: <86frumtd08.fsf@mail.linkov.net> (raw)
In-Reply-To: <86a5kvymof.fsf@gnu.org> (Eli Zaretskii's message of "Sun, 12 May 2024 20:17:36 +0300")
>> >> >> >> BTW, the manual says in (info "(emacs) Imenu"):
>> >> >> >>
>> >> >> >> You can customize the way the menus are sorted by setting the
>> >> >> >> variable ‘imenu-sort-function’. By default, names are ordered as they
>> >> >> >> occur in the buffer; if you want alphabetic sorting, use the symbol
>> >> >> >> ‘imenu--sort-by-name’ as the value. You can also define your own
>> >> >> >> comparison function by writing Lisp code.
>> >> >>
>> >> >> The "menus" above are pertaining only to popup menus,
>> >> >> and the variable ‘imenu-sort-function’ can't be used
>> >> >> to change the sorting order of Imenu completion candidates.
>> >> >> Only the following customization changes this order:
>> >> >>
>> >> >> (add-to-list 'completion-category-overrides
>> >> >> '(imenu (display-sort-function . identity)))
>> >> >>
>> >> >> Using this setting is especially essential for Imenu
>> >> >> on a PDF document with doc-view.el to keep the order
>> >> >> of chapters for the table of contents.
>> >> >>
>> >> >> But I have no idea how to document this customization.
>> >> >
>> >> > Now I'm confused: I thought the change you installed was supposed to
>> >> > make sure the completion candidates are sorted using the same sort
>> >> > order as determined by imenu-sort-function. If not, then what did
>> >> > your change do in this matter?
>> >>
>> >> Completions can be sorted only by 'display-sort-function'.
>> >> There is no other way to sort completions.
>> >
>> > Then what did the change you installed do wrt sorting of candidates?
>>
>> It allows the users to customize the sorting order of
>> completion candidates displayed by 'imenu'.
>
> And the only way to customize that is via add-to-list as above? IOW,
> without the change you installed, even the add-to-list method would
> not have worked?
Yes, there was no way to customize sorting of Imenu completion candidates.
Ok, I could add display-sort-function directly to the imenu completing-read
that will depend on the value of display-sort-function. Then there will be
no need to change the manual.
next prev parent reply other threads:[~2024-05-13 6:57 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-09 16:29 bug#70846: Imenu flatten Juri Linkov
2024-05-09 16:45 ` Eli Zaretskii
2024-05-10 6:52 ` Juri Linkov
2024-05-10 7:29 ` Eli Zaretskii
2024-05-10 16:45 ` Juri Linkov
2024-05-11 10:33 ` Eli Zaretskii
2024-05-12 6:55 ` Juri Linkov
2024-05-12 7:10 ` Eli Zaretskii
2024-05-12 16:37 ` Juri Linkov
2024-05-12 17:17 ` Eli Zaretskii
2024-05-13 6:57 ` Juri Linkov [this message]
2024-05-13 7:46 ` Eli Zaretskii
2024-05-14 6:05 ` Juri Linkov
2024-05-14 6:34 ` Eli Zaretskii
2024-05-10 17:06 ` Juri Linkov
2024-05-28 17:53 ` Juri Linkov
2024-05-29 18:05 ` Juri Linkov
2024-06-06 5:35 ` Yuan Fu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=86frumtd08.fsf@mail.linkov.net \
--to=juri@linkov.net \
--cc=70846@debbugs.gnu.org \
--cc=eliz@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.