diff --git a/lib/index.js b/lib/index.js index 5b364a9..b2dd7aa 100644 --- a/lib/index.js +++ b/lib/index.js @@ -3,7 +3,7 @@ var parse = require('shell-quote').parse; var path = require('path'); var rc = require('rc'); var spawn = require('child_process').spawn; -var watch = require('watch'); +var chokidar = require('chokidar'); module.exports.tend = function(dir, rawCommand, options) { options = options || {}; @@ -46,16 +46,20 @@ module.exports.tend = function(dir, rawCommand, options) { console.log(('Process ' + pid + ' Started').green); }.bind(this); - if(options.start){ + if (options.start) { startCommand(); } - if(options.runOnce){ + if (options.runOnce) { return; } - watch.watchTree(dir, function(f, curr, prev) { - if (curr === null && prev === null) { + var ignoreEvents = ['add', 'addDir']; + chokidar.watch(dir, { + persistent: true + }) + .on('all', function(e, f) { + if (~ignoreEvents.indexOf(e)) { return; } if (ignoreHidden) { @@ -64,6 +68,7 @@ module.exports.tend = function(dir, rawCommand, options) { return; } } + if (!filter.test(f)) { return; }