Git Product home page Git Product logo

qpoc-closure-compiler's Introduction

UNDER DEVELOPMENT

grunt-qpoc-closure-compiler

Extended closure compiler plugin with module support.

Getting Started

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-qpoc-closure-compiler --save-dev

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

grunt.loadNpmTasks('grunt-qpoc-closure-compiler');

The "qpoc_closure_compiler" task

Overview

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

grunt.initConfig({
  qpoc_closure_compiler: {
    your_mode: {
      options: {
        // Task-specific options go here.

        // path to compiler.jar of google closure compiler
        // default: environment variable CLOSURE_COMPILER
        closureCompiler: './compiler.jar',

        // path to the closure library folder which contains "closure",
        // "third_party" ...
        // default: environment variable CLOSURE_LIBRARY
        closureLibrary: '/closure-library/',

        // Java executable path
        // default: 'java'
        javaPath: 'java',

        // whether automaticaly add the closure library to the pathes
        includeClosureLibrary: true, // default: true

        workspaces: [
          {
            // paths to libraries which are required in your application
            path: './lib/'
          }
          // ... further ones
        ],


        // defines the way you want to split your application
        modules: [
          // define your main module at the start
          // it's required to define one main module which will be the
          // dependency of all further modules
          {
            // path to the initiate script of the module
            path: './lib/init.js',

            // name of the module
            name: 'app'
          },

          {
            path: './lib/the_mod.js',
            name: 'the_mod',
            // array of modules which are required
            dependencies: ['app']
          }
        ],

        level: {
          advanced: true // default is false
        },

        // formatting of the code exported by the compiler
        prettyPrint: false, // default is true

        // path for the generated files
        // default: ./tmp/
        outputDir: '.',

        // prefix for the exported module javascript files.
        // example: module name "app", prefix: "module_"
        // => "#{ outputDir }/module_app.js"
        modulePrefix: '',

        // automaticaly exports a module.js.map into the outputDir
        sourceMaps: true // default: false
      }
    }
  },
})

Options

options.closureCompiler

Type: String Default value: environment $CLOSURE_COMPILER

Description following...

To be continued... Please look at the example above

Release History

(Nothing yet)

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.