Variable: erc--msg-props

erc--msg-props is a variable defined in erc.el.gz.

Value

nil

Documentation

Hash table containing metadata properties for current message.

Provided by the insertion functions erc-display-message and erc-display-msg while running their modification hooks. Initialized when null for each visitation round from function parameters and environmental factors, as well as the alist erc--msg-prop-overrides. Keys are symbols. Values are opaque objects, unless otherwise specified. Items present after running erc-insert-post-hook or erc-send-post-hook become text properties added to the first character of an inserted message. A given message therefore spans the interval extending from one set of such properties to the newline before the next (or erc-insert-marker). As of ERC 5.6, this forms the basis for visiting and editing inserted messages. Modules should align their markers accordingly. The following properties have meaning as of ERC 5.6:

 - erc--msg: a symbol, guaranteed present; possible values
    include unknown, a fallback used by erc-display-message; a
    catalog key, such as s401 or finished; an
   erc-display-message TYPE parameter, like notice

 - erc--cmd: a message's associated IRC command, as read by
   erc--get-eq-comparable-cmd; currently either a symbol, like
   PRIVMSG, or a number, like 5, which represents the numeric
    "005"; absent on "local" messages, such as simple warnings
    and help text, and on outgoing messages unless echoed back by
    the server (assuming future support)

 - erc--spkr: a string, the non-case-mapped nick of the speaker as
    stored in the nickname slot of its erc-server-users item

 - erc--ctcp: a CTCP command, like ACTION

 - erc--ts: a timestamp, possibly provided by the server; as of
    5.6, a ticks/hertz pair on Emacs 29 and above, and a "list"
    type otherwise; managed by the stamp module

 - erc--skip: list of symbols known to modules that indicate an
    intent to skip or simplify module-specific processing

 - erc--ephemeral: a symbol prefixed by or matching a module
    name; indicates to other modules and members of modification
    hooks that the current message should not affect stateful
    operations, such as recording a channel's most recent speaker

 - erc--hide: a symbol or list of symbols added as an invisible
    prop value to the entire message, starting *before* the preceding
    newline and ending before the trailing newline

This is an internal API, and the selection of related helper utilities is fluid and provisional. As of ERC 5.6, see the functions erc--check-msg-prop and erc--get-inserted-msg-prop.

Source Code

;; Defined in /usr/src/emacs/lisp/erc/erc.el.gz
(defvar erc-message-parsed) ; only known to this file

(defvar erc--msg-props nil
  "Hash table containing metadata properties for current message.
Provided by the insertion functions `erc-display-message' and
`erc-display-msg' while running their modification hooks.
Initialized when null for each visitation round from function
parameters and environmental factors, as well as the alist
`erc--msg-prop-overrides'.  Keys are symbols.  Values are opaque
objects, unless otherwise specified.  Items present after running
`erc-insert-post-hook' or `erc-send-post-hook' become text
properties added to the first character of an inserted message.
A given message therefore spans the interval extending from one
set of such properties to the newline before the next (or
`erc-insert-marker').  As of ERC 5.6, this forms the basis for
visiting and editing inserted messages.  Modules should align
their markers accordingly.  The following properties have meaning
as of ERC 5.6:

 - `erc--msg': a symbol, guaranteed present; possible values
    include `unknown', a fallback used by `erc-display-message'; a
    catalog key, such as `s401' or `finished'; an
   `erc-display-message' TYPE parameter, like `notice'

 - `erc--cmd': a message's associated IRC command, as read by
   `erc--get-eq-comparable-cmd'; currently either a symbol, like
   `PRIVMSG', or a number, like 5, which represents the numeric
    \"005\"; absent on \"local\" messages, such as simple warnings
    and help text, and on outgoing messages unless echoed back by
    the server (assuming future support)

 - `erc--spkr': a string, the non-case-mapped nick of the speaker as
    stored in the `nickname' slot of its `erc-server-users' item

 - `erc--ctcp': a CTCP command, like `ACTION'

 - `erc--ts': a timestamp, possibly provided by the server; as of
    5.6, a ticks/hertz pair on Emacs 29 and above, and a \"list\"
    type otherwise; managed by the `stamp' module

 - `erc--skip': list of symbols known to modules that indicate an
    intent to skip or simplify module-specific processing

 - `erc--ephemeral': a symbol prefixed by or matching a module
    name; indicates to other modules and members of modification
    hooks that the current message should not affect stateful
    operations, such as recording a channel's most recent speaker

 - `erc--hide': a symbol or list of symbols added as an `invisible'
    prop value to the entire message, starting *before* the preceding
    newline and ending before the trailing newline

This is an internal API, and the selection of related helper
utilities is fluid and provisional.  As of ERC 5.6, see the
functions `erc--check-msg-prop' and `erc--get-inserted-msg-prop'.")