emacs/lisp/erc
F. Jason Park 9acd8c8e53 Tidy up ERC's internal text-property API
* lisp/erc/erc-fill.el (erc-fill--spaced-commands): Remove unused
internal variable originally intended for ERC 5.6.
(erc-fill): Check for `erc-msg' being `msg', which carries the same
meaning as `erc-cmd' being `PRIVMSG' or `NOTICE', except that inserted
outgoing messages now no longer normally have an `erc-cmd' property.
(erc-fill-wrap-mode, erc-fill-wrap-disable): Kill
`erc-fill--wrap-last-msg'.
(erc-fill--wrap-max-lull): Convert from buffer-local to normal
variable.
(erc-fill--wrap-continued-message-p): Rework slightly to guard against
resetting the "last speaker" marker when the `erc-ephemeral' text
property is present.  This tells insert- and send-related hook members
to pretend the current message doesn't exist when performing stateful
operations.  That is, modules should expect the message being inserted
to possibly disappear or be replaced.  Also, look for `erc-msg' being
`msg' instead of `erc-cmd' being `PRIVMSG', and fix bug involving only
checking `erc-ctcp' in the current message.
* lisp/erc/erc-stamp.el (erc-add-timestamp): Don't insert timestamps
when the `erc-ephemeral' text property is present.
* lisp/erc/erc.el (erc--msg-props): Add doc string explaining the
purpose of this variable and the various text properties most commonly
present in its value.
(erc--msg-prop-overrides): Add doc string.
(erc-send-action): Don't set `erc-cmd' prop on outgoing CTCP ACTIONs.
(erc-display-message): Reverse overrides to prefer items toward the
front of the alist.
(erc-process-ctcp-query): Include existing overrides from environs.
(erc-send-current-line): Include existing overrides from environs.
(erc-display-msg): Fix doc string and reverse overrides.
* test/lisp/erc/erc-fill-tests.el (erc-fill-tests--insert-privmsg):
Remove stray comment.
(erc-fill-tests--save-p): Set value from environment variable.
(erc-fill-tests--compare): Limit writing snapshots to one test at a
time.
(erc-fill-wrap--merge-action): Fix expected output for non-action
messages that follow action messages.  These were previously merged
but escaped detection.
* test/lisp/erc/resources/fill/snapshots/merge-wrap-01.eld: Update.
(Bug#60936)
2023-10-27 13:09:29 -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 Prefer erc-target to erc-default-target 2023-10-20 15:24:06 -07:00
erc-button.el Spoof channel users in erc-button--phantom-users-mode 2023-09-17 16:17:59 -07:00
erc-capab.el Don't associate ERC modules with undefined groups 2023-04-08 14:23:51 -07:00
erc-common.el Prefer erc-target to erc-default-target 2023-10-20 15:24:06 -07:00
erc-compat.el Prefer ticks/hz pairs for some ERC timestamps on 29+ 2023-10-02 17:31:28 -07:00
erc-dcc.el Fix command-line parsing regression in erc-cmd-DCC 2023-07-13 18:45:31 -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 Tidy up ERC's internal text-property API 2023-10-27 13:09:29 -07:00
erc-goodies.el Be slightly more aggressive with erc-scrolltobottom-all 2023-10-27 13:08:44 -07:00
erc-ibuffer.el Fix wrong "User" column count in erc-ibuffer 2023-10-02 17:23:29 -07:00
erc-identd.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-imenu.el Define missing groups for ERC modules 2023-06-11 20:53:48 -07:00
erc-join.el Allow custom display-buffer actions in ERC 2023-07-13 18:45:31 -07: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 Rename erc-server-buffer-p 2023-10-20 15:22:56 -07:00
erc-match.el Rename erc-server-buffer-p 2023-10-20 15:22:56 -07:00
erc-menu.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc-netsplit.el ; Silence byte compiler in erc-netsplit-JOIN 2023-05-21 18:59:33 -07:00
erc-networks.el Prefer erc-target to erc-default-target 2023-10-20 15:24:06 -07:00
erc-nicks.el ; Prefer HTTPS to HTTP in more links 2023-08-02 23:32:28 +02:00
erc-notify.el Rename erc-server-buffer-p 2023-10-20 15:22:56 -07: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 Preprocess prompt input linewise in ERC 2023-05-05 17:18:01 -07:00
erc-sasl.el Add helper for restoring local session vars in ERC 2023-05-13 07:05:22 -07:00
erc-services.el Redo erc-nickname-in-use-functions as a local module 2023-07-01 07:21:30 -07:00
erc-sound.el Define missing groups for ERC modules 2023-06-11 20:53:48 -07:00
erc-speedbar.el Rename erc-server-buffer-p 2023-10-20 15:22:56 -07:00
erc-spelling.el Define missing groups for ERC modules 2023-06-11 20:53:48 -07:00
erc-stamp.el Tidy up ERC's internal text-property API 2023-10-27 13:09:29 -07:00
erc-status-sidebar.el Simplify multi-frame behavior in erc-bufbar-mode 2023-07-28 16:39:04 -07:00
erc-track.el Ignore date stamps completely in erc-track 2023-10-27 13:08:44 -07:00
erc-truncate.el Manage some text props for ERC insertion-hook members 2023-10-13 07:47:01 -07:00
erc-xdcc.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
erc.el Tidy up ERC's internal text-property API 2023-10-27 13:09:29 -07:00