runner-generator-gettext
v2.1.0
Published
Tasks generator for gettext internationalization and localization system.
Downloads
21
Readme
Tasks generator for gettext
Installation
npm install runner-generator-gettext
Usage
Add to the scope:
const generator = require('runner-generator-gettext');
Generate tasks according to the given config:
const tasks = generator({
languages: ['fr', 'de'],
source: 'src/lang',
target: 'build/develop/lang',
jsData: ['build/develop/main.js']
});
Add generated tasks to the runner
instance:
const runner = require('runner');
Object.assign(runner.tasks, tasks);
The following tasks will become available:
Task name | Description
------------------|-------------
gettext:config
| prints the current configuration used for generated tasks
gettext:exec
| performs .po
and .pot
files generation
gettext:json
| performs .json
files generation
gettext:build
| executes gettext:exec
and gettext:json
tasks
gettext:clear
| removes compiled file
Generator accepts two arguments: base configuration and additional options.
Base configuration
It's an object with the following properties:
Name | Description
-------------|-------------
source | directory with po
and pot
files
target | directory with generated localization json
files
jsData | javascript source file to scan
languages | list of language codes in ISO 639-1 format to generate localization files for
fromCode | specifies the encoding of the input files (flag --from-code=name
)
addComments | place comment blocks starting with tag and preceding keyword lines in the output file (flag --add-comments[=tag]
)
indent | write po
files using indented style (flag --indent
)
noLocation | write "#: filename:line" lines (flag --no-location
)
addLocation | location type (flag --add-location
)
noWrap | do not break long message lines (flag --no-wrap
)
sortOutput | generate sorted output (flag --sort-output
)
sortByFile | sort output by file location (flag --sort-by-file
)
verbose | increase verbosity level (flag --verbose
)
Additional options
It's an object with the following properties:
Name | Description
--------|-------------
prefix | an affix placed before a task name (default is gettext:
)
suffix | a string added at the end of a task name (empty by default)
So it's possible to change generated tasks names:
Object.assign(runner.tasks,
generator(config, {
prefix: 'lang:',
suffix: ':develop'
})
);
It will add the following tasks:
lang:config:develop
lang:exec:develop
lang:json:develop
lang:build:develop
lang:clear:develop
Contribution
If you have any problems or suggestions please open an issue according to the contribution rules.
License
runner-generator-gettext
is released under the GPL-3.0 License.