Subject: Re: bug#74792: 29.2.50; goto-address-mode should support RET in special-mode buffers

From: Juri Linkov <[email-masked]>
Date: Thu, 12 Dec 2024 18:35:18 +0200

>>  > goto-address-mode binds C-c RET to goto-address-at-point when point is
>>  > on a URL or email address.  In special-mode buffers (or maybe any
>>  > read-only buffer?) it should also bind RET while point is on the URL or
>>  > email address.
>> 
>>  I don't think it's a good idea, since many special-mode descendants
>>  bind RET to useful commands.  For goto-address-at-point to override
>>  that would be a nuisance, I think.
>> 
>> True, but when I've specifically moved point to a URL it is usually because I want to follow the URL, not do
>> whatever is bound to RET in the mode.
>
> You cannot know that.  E.g., point could be on a URL by chance, for
> example, if a buffer starts with a URL.
>
>> But this sounds like something that may differ between users, so perhaps we could add this controlled by a
>> defcustom?
>
> Let's first hear that enough people here think that it might sometimes
> be a good thing.  If so, then yes, a user option, by default off,
> could be a way to introduce such behavior.

Typing just RET would be more intuitive, but indeed there is a problem
that e.g. 'C-h C-t RET RET RET ...' will scroll lines one by one
until this line becomes current:

  https://www.gnu.org/licenses/why-assign.html

Then RET will surprisingly visit that URL.

Unfortunately, an option can't help because most users might want to
enable it, but only if it doesn't misfire in unexpected situations.