Gulp-Load-Plugins は Pattern 指定できる

Gulp-Load-Plugins は、gulp-* で始まる Gulp 関連パッケージを一括で読み込んでくれる。例えば gulp-inject なら $.inject()、gulp-angular-filesort なら $.angularFilesort() となる。先頭の gulp- を省いて、ハイフンケース部分はキャメルケースに直した名前になる。

さて、このプラグイン、gulp- で始まらないパッケージも読み込めることに気が付いたので紹介。

const gulp = require('gulp');

// これまでこう書いていた
// const $ = require('gulp-load-plugins')();

// gulp-* 以外に追加したいパッケージ名を列挙していけば OK
const $ = require('gulp-load-plugins')({
  pattern: ['gulp-*', 'browserify', 'del', 'run-sequence', 'vinyl-source-stream']
});

// gulp- 始まりのパッケージはこれまでどおり
$.inject();

// del パッケージはこんな感じに呼び出せる
$.del();
// Run-Sequence も使える (ハイフンケースはキャメルケースに直す)
$.runSequence();
// Browserify・Vinyl-Source-Stream もこのとおり
$.browserify().bundle().pipe($.vinylSourceStream())

Gulp-Load-Plugins のオプションに pattern というモノがあり、ココに読み込みたいパッケージを列挙していけば良かった。

先頭の gulp-* は記載しておかないと gulp- 始まりのパッケージが読み込めなくなるので注意。

これでだいぶ require() がスッキリする…。