1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-06 14:30:50 -08:00
emacs/lisp/erc
F. Jason Park 2e18ba6302 Simplify erc-button movement commands
* etc/ERC-NEWS: Mention TAB being bound to new command `erc-tab' and
`erc-previous-button' now stopping at the start of buttons.
* lisp/erc/erc-button.el (erc-button-mode, erc-button-enable,
erc-button-disable): Add and remove `erc-button-next' to
`erc--tab-functions' hook, which is tantamount to binding the command
in the read-only area of an ERC buffer.
(erc-button-next-function): Deprecate and remove from client code path
because this module doesn't concern itself with prompt input and thus
no longer needs to conform to the `completion-at-point-functions'
interface.
(erc-button--prev-next-predicate-functions): New variable, a hook to
determine whether to continue searching for a button.  Other modules
should utilize this as needed.
(erc-button--end-of-button-p): Add function to serve as default value
for `erc-button--continue-predicate'.
(erc--button-next): Add generalized button-movement function.
(erc-button-next, erc-button-previous): Make `erc-button-previous'
behave more predictably by having it land at the beginning of buttons.
And remove roundabout appeal to HOF in `erc-button-next'.
(erc-button-previous-of-nick): New command to jump to previous
appearance of nick at point.
* lisp/erc/erc-fill.el (erc-fill-wrap, erc-fill-wrap-enable,
erc-fill-wrap-disable): Add and remove merge-related hookee from
`erc-button--prev-next-predicate-functions'.
(erc-fill--wrap-merged-button-p): New function to detect redundant
speakers.
* lisp/erc/erc.el (erc-complete-functions): Quote TAB in doc string.
(erc-mode-map): Bind `erc-tab' to TAB.
(erc--tab-functions, erc-tab): Add new command and hook to serve as
unified dispatch for TAB-related operations.  It calls `c-a-p' in the
input area and defers to module code in the read-only message area.
* test/lisp/erc/erc-button-tests.el: New file.
* test/lisp/erc/erc-fill-tests.el (erc-fill-tests--wrap-populate): Run
finalizer for transient keymap timer.
* test/lisp/erc/erc-tests.el
(erc-button--display-error-notice-with-keys): Move to new dedicated
test file for erc-button and fix expected behavior of
`erc-button-previous'.  (Bug#62834)
2023-05-05 17:18:01 -07:00
..
ChangeLog.1 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ChangeLog.2 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-autoaway.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-backend.el Actually define erc-default-server-functions 2023-05-05 17:18:01 -07:00
erc-button.el Simplify erc-button movement commands 2023-05-05 17:18:01 -07:00
erc-capab.el Don't associate ERC modules with undefined groups 2023-04-08 14:23:51 -07:00
erc-common.el Make auth-source erc-services tests more readable 2023-04-08 14:23:51 -07:00
erc-compat.el Optionally prompt for more ERC entry-point params 2023-04-08 14:23:51 -07:00
erc-dcc.el Fix DCC GET flag parsing in erc-dcc 2023-04-08 14:23:50 -07:00
erc-desktop-notifications.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-ezbounce.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-fill.el Simplify erc-button movement commands 2023-05-05 17:18:01 -07:00
erc-goodies.el Add option to show visual erc-keep-place indicator 2023-04-08 14:23:51 -07:00
erc-ibuffer.el Don't require erc-goodies in erc.el 2023-04-08 14:23:51 -07:00
erc-identd.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-imenu.el Convert ERC's Imenu integration into proper module 2023-04-08 14:23:51 -07:00
erc-join.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-lang.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-list.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-log.el Put display properties to better use in erc-stamp 2023-04-08 14:23:51 -07:00
erc-match.el Add erc-timestamp property to invisible messages 2023-05-05 17:18:01 -07:00
erc-menu.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-netsplit.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-networks.el Add erc-button helper for substituting command keys 2023-04-08 14:23:51 -07:00
erc-notify.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-page.el Don't require erc-goodies in erc.el 2023-04-08 14:23:51 -07:00
erc-pcomplete.el Leverage loaddefs for migrating ERC modules 2023-04-08 14:23:50 -07:00
erc-replace.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-ring.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-sasl.el Split overlong outgoing messages in erc-sasl 2023-04-08 14:23:50 -07:00
erc-services.el Leverage loaddefs for migrating ERC modules 2023-04-08 14:23:50 -07:00
erc-sound.el Leverage loaddefs for migrating ERC modules 2023-04-08 14:23:50 -07:00
erc-speedbar.el Don't require erc-goodies in erc.el 2023-04-08 14:23:51 -07:00
erc-spelling.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-stamp.el Add erc-timestamp property to invisible messages 2023-05-05 17:18:01 -07:00
erc-status-sidebar.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-track.el Ignore killed buffers when switching in erc-track 2023-04-08 14:23:51 -07:00
erc-truncate.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-xdcc.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc.el Simplify erc-button movement commands 2023-05-05 17:18:01 -07:00