Home  /  System  /  Language Files

How to make or update a language file for Shinobi

There is a tool provided to translate the "en_CA" file to other languages called "translateLanguageFile.js".

Navigate to your tools folder in the Shinobi directory. If you used the Ninja Installer the default directory is /home/Shinobi

cd /home/Shinobi/tools

Then run the script to create a new file. This translator uses the Google Translator.

node translateLanguageFile.js <SOURCE> <FROM_LANGUAGE> <TO_LANGUAGE>

Here is an example of translating Canadian English to Arabic. This will create or update a file in your languages folder called ar.json. The languages folder is located in the main directory of Shinobi.

node translateLanguageFile.js en_CA en ar

Creating and Updating use the same command. If the file doesn't exist it will make it. If it does exist it will update it. Simple :)

Below is a list of supported options for the  <FROM_LANGUAGE> and < TO_LANGUAGE> ‚Äč parameters. For an updated list please visit Google's Website .

Language Code Language Code
Azerbaijan az Malayalam ml
Albanian sq Maltese mt
Amharic am Macedonian mk
English en Maori mi
Arabic ar Marathi mr
Armenian hy Mari mhr
Afrikaans af Mongolian mn
Basque eu German de
Bashkir ba Nepali ne
Belarusian be Norwegian no
Bengali bn Punjabi pa
Burmese my Papiamento pap
Bulgarian bg Persian fa
Bosnian bs Polish pl
Welsh cy Portuguese pt
Hungarian hu Romanian ro
Vietnamese vi Russian ru
Haitian (Creole) ht Cebuano ceb
Galician gl Serbian sr
Dutch nl Sinhala si
Hill Mari mrj Slovakian sk
Greek el Slovenian sl
Georgian ka Swahili sw
Gujarati gu Sundanese su
Danish da Tajik tg
Hebrew he Thai th
Yiddish yi Tagalog tl
Indonesian id Tamil ta
Irish ga Tatar tt
Italian it Telugu te
Icelandic is Turkish tr
Spanish es Udmurt udm
Kazakh kk Uzbek uz
Kannada kn Ukrainian uk
Catalan ca Urdu ur
Kyrgyz ky Finnish fi
Chinese zh French fr
Korean ko Hindi hi
Xhosa xh Croatian hr
Khmer km Czech cs
Laotian lo Swedish sv
Latin la Scottish gd
Latvian lv Estonian et
Lithuanian lt Esperanto eo
Luxembourgish lb Javanese jv
Malagasy mg Japanese ja
Malay ms

Please be respectful with the translation tool as it uses Google's servers for the queries . Each variable that doesn't exist in the destination language file will be queried for a translation. So if your destination file is missing 1000 terms from the source file it will send 1000 translation queries .

If you want to make a language file manually I highly recommend that you create a base file with the translator first then correct spelling and grammar.

It was easy to integrate but I am open to other solutions. I have also been told on many occasions the translations are just bad. So I really would appreciate any info on this.

Thank you to everyone who manually made language files!


All content is property of their respective owners.