GithubHelp home page GithubHelp logo

dualinventive / grunt-potomo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from shivapoudel/grunt-potomo

0.0 0.0 0.0 55 KB

Grunt plug-in to compile .po files into binary .mo files with msgfmt.

Home Page: https://www.npmjs.com/package/grunt-potomo

License: MIT License

JavaScript 100.00%

grunt-potomo's Introduction

grunt-potomo Build Status npm version

Grunt plug-in to compile .po files into binary .mo files with msgfmt.

Requirements

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

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

grunt.loadNpmTasks( 'grunt-potomo' );

The "potomo" task

Run this task with the grunt potomo command.

Task targets, files and options may be specified according to the grunt Configuring tasks guide.

Options

options.poDel

Type: Boolean
Default: false

Whether the PO file(s) used from source should be deleted or remove after the creation of MO file(s).

Example config

grunt.initConfig({
  potomo: {                            // Task
    dist: {                            // Target
      options: {                       // Target options
        poDel: true
      },
      files: {                         // Dictionary of files
        'en_GB.mo': 'en_GB.po',        // 'destination': 'source'
        'ne_NP.mo': 'ne_NP.po'
      }
    },
    dev: {                             // Another target
      options: {                       // Target options
        poDel: false
      },
      files: {
        'dest/languages': [ 'en_GB.po', 'ne_NP.po' ]
      }
    }
  }
});

grunt.loadNpmTasks( 'grunt-potomo' );

grunt.registerTask( 'default', ['potomo' ]);

Example usage

Compile

grunt.initConfig({
  potomo: {
    dist: {
      files: {
        'ne_NP.mo': 'ne_NP.po'
      }
    }
  }
});

Compile with options

grunt.initConfig({
  potomo: {
    dist: {
      options: {
        poDel: true
      }
      files: {
        'ne_NP.mo': 'ne_NP.po'
      }
    }
  }
});

Compile multiple files

You can specify multiple destination: source items in files.

grunt.initConfig({
  potomo: {
    dist: {
      files: {
        'en_GB.mo': 'en_GB.po',
        'ne_NP.mo': 'ne_NP.po'
      }
    }
  }
});

Compile files in a directory

Instead of naming all files you want to compile, you can use the expand property allowing you to specify a directory. More information available in the grunt docs - Building the files object dynamically.

grunt.initConfig({
  dirs: {
    lang: 'language',
  },
  potomo: {
    dist: {
      options: {
        poDel: false
      },
      files: [{
        expand: true,
        cwd: '<%= dirs.lang %>/po',
        src: ['*.po'],
        dest: '<%= dirs.lang %>/mo',
        ext: '.mo',
        nonull: true
      }]
    }
  }
});

License

Copyright (c) 2016 Shiva Poudel
Licensed under the MIT license:
http://shivapoudel.mit-license.org/

grunt-potomo's People

Contributors

cfoellmann avatar shivapoudel avatar timdebooij avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.