]> git.eshelyaron.com Git - emacs.git/commit
Offer alternate pool-creation strategies in erc-nicks
authorF. Jason Park <jp@neverwas.me>
Sun, 3 Sep 2023 23:05:59 +0000 (16:05 -0700)
committerF. Jason Park <jp@neverwas.me>
Mon, 13 Nov 2023 04:37:48 +0000 (20:37 -0800)
commit5baa0f61f8dc65ec45e3fe49c8179e4ae6830a84
tree4817daa6123fa427273cb6a2cbecda73fd28e751
parent29029529cb21960fc48e35ffbd24cbccaeb499a7
Offer alternate pool-creation strategies in erc-nicks

* lisp/erc/erc-nicks.el (erc-nicks-bg-color): Expand doc string.
(erc-nicks-colors): Add new choices `font-lock' and `ansi-color'.
(erc-nicks--adjust-contrast): Add assertion to prevent dependency bug
from resurfacing when hacking on module activation code.
(erc-nicks--create-pool-function): New function-valued variable to
specify a pool creation strategy.  Note in doc string that this could
form the basis for a possible user option should the need arise.
(erc-nicks--create-coerced-pool): New function for filtering
user-provided `erc-nicks-color' values.
(erc-nicks--create-pool, erc-nicks--create-culled-pool): Rename former
to latter.
(erc-nicks--init-pool): Call `erc-nicks--create-pool-function' to
actually create pool.  Account for new `erc-nicks-colors' values.
(erc-nicks-enable, erc-nicks-mode): Set `erc-nicks--fg-rgb' before
`erc-nicks--init-pool' to prevent type error in filters that depend on
that variable being initialized.  This is a bug fix.
(erc-nicks-refresh): Provide helpful user error instead of letting
`arith-error' propagate due to an empty pool.
(erc-nicks--colors-from-faces): New helper function.
* test/lisp/erc/erc-nicks-tests.el (erc-nicks--create-pool,
erc-nicks--create-culled-pool): Rename test from former to latter and
update function invocations to reflect that.
(erc-nicks--create-coerced-pool): New test.  (Bug#63569)
lisp/erc/erc-nicks.el
test/lisp/erc/erc-nicks-tests.el