]> git.eshelyaron.com Git - emacs.git/commit
Don't preserve non-module minor modes in erc-open
authorF. Jason Park <jp@neverwas.me>
Fri, 13 Jan 2023 14:03:15 +0000 (06:03 -0800)
committerF. Jason Park <jp@neverwas.me>
Tue, 17 Jan 2023 14:09:08 +0000 (06:09 -0800)
commit183e749270208ad7f63114ea8ab05e7612a645a1
tree7f8ae12fe3e2b61ca01b77948255843f2a6e1f7f
parent7b8322f6285702faf5da0824b9b195619da9c698
Don't preserve non-module minor modes in erc-open

* lisp/erc/erc-common.el (define-erc-module): Add symbol property
`erc-module' to minor modes defined as part of a module.
* lisp/erc/erc.el (erc--merge-local-modes): Be more conservative when
persisting local minor-mode state across ERC sessions.  User and
third-party modes that were not defined via `define-erc-modules'
should be left alone.
(erc-open): Run major-mode hooks and enable minor modes after prompt
has been set up.  This ensures that module-setup code can access a
fully initialized `erc-input-marker'.
* test/lisp/erc/erc-tests.el (erc--merge-local-modes): Add mocks for
`erc-module' symbol property and a test case covering some foreign ERC
mode.
(define-erc-module--global, define-erc-module--local): Expect the
`erc-module' symbol property to be defined for mode symbols and
aliases.  (Bug#60784.)
lisp/erc/erc-common.el
lisp/erc/erc.el
test/lisp/erc/erc-tests.el