diff --git a/cli.js b/cli.js index 3a92ac6..1b3675a 100755 --- a/cli.js +++ b/cli.js @@ -6,7 +6,15 @@ var path = require('path') var watch = require('./main.js') if(argv._.length === 0) { - console.error('Usage: watch [...directory] [--wait=] [--filter=] [--interval=] [--ignoreDotFiles] [--ignoreUnreadable]') + console.error([ + 'Usage: watch [...directory]', + '[--wait=]', + '[--filter=]', + '[--interval=]', + '[--ignoreDotFiles]', + '[--ignoreUnreadable]', + '[--ignoreDirectoryPattern]' + ].join(' ')) process.exit() } @@ -35,6 +43,11 @@ if(argv.ignoreDotFiles || argv.d) if(argv.ignoreUnreadable || argv.u) watchTreeOpts.ignoreUnreadableDir = true +if(argv.ignoreDirectoryPattern || argv.p) { + var match = (argv.ignoreDirectoryPattern || argv.p).match(/^\/(.*)\/([gimuy])$/); + watchTreeOpts.ignoreDirectoryPattern = new RegExp(match[1], match[2]) +} + if(argv.filter || argv.f) { try { watchTreeOpts.filter = require(path.resolve(process.cwd(), argv.filter || argv.f)) diff --git a/readme.mkd b/readme.mkd index 781f358..c645689 100644 --- a/readme.mkd +++ b/readme.mkd @@ -110,6 +110,10 @@ OPTIONS: --ignoreUnreadable, -u Silently ignores files that cannot be read within the watch [directory]. + + --ignoreDirectoryPattern=, -p + Silently skips directories that match the regular + expression. ``` It will watch the given directories (defaults to the current working directory) with `watchTree` and run the given command every time a file changes.