summaryrefslogtreecommitdiff
path: root/docs/guides/contributing-language.rst
diff options
context:
space:
mode:
authorPliable Pixels <pliablepixels@gmail.com>2019-03-15 09:27:24 -0400
committerPliable Pixels <pliablepixels@gmail.com>2019-03-15 09:27:24 -0400
commitb87f575ca55220a6d7066d6c96e6895ea4721e04 (patch)
tree2ec4f92c7d0433e002907dd0e984144146dcaf1e /docs/guides/contributing-language.rst
parent39af2422f657f8b5e53af59c7d0dd4fb8d741c38 (diff)
moved dirs
Diffstat (limited to 'docs/guides/contributing-language.rst')
-rw-r--r--docs/guides/contributing-language.rst59
1 files changed, 59 insertions, 0 deletions
diff --git a/docs/guides/contributing-language.rst b/docs/guides/contributing-language.rst
new file mode 100644
index 00000000..e93d227f
--- /dev/null
+++ b/docs/guides/contributing-language.rst
@@ -0,0 +1,59 @@
+Contributing a new language
+---------------------------
+
+If you are familiar with using git, I'd prefer if you follow the Pull
+Request process
+`here <https://github.com/pliablepixels/zmNinja/blob/master/CONTRIBUTING.md#steps-for-code-contribution>`__.
+
+Adding a new language
+^^^^^^^^^^^^^^^^^^^^^
+
+- Languages translations are available
+ `here <https://github.com/pliablepixels/zmNinja/tree/master/www/lang>`__
+- To contribute a new language, add a new ``locale-xx.json`` (where
+ ``xx`` is your language code).
+- Ideally, you should also provide a language translation for the
+ zmNinja help file inside
+ `lang/help <https://github.com/pliablepixels/zmNinja/tree/master/www/lang/help>`__
+
+The best way is to simply look at an existing language translation and
+follow the same model for yours. If any language translation keywords
+are missed, it will fallback to English.
+
+Main Language file
+^^^^^^^^^^^^^^^^^^
+
+- Make sure there is no comma after the last element
+- Comments are not allowed
+- Make sure you don't add ellipsis "..." anywhere, they are added to
+ messages in code when needed
+- After you complete the translation file, do the following:
+
+(replace ``-it`` with the language you are working on)
+
+``python ./checklang.py -f locale-it.json -b``
+
+This validates your JSON file, makes sure all keys are in sync with -en
+and if valid, creates pretty-locale-it.json. If you are sure it looks
+good,
+
+``python ./checklang.py -f locale-it.json -b -o``
+
+This validates your JSON file,makes sure all keys are in sync with -en
+and if valid, OVERWRITES your local file with a pretty formatted
+version, which is what you should PR
+
+Translating Help language file
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+- Located inside lang/help
+- Please be careful not to mess up the html tags, please only focus on
+ text translation
+
+How to recognize a new language:
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+(This is only for zmNinja developers. Not relevant for language
+translators) \* Modify languages array in NVR.js (look for "var
+languages") \* register language glob code in app.js - make sure its
+added to array list and mapping (look for registerAvailableLanguageKeys)