GithubHelp home page GithubHelp logo

grunt-cmd-concat's Introduction

grunt-cmd-concat

Concatenate cmd files.

Getting Started

This plugin requires Grunt ~0.4.0

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-cmd-concat --save-dev

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

grunt.loadNpmTasks('grunt-cmd-concat');

The "concat" task

Overview

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

grunt.initConfig({
  concat: {
    options: {
      // Task-specific options go here.
    },
    your_target: {
      // Target-specific file lists and/or options go here.
    },
  },
})

Options

options.paths

Type: Array Default value: ['sea-modules']

Where are the modules in the sea.

options.include

Type: String Default value: 'self' Optional values:

  • self
  • relative
  • all

How should it include its dependencies.

options.separator

Type: String Default value: ', '

A string value that is used to do something with whatever.

options.banner

Type: String

The banner of the concated files.

options.footer

Type: String

The footer of the concated files.

options.noncmd

Type: Boolean Default Value: false

If set true, it will be treated as a noncmd file.

options.uglify

Type: Object

Uglify prettifier, you really don't have to change this value.

options.processors

Type: Object

Processors are functions to find the related files to concat.

options.css2js

Type: Function Default value: null

If a javascript module required a css, the css should be transported to js.

You can get a css2js function from grunt-cmd-transport:

var style = require('grunt-cmd-transport').style.init(grunt);

grunt.initConfig({
  concat: {
    foo: {
      options: {
        css2js: style.css2js
      }
    }
  }
});

Usage Examples

Simple Concat

This is the same as grunt-contrib-concat.

grunt.initConfig({
  concat: {
    foo: {
      options: {
        noncmd: true
      },
      files: {
        'dist/a.js': ['src/a.js', 'src/b.js'],
      }
    }
  }
})

Relative Concat

This will include all relative dependencies.

You should transport your modules first, make sure your modules contain id and dependencies.

Get transport task.

grunt.initConfig({
  concat: {
    foo: {
      options: {
        include: 'relative'
      },
      files: {
        'dist/a.js': ['src/a.js', 'src/b.js'],
      }
    }
  }
})

The a.js is something like:

define('a', ['./c'], ...)

And the result should be the concat of a.js, c.js and b.js.

Contributing

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

Jan 19th, 2015 0.2.8

reset count in every task

July 8th, 2013 0.2.5

fix pkg not exist

June 27th, 2013 0.2.4

css2js need options

June 18th, 2013 0.2.3

  • Bugfix for css concat. #15

April 23th, 2013 0.2.2

  • Bugfix. Remove output detect.

April 16th, 2013 0.2.1

  • Add options.footer
  • Add options.noncmd

April 11th, 2013 0.2.0

  • Remove options.relative
  • Add options.include

April 10th, 2013 0.1.1

  • Update cmd-util
  • Bugfix

April 1st, 2013 0.1.0

First version.

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.