gulp-watchman
Simple wrapper around Facebook's Watchman.
Installation
npm install --save-dev gulp-watchman
Usage
const gulp = ;const watchman = ; gulp; gulp; // Also returns a streamgulp;
API
watchman(dirPath, [options, tasks])
Watches for changes in dirpath
and returns a Readable stream of Vinyl instances per file. The dirPath
is not a glob.
options.logs
Type: Boolean
Default: true
Show Gulp logs or not. All of the files that are added/deleted/changed will be logged if true.
options.sinceInit
Type: Boolean
Default: true
Determines whether changes on all files should be triggered as soon as the Watch starts, using since.
true
: Change events are not triggered on initialization, only when files are changed after initializationfalse
: Triggers a change on every file thatoptions.expression
matched on initialization- Convenient when debugging expressions to see which files Watchman is listening to
- Useful for triggering tasks immediately after initializing the Watchman task
options.expression
Type: Array
Default: undefined
A nested-array structure of Expression Terms to filter the files Watchman should watch.
Eg. Listen to changes on all non-hidden files that are not in a node_modules
directory
expression: [
'allof',
['match', '*'], // Non-hidden
['type', 'f'], // Only files
// Ignore node_modules
['not',
['match', 'node_modules', 'basename'],
['match', 'node_modules/**/*', 'wholename', {includedotfiles: true}],
['match', '*/node_modules/**/*', 'wholename', {includedotfiles: true}],
]
]
License
MIT (c) 2016 Hiroki Osame