Grunt plugin for lingua tooling, xgettext extraction for Angular.js to .pot and generating .json from .po files.
This plugin requires Grunt ~0.4.1
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-lingua --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-lingua');
You need Python (only tested with 2.x) and the pybabel and jinja2 modules installed.
In your project's Gruntfile, add a section named lingua
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
lingua: {
extract: {
potDest: 'messages.pot', // dest path must exist
scanDirs: ['.'] // array of directories to scan
},
po2json: {
outPrefix: 'l_', // prefix on dest .json files (will be named from .po)
src: ['*.po'],
dest: ''
}
},
})
####Generate .pot file:
grunt lingua:extract
####Translations tool like poedit to create a catalog and make translations (outputs .po/.mo files)
####Generate .json
grunt lingua:po2json
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
(Nothing yet)
grunt-po2json @rkitamura