Some time ago I reported an issue about Discourse not automatically adding spaces behind usernames when @mentioning them. The discussion afterwards prompted me to do comprehensive research on how other platforms do @mentions.
See my detailed reply in the Discourse forum:
I’d be interested in your input here. What do you think about the conclusion? Did I miss anything? How do you do it in your projects?
My IRC client is Konversation, which allows the user to set the “nickname completion”. You can choose from three completion modes affecting the way when more than one name is there
Inline Cycle: press tab again to replace the suggestion
Shell-Like: shows a hint in the conversation text what is available
Shell-Like with Completion Box: works like a dropdown menu
It also has the option to define the “Suffix at start of the line”, which defaults to ": ", and an edit “Elsewhere” that is empty (no idea what that is good for). And finally you can decided if the completion works case sensitive.
While looking around what Elsewhere could be, I found the feature to complete not only from the beginning of a name but also when the middle part fits.
I’ve seen the issue you’ve created! Thanks!
We have recently moved from markdown editor to a WYSIWG a la medium because markdown was not very well understood (I personally dislike markdown). Many people are reporting bugs and, reading your amazing research, I understand. There are many many ways of implementing a WYSIWYG and we had many problems figuring out the expected behaviour.
Thanks to your reasearch we can probably think how to improve our mention system. Thanks for sharing.
One question. I can see in your research that there are two common practices. There is, in your opinion, best practices on how to @mention? Could we agree on what should be the standard?