1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-05-01 10:41:57 -07:00
emacs/lisp/erc
F. Jason Park 236a416be7 Add erc--spkr text property to chat messages
* etc/ERC-NEWS: Mention combined face ordering for "/me" messages.
* lisp/erc/erc-backend.el (erc-server-PRIVMSG): Bind
`erc--msg-prop-overrides' for the extent of this function's execution,
which means a large amount of code will see this variable as being
non-nil.  However, no calls to `erc-display-message' or
`erc-display-msg' should occur other than the one handling the final
insertion.  Code needing to influence the current message's "msg
props" can push new pairs onto this value, which will override any
existing collisions.
* lisp/erc/erc-fill.el (erc-fill): Switch to `erc--spkr' as sentinel
property.
(erc-fill--wrap-continued-message-p): Look for `erc--spkr' property
instead of `erc-speaker'.
* lisp/erc/erc.el (erc--msg-props): Mention `erc--spkr' in doc.
(erc--send-action-perform-ctcp): Add `erc--spkr' property.  Fix bug in
which `erc-my-nick-face' appeared below `erc-input-face' in the
speaker portion.
(erc--ensure-spkr-prop): New helper function to propagate speaker
metadata.
(erc--ranked-properties): Add `erc--spkr', `erc--ctcp', and
`erc--ephemeral'.
(erc-display-message): Use default hash table size when initializing.
Remove unnecessary assignment of `msg' to `erc--msg' for PRIVMSG and
NOTICE commands.  Bind `string' below `erc--msg-props' so that
implementers of the function form of the `erc-format-message'
templating interface can read and write the current context's "msg
props".
(erc--own-property-names): Add all `erc--msg-props' props by
subsumation.
(erc--get-speaker-bounds): Use `erc--spkr' instead of `erc--msg' as a
sentinel to detect a chat message guaranteed to have an `erc--speaker'
text-property interval.
(erc-format-privmessage, erc-format-my-nick, erc-ctcp-query-ACTION):
Add `erc--spkr' to `erc--msg-prop-overrides' when available.
* test/lisp/erc/erc-fill-tests.el: (erc-fill-tests--insert-privmsg):
Bind `erc--msg-prop-overrides'.
(erc-fill-tests--compare): Require environment variable value to match
current test name exactly when saving snapshots.  Add `erc--msg-props'
individually to white list.
* test/lisp/erc/erc-tests.el (erc--order-text-properties-from-hash):
Include `erc--spkr'.  (Bug#60936)  (Bug#67677)
; * test/lisp/erc/resources/fill/snapshots/merge-01-start.eld: Update.
; * test/lisp/erc/resources/fill/snapshots/merge-02-right.eld: Update.
; * test/lisp/erc/resources/fill/snapshots/merge-wrap-01.eld: Update.
; * test/lisp/erc/resources/fill/snapshots/merge-wrap-indicator-post-01.eld:
; Update.
; * test/lisp/erc/resources/fill/snapshots/merge-wrap-indicator-pre-01.eld:
; Update.
; * test/lisp/erc/resources/fill/snapshots/monospace-01-start.eld: Update.
; * test/lisp/erc/resources/fill/snapshots/monospace-02-right.eld: Update.
; * test/lisp/erc/resources/fill/snapshots/monospace-03-left.eld: Update.
; * test/lisp/erc/resources/fill/snapshots/monospace-04-reset.eld: Update.
; * test/lisp/erc/resources/fill/snapshots/spacing-01-mono.eld: Update.
; * test/lisp/erc/resources/fill/snapshots/stamps-left-01.eld: Update.
2023-12-17 20:17:55 -08:00
..
ChangeLog.1
ChangeLog.2
erc-autoaway.el
erc-backend.el Add erc--spkr text property to chat messages 2023-12-17 20:17:55 -08:00
erc-button.el ; Prepare for ERC 5.6 release 2023-11-12 20:37:49 -08:00
erc-capab.el
erc-common.el Skip erc-ignored-user-p when erc-ignore-list is empty 2023-12-17 20:17:55 -08:00
erc-compat.el Optionally allow substitution patterns in erc-prompt 2023-11-24 13:38:52 -08:00
erc-dcc.el Add utility for iterating over arrays in ERC 2023-12-17 20:17:54 -08:00
erc-desktop-notifications.el
erc-ezbounce.el
erc-fill.el Add erc--spkr text property to chat messages 2023-12-17 20:17:55 -08:00
erc-goodies.el Double hyphenate internal ERC 5.6 text props 2023-12-17 20:17:54 -08:00
erc-ibuffer.el
erc-identd.el
erc-imenu.el
erc-join.el
erc-lang.el
erc-list.el
erc-log.el
erc-match.el Revive erc-command-indicator as new module 2023-11-12 20:37:49 -08:00
erc-menu.el
erc-netsplit.el Define ERC message-formatting templates with defvar 2023-12-17 20:17:54 -08:00
erc-networks.el Sequester some special-variable declarations in ERC 2023-12-17 20:17:54 -08:00
erc-nicks.el ; Prepare for ERC 5.6 release 2023-11-12 20:37:49 -08:00
erc-notify.el Define ERC message-formatting templates with defvar 2023-12-17 20:17:54 -08:00
erc-page.el Define ERC message-formatting templates with defvar 2023-12-17 20:17:54 -08:00
erc-pcomplete.el
erc-replace.el
erc-ring.el
erc-sasl.el Define ERC message-formatting templates with defvar 2023-12-17 20:17:54 -08:00
erc-services.el Merge from origin/emacs-29 2023-12-09 07:25:21 -05:00
erc-sound.el Define ERC message-formatting templates with defvar 2023-12-17 20:17:54 -08:00
erc-speedbar.el Make erc-get-user-mode-prefix more flexible 2023-12-17 20:17:55 -08:00
erc-spelling.el
erc-stamp.el Double hyphenate internal ERC 5.6 text props 2023-12-17 20:17:54 -08:00
erc-status-sidebar.el ; Fix typos 2023-12-10 13:22:04 +01:00
erc-track.el Double hyphenate internal ERC 5.6 text props 2023-12-17 20:17:54 -08:00
erc-truncate.el
erc-xdcc.el
erc.el Add erc--spkr text property to chat messages 2023-12-17 20:17:55 -08:00