Dropped special characters in usernames

On our main site there are often people who use underscores and dashes in usernames. When they are ported to our Discourse forum, one or more of those characters is often dropped from the username, resulting in a mismatch.

The forum is provided for the site users only and being able to correlate between the usernames is important.

Examples:
kayakaya_ becomes kayakaya
__aena13 becomes _aena13

At present we haven’t figured out how to either automatically delete or disable forum accounts when the mains are closed or at least generate a report. Is that possible?

1 Like

The usernames are being auto-edited to reflect the Discourse rules for usernames.

1 Like

That’s pretty much what I figured. Thankfully we have found a place that keeps the actual username intact.

1 Like

We recently added two site settings which allow you to permit more characters in the username

Did you try tweaking those?

5 Likes

We’ll take a look at that and see if it helps. Thank you.

3 Likes

We are seeing this too with SSO as well with usernames being converted.

I have mentioned this here, but this topic is more recent — maybe someone can take a look.

With the introduction of the Unicode support for usernames/groups, it is now possible to have usernames like 中国 (which is awesome!) but Discourse doesn’t allow usernames to start/end with a dash (but, eg, underscore is fine).

Is there a reason for preventing dashes in the first/last position? Any chance this policy can be revised if there’s no obvious downside to it? /cc @Falco

It does get difficult when users put in a special character because the username they want is taken.

You can try overwriting those rules in a custom plugin and living with it for a few weeks. If it shows no problems in normal Discourse usage, send a pull request.

4 Likes

I’m having a go at this and managed to get leading/trailing dashes on usernames working fine, including on mentions.

Not so lucky with the underscore at start+end of a username because on the message composer the markdown parser seems to have precedence before the @ mentions: the username gets rendered in italic instead of a link.

I’m a bit stuck at the moment on that as I’m not sure where to look to address this. Any tip @Falco?