From: Philip Kaludercic <philipk@posteo.net>
To: Visuwesh <visuweshm@gmail.com>
Cc: emacs-devel@gnu.org
Subject: Re: Automatic Suggestion of Packages
Date: Fri, 08 Nov 2024 16:23:28 +0000 [thread overview]
Message-ID: <87msi9ofsv.fsf@posteo.net> (raw)
In-Reply-To: <87cyj5u3wc.fsf@gmail.com> (Visuwesh's message of "Fri, 08 Nov 2024 21:14:03 +0530")
Visuwesh <visuweshm@gmail.com> writes:
> [வெள்ளி நவம்பர் 08, 2024] Philip Kaludercic wrote:
>
>>>> [...]
>>>> Perhaps it makes sense to always present a message if the minor mode
>>>> is enabled, and add a separate option to enable the mode-line button?
>>>
>>> I would be happy with this (though I would turn the mode-line button on
>>> by default).
>>
>> The issue with enable-by-default in the current implementation is that
>> we would have to load package.el by default, which is currently avoided
>> to reduce the startup time (see `package-enable-at-startup').
>
> I see.
>
>>
>> We could extract the autosuggest logic into a separate file and suggest
>> loading that by default.
>>
>> We could also consider not using the mode line, but the menu bar to hint
>> at package suggestions, but that might be easy to miss especially if a
>> lot of people advise disabling the menu bar.
>
> That is a good idea too.
>
>>> BTW, I looked at the code to see what it does when there's multiple
>>> packages suggested for a single (e.g., racket: racket-mode and
>>> geiser-racket). It seems to install and enable only the first
>>> suggestion: should we instead prompt the user about it? But asking the
>>> user would defeat the purpose of the feature, which helps in assisting
>>> her in setting up her environment for her work.
>>
>> No the current implementation would just install everything. Neither of
>> the two solutions are really ideal. Perhaps we need to pop up a buffer
>> with clickable elements to present the package suggestions and propose
>> installing one of them?
>
> It would help the user decide between the packages if some kind of
> popularity metric is shown. If they cannot decide between the options,
> they could at least pick the most popular one and go with that. I think
> the current one shown in the GNU ELPA website should be sufficient for
> most cases.
> Although I dislike the idea myself personally, "last updated time" might
> be a good indication too. [ I dislike it because stable packages don't
> need to get updated. After all, they just work. ]
AFAIK we don't currently expose the ranking information via some API,
but that might change in the future. Last updated has advantages and
disadvantages that one should be weary of (a stable package might be
seldom updated and a newer package more frequently as it is trying to
become more mature).
The core of the problem to me seems that we have situations where a file
extensions might be used by multiple languages (as is currently the
situation with Perl and Prolog, both commonly using ".p"). Assuming
these were ELPA packages and not-built-in, we could try to combine the
data, e.g. if the interpreter and the file name agree, only the propose
Perl and not Prolog. Yet it is probably the safest option to engage
human judgement and present the options, in a simple menu listing
package names, their summaries and a button to install the package.
Based on what I am imagining, the complementary issue that you
mention, "racket-mode" vs "geiser-racket" would pop up a buffer that
would look something this:
--8<---------------cut here---------------start------------->8---
There are multiple package suggestions based on the available
information:
- "racket-mode" [install]
Racket editing, REPL, and more
Suggested due to: file name matching \.rkt\', the interpreter
matching "racket".
- "geiser-racket" [install]
Support for Racket in Geiser
Suggested due to: file name matching \.rkt\'
--8<---------------cut here---------------end--------------->8---
--
Philip Kaludercic on siskin
next prev parent reply other threads:[~2024-11-08 16:23 UTC|newest]
Thread overview: 93+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-06 7:32 An anonymous IRC user's opinion Abraham S.A.H. via Emacs development discussions.
2024-10-06 8:10 ` Emanuel Berg
2024-10-06 8:44 ` Dr. Arne Babenhauserheide
2024-10-06 9:01 ` Emanuel Berg
2024-10-06 9:09 ` Emanuel Berg
2024-10-06 9:32 ` Abraham S.A.H. via Emacs development discussions.
2024-10-06 11:28 ` Dr. Arne Babenhauserheide
2024-10-06 13:10 ` Emanuel Berg
2024-10-06 12:55 ` Emanuel Berg
2024-10-09 3:29 ` Richard Stallman
2024-10-09 20:20 ` Emanuel Berg
2024-10-10 8:57 ` Dr. Arne Babenhauserheide
2024-10-09 3:30 ` Richard Stallman
2024-10-09 6:48 ` Dr. Arne Babenhauserheide
2024-10-09 20:22 ` Emanuel Berg
2024-10-09 11:09 ` Johan Myréen
2024-10-09 13:13 ` Eli Zaretskii
2024-10-09 13:38 ` tomas
2024-10-09 16:02 ` Dr. Arne Babenhauserheide
2024-10-09 16:22 ` Eli Zaretskii
2024-10-09 21:55 ` Emanuel Berg
2024-10-10 7:25 ` Eli Zaretskii
2024-10-10 9:35 ` Dr. Arne Babenhauserheide
2024-10-10 10:42 ` Eli Zaretskii
2024-10-13 3:29 ` Richard Stallman
2024-10-10 6:07 ` Emanuel Berg
2024-10-09 16:06 ` Johan Myréen
2024-10-09 16:12 ` Ship Mints
2024-10-09 16:25 ` Eli Zaretskii
2024-10-09 21:25 ` Dmitry Gutov
2024-10-10 4:56 ` Eli Zaretskii
2024-10-10 5:14 ` Xiyue Deng
2024-10-10 6:36 ` Eli Zaretskii
2024-10-10 6:59 ` Xiyue Deng
2024-10-11 20:30 ` Dmitry Gutov
2024-10-12 7:34 ` Eli Zaretskii
2024-10-12 20:27 ` Dmitry Gutov
2024-10-12 21:00 ` Dr. Arne Babenhauserheide
2024-10-13 4:53 ` Eli Zaretskii
2024-10-13 6:28 ` Dr. Arne Babenhauserheide
2024-10-13 4:41 ` Eli Zaretskii
2024-10-13 9:37 ` Dmitry Gutov
2024-10-13 10:39 ` Eli Zaretskii
2024-10-13 15:31 ` Dmitry Gutov
2024-10-13 15:53 ` Eli Zaretskii
2024-10-14 9:32 ` Dmitry Gutov
2024-10-14 11:09 ` Alan Mackenzie
2024-10-15 1:41 ` Dmitry Gutov
2024-10-14 14:16 ` Eli Zaretskii
2024-10-15 1:36 ` Dmitry Gutov
2024-10-15 12:03 ` Eli Zaretskii
2024-11-03 3:10 ` Dmitry Gutov
2024-11-03 6:37 ` Eli Zaretskii
2024-11-03 19:24 ` Dmitry Gutov
2024-11-04 12:04 ` Eli Zaretskii
2024-11-04 12:11 ` Eli Zaretskii
2024-11-04 17:41 ` Dmitry Gutov
2024-11-04 19:18 ` Eli Zaretskii
2024-11-04 20:59 ` Dmitry Gutov
2024-11-05 12:11 ` Eli Zaretskii
2024-11-05 17:05 ` Dmitry Gutov
2024-11-05 17:28 ` Eli Zaretskii
2024-11-05 19:40 ` Dmitry Gutov
2024-11-05 19:53 ` Eli Zaretskii
2024-11-05 20:59 ` Dmitry Gutov
2024-11-06 12:15 ` Eli Zaretskii
2024-11-06 12:46 ` Dmitry Gutov
2024-11-06 13:25 ` Eli Zaretskii
2024-11-06 16:07 ` Dmitry Gutov
2024-11-06 17:14 ` Eli Zaretskii
2024-11-05 13:21 ` Dr. Arne Babenhauserheide
2024-11-05 13:47 ` Eli Zaretskii
2024-11-05 16:52 ` Dr. Arne Babenhauserheide
2024-11-05 17:22 ` Eli Zaretskii
2024-11-05 17:49 ` Philip Kaludercic
2024-11-05 19:23 ` Dr. Arne Babenhauserheide
2024-11-06 0:09 ` Philip Kaludercic
2024-11-06 9:35 ` Dr. Arne Babenhauserheide
2024-11-06 9:59 ` Philip Kaludercic
2024-11-07 14:16 ` Automatic Suggestion of Packages Philip Kaludercic
2024-11-07 16:07 ` Visuwesh
2024-11-07 21:50 ` Philip Kaludercic
2024-11-08 4:15 ` Visuwesh
2024-11-08 4:29 ` Visuwesh
2024-11-08 14:02 ` Philip Kaludercic
2024-11-08 15:44 ` Visuwesh
2024-11-08 16:23 ` Philip Kaludercic [this message]
2024-11-11 20:07 ` Mekeor Melire
2024-11-12 3:00 ` Philip Kaludercic
2024-10-13 10:52 ` An anonymous IRC user's opinion Dr. Arne Babenhauserheide
2024-10-10 13:58 ` Richard Stallman
2024-10-10 14:45 ` Dr. Arne Babenhauserheide
2024-10-12 3:19 ` Richard Stallman
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=87msi9ofsv.fsf@posteo.net \
--to=philipk@posteo.net \
--cc=emacs-devel@gnu.org \
--cc=visuweshm@gmail.com \
/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.