Page MenuHomePhabricator

#language magic word returns non-English language name when target language code is en (English)
Closed, InvalidPublicBUG REPORT

Description

What happens?:
{{#language:sh-cyrl|en}} returns: српскохрватски (ћирилица) – google translate gives 'Serbo-Croatian (Cyrillic)'
{{#language:sh-latn|en}} returns: srpskohrvatski (latinica) – google translate gives 'Serbo-Croatian (Latin)'
What should have happened instead?:
Presuming that google translate is more-or-less correct and because sh is the language tag for 'Serbo-Croatian':

  • {{#language:sh-cyrl|en}} should return: 'Serbo-Croatian (Cyrillic script)'
  • {{#language:sh-latn|en}} should return: 'Serbo-Croatian (Latin script)'

Event Timeline

Noting that for {{#language:fr|en}} it correctly gives French.

Which makes this less of a bug, but more something along the lines of "translations that don't exist in cldr".

This may be due to we're on CLDR 38, 42 is out. The upgrade has been blocked (as per the comments on T295637: Update cldr to latest released version) for a little while

It looks like it doesn't get fixed in 42...

Translations should be submitted upstream - https://cldr.unicode.org/#h.e0bvgcv2blgp

It looks like it doesn't get fixed in 42...

Translations should be submitted upstream - https://cldr.unicode.org/#h.e0bvgcv2blgp

Or locally into MediaWiki-extensions-CLDR in LocalNamesEn.php.

But otherwise this is working as intended, as it's falling back to the local language translation if one doesn't exist (especially in English)

Winston_Sung subscribed.

Work as intended.