Browse Source

Fixed #26337 -- Added i18n note about using a non-English base language

Thanks Cristiano Coelho for the report and Tim Graham for the review.
Claude Paroz 8 years ago
parent
commit
f6fefbf8cb
1 changed files with 18 additions and 0 deletions
  1. 18 0
      docs/topics/i18n/translation.txt

+ 18 - 0
docs/topics/i18n/translation.txt

@@ -2196,3 +2196,21 @@ to produce the binary ``.mo`` files that are used by ``gettext``.
 You can also run :djadmin:`django-admin compilemessages
 --settings=path.to.settings <compilemessages>` to make the compiler process all
 the directories in your :setting:`LOCALE_PATHS` setting.
+
+Using a non-English base language
+---------------------------------
+
+Django makes the general assumption that the original strings in a translatable
+project are written in English. You can choose another language, but you must be
+aware of certain limitations:
+
+* ``gettext`` only provides two plural forms for the original messages, so you
+  will also need to provide a translation for the base language to include all
+  plural forms if the plural rules for the base language are different from
+  English.
+
+* When an English variant is activated and English strings are missing, the
+  fallback language will not be the :setting:`LANGUAGE_CODE` of the project,
+  but the original strings. For example, an English user visiting a site with
+  Spanish as the default language and original strings written in Russian will
+  fallback to Russian, not to Spanish.