... | ... | @@ -16,12 +16,20 @@ We follow [ISO-3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) |
|
|
|
|
|
# Language codes
|
|
|
|
|
|
We generally follow [IETF language tags](https://en.wikipedia.org/wiki/IETF_language_tag), with some exceptions where we use ISO 3166-1, such as:
|
|
|
Language codes are written using the same syntax as linux/libc/gettext locales:
|
|
|
|
|
|
```
|
|
|
language[_country][.charset]
|
|
|
```
|
|
|
|
|
|
.. where the charset is assumed to be utf8, and therefore omitted.
|
|
|
|
|
|
Language and country codes tend to follow [ISO-3166-1](https://en.wikipedia.org/wiki/ISO_3166-1).
|
|
|
|
|
|
However, since we do not have a translation for every country where a language is spoken, and since we tend to avoid creating regional translations (because it's a ton of work), there are some languages that are identified as linked to a specific country, or using a specific charset, only because that's how translators created them initially:
|
|
|
|
|
|
* `zh_CN` (Chinese simplified)
|
|
|
* `zh_TW` (Chinese traditional)
|
|
|
* `sr_RS` uses latin letters
|
|
|
|
|
|
Since adding a new translation is a lot of work, and to avoid breaking existing installations of CiviCRM, we tend to keep these exceptions, rather than change to a more appropriate language code.
|
|
|
* `sr_RS` uses latin letters, equivalent to `sr_RS@latin`
|
|
|
|
|
|
See also: [new official language](https://lab.civicrm.org/dev/translation/-/wikis/New-official-language) on how to request a new language. |
|
|
\ No newline at end of file |
|
|
See also: [new official language](https://lab.civicrm.org/dev/translation/-/wikis/New-official-language). |
|
|
\ No newline at end of file |