[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bug#46775: 27.1; ERC: Track: Modified channels doc and `erc-track-fi
From: |
J.P. |
Subject: |
Re: bug#46775: 27.1; ERC: Track: Modified channels doc and `erc-track-find-face' fixes |
Date: |
Wed, 07 Jul 2021 05:30:41 -0700 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
Olivier Certner <ocert.dev@free.fr> writes:
> The trick is that `erc-track-minor-mode' may be enabled or disabled
> independently of the whole module. In particular, it may not be activated at
> all if the (global) keybindings it wants to install, which don't abide by the
> rules for minor modes maps, are already bound at the time of module's
> activation.
Right, thanks for patiently explaining an RTFM-worthy question. So like
the doc string says: "for the sole purpose of providing the C-c C-SPC
and C-c C-@ keybindings" (basically for toggling during sessions). I
guess I was dazed into a stupor by encountering two global minor modes
for the same module with only the word "-minor" to distinguish them.
Anyway, it's obviously decades too late to reconsider modules doubling
as minor modes. But perhaps it's still worth reexamining
`erc-update-modules' at some point. As a quick aside:
Currently, we rely on a module's options for conveying per-connection
specifics, when supported. Some options, like `erc-enable-logging', are
buffer local but require extra attention to exploit on a per-connection
basis. And while the macro `erc-define-module' does have a `local-p'
param, I don't think it's actually being used anywhere. This is probably
in part due to `erc-update-modules' only ever enabling (and never
disabling) modules and also running just a hair too early, i.e., right
before a new ERC buffer is made current.
Perhaps a discussion dedicated to this topic may be beneficial at some
point.
> `erc-user-is-active' seems in fact to be used for more than one purpose. In
> particular, it also triggers an update of channels in the mode line. What's
> exactly the problem with hooking on 001?
The 001 hook only runs in server buffers. And when it does,
`erc-server-connected' is always nil.
> There is a lot of room for improvement in this module. In particular in
> determining how some user is "active" (none of the current possibilities
> really suits my needs).
Then hopefully we can (eventually) make it smarter. I get the feeling
this module, when fully realized, might provide an experience
that's actually superior to that offered by dedicated clients.