On Fri, 13 Mar 2026 14:16:12 +0100
Philipp Hörist <philipp(a)hoerist.com> wrote:
Thats what the range is for, to remove the
implementation detail or
do something with it.
Its an implementation detail that Gajim mentions a user "Nickname, "
and another client "@Nickname:".
Now Gajim will send you a range start/end and tell you which
characters are a plaintext representation of the mention.
You can then choose to remove the text and replace it with something
else, or format it in some color, or do nothing with it.
Usually you would replace the text with some clickable GUI elements
which show the nickname (which you take from your database, not from
the text) in some format you decide is fitting for your client.
This aligns with my thoughts, yeah.
But i read your draft again, and i think the confusion
might really
come from the place that in your draft you used the range to mark
text to which other people should be notified?
the receiving entity MAY use this as a hint that
the specified
range of the content is being addressed to the specified occupant.
Thats from your draft. Thats not what i would need as a feature from
this spec. For me start/end should mark the range of the nickname, so
i can replace it with GUI and do not need to use regex and care about
false positives.
As discussed, this was just poor wording on my part. It was always
meant to be the range of the user's name itself, which the existing
examples should reflect. My working draft makes this more clear I hope:
Any mention MAY contain both the 'begin' and
'end' attributes, which
specify the range of text in the body corresponding to the mention
(i.e. the mentioned user's name).