grunt-localeapp

0.2.2 • Public • Published

grunt-localeapp

NPM

Grunt task for http://www.localeapp.com service. Localeapp is a cloud service which provide a managment interface for translation files.

Getting Started

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-localeapp --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-localeapp');

You can also use load-grunt-tasks to avoid these kind of inclusions.

The "localeapp" task

Overview

In your project's Gruntfile, add a section named localeapp to the data object passed into grunt.initConfig().

grunt.initConfig({
 
  ...
 
  localeapp: {
    options: {
      key: "tAbgRC2RemnJye2tLqwc1Y8xoyTUIVqZExlyFM0BlFo0YvCsgB"
    },
    infos: {},
    pull: {
      dest: '<%= yeoman.app %>/locales/'
      format: 'js',
      js: {
        prefix: 'translate_',
        es6: false
      }
    }
  },
 
  ...
 
});

Options

The options object and its key is required. It is a project-specific information that will allow you to authenticate through their service and specify the project you are looking for.

You can find your api key by following these steps:

  • go to http://localeapp.com
  • click on the project you want to deal with
  • click the Dashboard button and select Settings menu
  • copy your API key

Other keys (infos, pull), can be added regarding to your needs.

infos

This target can be used to get some details about your localeapp project.

Output example:

11:07:12 {master} ~/projets/grunt-localeapp$ grunt localeapp:infos
Running "localeapp:infos" (localeapp) task
✔ Found project named "My awesome project"
✔ Default locale [en-US] English (United States)

pull

dest : Destination folder where the locale files will be pulled (must end with a '/').

format : Basicly, localeapp.com only exports to yaml format. This options indicates the desired output format. Available format are listed below :

format translation tool comment
yml native
json yamljs
js yamljs output in a variable: var en_US = {...};

Difference between js and json is that you can assign the object to a variable. With any options, variable name is the locale name (ex: en, en_US, ...). But you can prefix this name with the js.prefix option.

Example: js.prefix = "translate_ will create an output file which will lokk like var translate_en_US = {...};

In addition, if you specifiy js.es6: true, the var keyword will be replaced by ES6 let one.

Output example :

12:31:54 {without-gem} ~/projets/grunt-localeapp$ grunt localeapp:pull
Running "localeapp:pull" (localeapp) task
✔ 2 locales found: en-US, fr-FR
   > en-US translations: 136
   > fr-FR translations: 12

Contributing

It is my very first grunt task, so please be indulgent and feel free to send me back any constructive comment.

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.

Release History

0.2.0 (2015-02-16)

  • Complete rewrite to avoid gem requirement

0.1.3 (2014-10-06)

  • Add new supported output format: js

0.1.2 (2014-07-16)

  • Pull files from localeapp
  • Supported output formats: yml, json

Package Sidebar

Install

npm i grunt-localeapp

Weekly Downloads

4

Version

0.2.2

License

none

Last publish

Collaborators

  • yllieth