I would love to be able to support posting in non-enabled languages. There are effectively five levels of language support now:
Browser-based (and other ad-hoc) translation to arbitrary locales
Discourse’s supported locales (some few dozen)
Discourse AI’s supported auto-translatable locales (some few dozen)
The site’s enabled locales (here 11)
The site’s enabled AI-translated locales (here 11, often even more limited due to plan and/or cost)
Just as Discourse wants to ensure it has good coverage of the l10n efforts before adding a supported locale, individual sites will want to ensure their, e.g., guidelines and other prominent/important content are appropriately translated and supported. For example, we’ve used site_texts to change the meaning of some important facets of our site. We would need to ensure we have the right translations of those before enabling more locales.
But there’s a long tail of languages used! I would very much appreciate the ability for someone in the long-tail of languages to post in their native language, even if we’ve not vetted all our site_texts and guidelines and other translations. Often these folks can read English well enough to get by (especially with the help of some ad-hoc translation)… but posting is another story.
I think it’d make a lot of sense to have far more supported languages in post authorship. Why not allow me to post in any of the supported auto-translatable locales? Sure, I don’t get first-class auto-translation back to my native language, but surely there’s a huge boon to allow me to author like this?
Edit: Actually, I suppose my ask is slightly different from the OP’s — I simply want to support posting in any one of Discourse AI’s supported auto-translatable locales without adding them as a site-enabled locale, whereas the OP’s ask was about adding yet more languages to the supported class.
Can I post in a language that isn’t enabled, using the dropdown menu to select “Not Set”… and then manually add an English translation? Or does “Not Set” simply imply the website’s default language?
Thanks; I did search and even found/skimmed that topic but missed that FAQ. This topic seemed to be the closest match to what I wanted, but obviously I missed.
The part that made this confusing to me is that I cannot select Esperanto manually while authoring the post… but the Locale Detector Agent auto-detected it and marked the above post as eo!
So… this becomes a very minimal ask: could we be able to manually declare many more languages directly during post authorship? That’d make it more obvious that using those languages is ok! In fact, there are surely languages that the translation LLM doesn’t support; how do I know which those are?
It looks like the locale dropdown during post authorship only shows the enabled languages, whereas the post dropdown in the translations modal (afterwards) shows the supported locales… but the translator LLM supports even more than that!
I think those depend on the LLM you choose, not on the Discourse feature you are using.
A locale dropdown that offers any language with thousands of entries wouldn’t make it easier to select the language. Even showing all ~50 languages the Discourse interface currently supports are a lot and would still exclude all the other languages.
Maybe it could work for you to hide the dropdown if you think it’s discouraging. Then users won’t see those languages in the composer. Though I feel I tent to reply in a language I see in the forum, so I am not sure the dropdown would be what would stop me to just post in German.
But I agree that a manual input of the language code would be a nice feature. Maybe not for end users, but for staff. If AI is allowed to do that when detecting the language it should also be possible on forums not using AI
I’m quite the atypical user here as I’m evaluating and trying to understand how translations behave under a variety of admin configurations… and which configurations will make the most sense for our particular community. But I think it’s highly nonintuitive (and rather assumptive!) for a user to blithely post in Spanish if they stumble across a site that only shows English and Japanese languages in the drop-downs (both site-wide and in post authorship)!
As I said, I think I am much more influenced by the language I see in the forum than the one shown in a dropdown. Your Japanese user would see all posts in Japanese if they didn’t add English to the languages they understand. So it might feel natural for them to reply in that language. But if you see an forum with English posts only, you tend to post in that language too as long as it’s not a to big hurdle.
If you saw a German forum with almost all post in German would you just post in French just because there was a dropdown to choose French as the interface language for the forum?
You can enable the Content localization language switcher only for anonymous users and let everyone who signs up select their preferred language in their preferences where all languages the Discourse interface supports are offered.
But you would still see the other users post in a different language.
And I think this is what makes me write this in English. I want you to understand me as well as possible. So if everyone writes in English, I try to do that too. Translations always result in information loss.
An example from Meta:
This is what the English post says:
This is what the German translation says:
However, the script hasn’t been working for the past few months and now only returns 400 errors.
If I wanted to find out what has changed the nuance between “stopped working in the last month” and “hasn’t been working for the past months” is quite important.
That’s why I usually try to stick to a language we both understand. There is less risk for misunderstandings and if there are any I at least know why. If I don’t know the translation you are looking at that is much more difficult.
So I use the language other users in this forum use - not because of a dropdown somewhere but because I want them to understand me.
My core goal is to understand how the discourse site I administer — a decade old, English-only site — could start enabling automated translation.
We’re going to trial this by enabling post translations to English, but still supporting English alone! With such a configuration, there’s absolutely nothing that would indicate you can do this — in fact the multilingual menu in the post editor really makes it seem like only English works:
Right we could hide this composer menu if there’s only a single language… I don’t think we really considered “post in Y and we’ll translate to X, but we won’t translate everything else back to Y”… I believe we always had at least 2 supported languages in mind.
The locale detector agent will detect any language and set it, regardless of what the site supports in settings. Language support and detection quality will vary by LLM.
Posting as “not set” in a language unsupported by Discourse and setting an English translation by hand won’t work without AI at the moment. Manual translation requires a supported locale so the original post can be set.
Allowing admins to set additional languages for use in the composer menu might be a reasonable option to have for this case.