i18n-helpers

0.1.2 • Public • Published

i18n-helpers

A set of helpers useful when introducing i18n internationalization to the application.

Installation

To install the package, just type:


npm i -g i18n-helpers

or, using yarn:


yarn global add i18n-helpers

NodeJS 6.x is required to use the package.

Merge

Merges original internationalization file (usually english) and translation file. Both files have to be in JSON format.

This module is useful when searching for missing keys or when one wants to provide placeholders for missing keys. It also finds any keys that are existing in the translation and are missing in the original.

Generates either report or explicit list of keys.

Usage


i18-helpers merge [-a | -p | -v | -i] original translation

Minimal example

To run the merge in the simplest way, just provide paths to the original internationalization file and the translated one.


i18-helpers merge 'original.json' 'translation.json'

Flags

The tool can be run with different flags:

Flag Description
-a,--append-original Flag depicting that the original translation should be appended after the placeholder
-i,--indent [value] Indentation value used for building the resulting file. Check JSON.stringify documentation for the details.
-p,--placeholder [placeholder] Custom placeholder. Default placeholder is __I18N_MISSING__
-v,--verbose Generates verbose report containing list of keys in particular groups

Example output

Merge command generates simple report about performed operations. Example below:


╔═════════════════════════╤═════╗
║ New keys                │ 126 ║
╟─────────────────────────┼─────╢
║ Existing keys           │ 422 ║
╟─────────────────────────┼─────╢
║ Skipped keys            │ 0   ║
╟─────────────────────────┼─────╢
║ Missing in the original │ 0   ║
╟─────────────────────────┼─────╢
║ Total                   │ 548 ║
╚═════════════════════════╧═════╝

  • New keys is related to the keys missing in the translation
  • Existing keys are the ones that are probably already translated and exist in the translation file
  • Skipped keys are related to the ones that are inconsistent between original and translation (e.g. key in the original holds an object and in the translation is just a plain value)
  • Missing in the original holds the number of the keys missing in the original that are existing in the translation
  • Total is the sum of keys generated in the output

If the output indicates that some inconsistencies occurred (number of skipped or missing keys different than 0), one can use -v flag to investigate problems.

Dependencies (7)

Dev Dependencies (9)

Package Sidebar

Install

npm i i18n-helpers

Weekly Downloads

1

Version

0.1.2

License

MIT

Last publish

Collaborators

  • rush
  • szybkisasza