JSPM

  • Created
  • Published
  • Downloads 10598
  • Score
    100M100P100Q150059F
  • License MIT

Adds a default help task to gulp and provides the ability to add custom help messages to your gulp tasks

Package Exports

  • gulp-help

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (gulp-help) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

gulp-help NPM version Build Status

Adds a default help task to gulp and provides the ability to add custom help messages to your gulp tasks

Install

$ npm install --save-dev gulp-help

Usage

Before defining any tasks, add gulp help to your gulp instance

// gulpfile.js
var gulp = require('gulp-help')(require('gulp'));

Next, define help text for each custom task

// gulpfile.js
gulp.task('lint', 'Lints all server side js', function () {
    gulp.src('./lib/**/*.js')
      .pipe(jshint());
});

Now show that help via gulp help

New task API

gulp.task(name[, help, deps, fn, taskOptions])

name

Type: string

help

Type: string | boolean

Custom help message as a string. If you want to hide the task from the help menu, supply false.

deps

Type: Array

fn

Type: function

taskOptions.aliases

Type: Array

List of aliases for this task.

Hide Tasks

You can optionally hide a target from showing up in the help menu by passing false as the help argument, e.g.

gulp.task('task-hidden-from-help', false, function () {
  // ...
});

However, if the --all flag is provided, even these tasks will be shown. (i.e. gulp help --all)

Aliases

You can optionally add aliases to your targets by supplying an object with an aliases array, e.g.

gulp.task('version', 'prints the version.', [], function() {
  // ...
}, {
  aliases: ['v', 'V']
});

which results in

Options

You can optionally pass options to your targets by supplying an object with an options object, e.g.

gulp.task('version', 'prints the version.', [], function () {
  // ...
}, {
  options: {
    'env=prod': 'description of env, perhaps with available values',
    'key=val': 'description of key & val',
    'key': 'description of key'
  }
});

which results in

Override default help message

require('gulp-help')(require('gulp'), { description: 'you are looking at it.', aliases: ['h', '?'] });

Then, calling

$ gulp      #or
$ gulp help #or
$ gulp h    #or
$ gulp ?

will now result in

Post-help callback

You can define a function to run after the default help task runs.

require('gulp-help')(gulp, {
  afterPrintCallback: function(tasks) {
    console.log(tasks);
  }
});

Hide task dependencies

By default, the dependencies of a task will be listed behind its help message. To hide them:

require('gulp-help')(require('gulp'), {hideDepsMessage:true});

License

MIT © Chris Montgomery