i18n-generator
i18n json files generator for node, web browser and command line.
i18n Online Demo Tools / Edit Demo CSV File
Getting Started
node.js
Install the module with: npm install i18n-generator
const i18nGenerator = require('i18n-generator'); const inputFile = 'input.txt';const outputPath = 'output'; i18nGenerator(inputFile, outputPath); // js-beautify your jsoni18nGenerator(inputFile, outputPath, true);// or given js-beautify optionsi18nGenerator(inputFile, outputPath, { indent_size: 2 });// settings split variable (default as |)i18nGenerator(inputFile,outputPath, options, 'csv'); // options => https://github.com/beautify-web/js-beautify#options// splitter support// | => pipe (default)// , => csv// \t => tsv // get output data api// input can be file (.txt) or string (data)i18nGenerator.get(input, 'csv', (err, data) => { console.log(data); // => output i18n data}); // or you cani18nGenerator.get(input, (err, data) => { console.log(data);});
browser
const i18n = window;; // or easily;
cli
$ i18n input.txt output # generate from csv or tsv $ i18n input.csv output # watch file $ i18n input.txt output --watch
Workflow
input file
i18n=>, en, zh_TW, de, my
you, you, 你, Du, kamu
I, I, 我, ich, Saya
love, love, 喜歡, liebe, cinta
eat, eat, 吃, essen, makan
ilovegithub, i love github, 我愛 Github, ich liebe Github, Saya cinta pada Github
output (de.json)
output (en.json)
output (my.json)
output (zh_TW.json)
Try Advance
When the sentence includes splitter
i18n=>, en, zh_TW, de, my
ilovegithub, "i love github but u", "我愛 github,但我也愛 git", was du gesagt, "saya pun"
Try Nest
i18n-generator covers the nesting, use =>
to open, <=
to close
i18n=>, en, zh_TW, de, my
ilovegithub, i love github, 我愛 Github, ich liebe Github, Saya cinta pada Github
=> global
sleep, sleep, 睡覺, schlafen, tidur
morning, morning, 早安, Morgen, pagi
=> people
Ahmad, Ahmad, Ahmad, Ahmad, Ahmad
<=
Back, back, 回來, terug, balik
It's work! Cool right ? You can try it on online demo tools
License
Copyright (c) 2014-Present Huei Tan. Licensed under the MIT license.