1.2.0 • Published 6 years ago

@runner/generator-gettext v1.2.0

Weekly downloads
1
License
GPL-3.0
Repository
github
Last release
6 years ago

Tasks generator for gettext

build status npm version dependencies status devDependencies status Gitter RunKit

Installation

npm install @runner/generator-gettext

Usage

Add to the scope:

var generator = require('@runner/generator-gettext');

Generate tasks according to the given config:

var tasks = generator({
    languages: ['fr', 'de'],
    source: 'src/lang',
    target: 'build/develop/lang',
    jsData: 'build/develop/main.js'    
});

Add generated tasks to the runner instance:

var runner = require('@runner/core');

Object.assign(runner.tasks, tasks);

The following tasks will become available:

Task nameDescription
gettext:configprints the current configuration used for generated tasks
gettext:buildperforms language files compilation
gettext:clearremoves compiled file

Generator accepts two arguments: base configuration and additional options.

Base configuration

It's an object with the following properties:

NameDescription
sourcedirectory with po and pot files
targetdirectory with generated localization json files
jsDatajavascript source file to scan
languageslist of language codes in ISO 639-1 format to generate localization files for
fromCodespecifies the encoding of the input files (flag --from-code=name)
addCommentsplace comment blocks starting with tag and preceding keyword lines in the output file (flag --add-comments[=tag])
indentwrite po files using indented style (flag --indent)
noLocationwrite "#: filename:line" lines (flag --no-location)
addLocationlocation type (flag --add-location)
noWrapdo not break long message lines (flag --no-wrap)
sortOutputgenerate sorted output (flag --sort-output)
sortByFilesort output by file location (flag --sort-by-file)
verboseincrease verbosity level (flag --verbose)

Additional options

It's an object with the following properties:

NameDescription
prefixan affix placed before a task name (default is gettext:)
suffixa 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: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.