From: Ivan Shmakov <ivan@siamics.net>
To: 19556@debbugs.gnu.org
Subject: bug#19556: eww: make URI rewriting fully customizable
Date: Sat, 10 Jan 2015 17:20:42 +0000 [thread overview]
Message-ID: <8761ce1rit.fsf@violet.siamics.net> (raw)
In-Reply-To: <83vbke62wi.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 10 Jan 2015 18:01:17 +0200")
>>>>> Eli Zaretskii <eliz@gnu.org> writes:
>>>>> From: Ivan Shmakov Date: Sat, 10 Jan 2015 14:40:57 +0000
>>>>> Eli Zaretskii <eliz@gnu.org> writes:
>>> Why put the "standard" rules into the defcustom?
>> So to make the tricks played by EWW on unsuspecting URIs more
>> obvious to the user.
> How does that make it more obvious?
By showing them in the “Customize Group” buffer?
>>> That's what hooks are normally for -- _modifying_ the default
>>> behavior, not supplanting it.
>> Are they? For instance, when run with -Q, my find-file-hooks
>> includes ange-ftp-set-buffer-mode, epa-file-find-file-hook,
>> vc-find-file-hook
> None of these replace the default behavior of their hookee functions.
> They _add_ something to it. The default behavior is not in the hook,
> it's in the code that calls the hook.
We seem to be disagreeing on the terms. To me, the way
unmodified Emacs behaves when started with ‘-Q’ is the default.
To get different (custom) behavior, the user may add elements to
hooks, lists of other kinds (including associative), keymaps, –
or /remove/ from them; load or /unload/ packages; add, redefine
or advise commands or functions; etc.
For instance, electric-indent-mode is the default. Using
(electric-indent-mode -1) in one’s ~/.emacs is a customization.
Calling log-edit-insert-message-template as part of
log-edit-hook is the default. Setting log-edit-hook to nil is a
(perfectly valid) customization. Providing a rich set of
filename suffix to Emacs major mode pairs in auto-mode-alist is
the default. Tailoring that alist according to the modes one
does and does not use is customization. Etc.
I see no reason for EWW to be different in that its default
behavior cannot be customized – whether that’d mean adding
elements to some list, removing others from there, or doing
something else.
> And anyway, I said "normally", so a couple of examples to the
> contrary doesn't yet invalidate what I said.
Should I look for a couple more examples on top of that couple
within the Emacs source tree just for the sake of this argument?
>> With these functions being explicitly listed, however, I could
>> easily drop everything but vc-find-file-hook off the list to get rid
>> of the functionality that tends to get in my way.
> It sounds like we have some deep disagreement about what the hooks
> are for. You want a hook to _remove_ some behaviors, but that's not
> what hooks are for.
Except for those which are.
Besides, what’d be the point of run-hook-with-args-until-success
if not to allow the user to prepend his or her own function to
override the behavior of the (default) functions coming later in
that same hook?
>>> E. g., with your suggestion, what happens if someone customizes the
>>> value to nil?
>> That’s simple: M-x eww will assume that the URIs it’s given never
>> need any special treatment.
> Which is clearly wrong with some URIs.
I see no way it could be wrong for /URIs proper./ Yes, that’d
mean that M-x eww RET mary had a little lamb RET fails. But so
does Lynx, Wget and Curl, url-retrieve, C-x C-f, and what not.
On the contrary, I find the eagerness of EWW to send what could
easily be a mistyped URI to a third party somewhat disturbing.
Customizing eww-search-prefix to refer to some non-existing
service (or just setting it to a non-nil symbol) may be a decent
work-around for the issue, but it also disables eww-search-words
as an unfortunate side-effect.
> Please let's not go that way.
Sure. Let’s instead make C-x C-f go DDG for completion and
provide no option for the user to opt-out.
--
FSF associate member #7257 http://boycottsystemd.org/ … 3013 B6A0 230E 334A
next prev parent reply other threads:[~2015-01-10 17:20 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-10 13:17 bug#19556: eww: make URI rewriting fully customizable Ivan Shmakov
2015-01-10 14:19 ` Eli Zaretskii
2015-01-10 14:40 ` Ivan Shmakov
2015-01-10 16:01 ` Eli Zaretskii
2015-01-10 17:20 ` Ivan Shmakov [this message]
2015-01-10 17:37 ` Eli Zaretskii
2015-01-10 18:05 ` Ivan Shmakov
2015-01-10 14:29 ` Lars Magne Ingebrigtsen
2015-01-10 14:44 ` Ivan Shmakov
2015-01-10 14:58 ` Lars Magne Ingebrigtsen
2015-01-10 15:59 ` Ivan Shmakov
2015-01-10 16:08 ` Lars Magne Ingebrigtsen
2015-01-10 16:22 ` Lars Magne Ingebrigtsen
2015-01-10 18:24 ` Ivan Shmakov
2015-12-25 7:03 ` Lars Ingebrigtsen
2015-12-26 9:30 ` Ivan Shmakov
2015-01-10 15:02 ` Lars Magne Ingebrigtsen
2015-01-10 18:11 ` Ivan Shmakov
2015-01-11 14:58 ` Lars Magne Ingebrigtsen
2015-01-11 15:06 ` Lars Magne Ingebrigtsen
2015-01-11 18:22 ` Ivan Shmakov
2015-01-11 20:03 ` Eli Zaretskii
2015-01-11 20:17 ` Ivan Shmakov
2015-01-11 20:40 ` Eli Zaretskii
2015-01-11 21:46 ` Lars Magne Ingebrigtsen
2015-01-11 1:59 ` Stefan Monnier
2015-01-11 6:25 ` Ivan Shmakov
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=8761ce1rit.fsf@violet.siamics.net \
--to=ivan@siamics.net \
--cc=19556@debbugs.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.