-
Notifications
You must be signed in to change notification settings - Fork 47
Closed
Description
For the following example message, the first username on the second line does not end up linked:
@phil.catalyst:matrix.org linked? @phil.catalyst:matrix.org linked?
@phil.catalyst:matrix.org linked? @phil.catalyst:matrix.org linked?
So the respective output end up like this:
phil.catalyst:
11:40 phil.catalyst linked? phil.catalyst linked? @phil.catalyst:matrix.org linked? phil.catalyst linked?
It looks like the issue is the regexp in ement--format-body-mentions. For a @ immediately following a newline, that initial (or bos bow (1+ blank)) doesn't match because @ isn't word syntax, and newlines aren't [:blank:]. Let's simply add a newline to that set of alternatives?
(rx (or bos bow (1+ blank))
(or (seq (group
;; Group 1: full @-prefixed MXID.
"@" (group
;; Group 2: displayname. (NOTE: Does not work
;; with displaynames containing spaces.)
(1+ (seq (optional ".") alnum)))
(optional ":" (1+ (seq (optional ".") alnum))))
(or ":" eow eos (syntax punctuation)))
(seq (group
;; Group 3: MXID username or displayname.
(1+ (not blank)))
":" (1+ blank))))Metadata
Metadata
Assignees
Labels
No labels