Convert PO files to JSON using Grunt.
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-po2json --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-po2json');
In your project's Gruntfile, add a section named po2json
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
po2json: {
options: {
format: 'raw'
},
all: {
src: ['test/**/*.po'],
dest: 'some/destination/path/'
}
},
})
All of the options from po2json's parse
method are exposed through the options object.
Type: Boolean
Default value: false
Whether to include fuzzy translation in JSON or not. Should be either true
or false
Type: Boolean
Default value: false
If true
, returns a JSON string. Otherwise returns a plain Javascript object.
Type: Boolean
Default value: false
If true
, the resulting JSON string will be pretty-printed. Has no effect when stringify
is false
.
Type: String
Default value: raw
Either raw
or jed
. raw
produces a "raw" JSON output, while jed
produces an output that is 100% compatible with Jed.
Type: String
Default value: messages
The domain the messages will be wrapped inside. Only has effect if format: 'jed'
.
Type: Boolean
Default value: false
Wraps the JSON output in an export definition so it can be imported in Node.js.
Type: Boolean
Default value: false
Wraps the JSON output in an AMD definition so it can be imported by Require.js.
Type: Boolean
Default value: false
Converts all instances of "id": [null, "str"]
to "id": "str"
.
Type: Boolean
Default value: false
Instead of creating one file for each .po file, writes all .po files to a single file. Property dest will be used as path to the destination file. The right extension will be appended, unless you specify it by yourself.
This grunt task runs po2json on every file in src
and writes the output file to the dest
path.
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)