fs-watch-tree

Recursively watch directories for changes

This package is outdated and not actively maintained.
Last updated 11 years ago by dwittner .
Repository · Bugs · Original npm · Tarball · package.json
$ gnpm install fs-watch-tree 
SYNC missed versions from official npm registry.

fs-watch-tree

Please note! This package is outdated and not actively maintained. I would suggest looking at http://github.com/shama/gaze or https://github.com/paulmillr/chokidar.


fs-watch-tree is a small tool to watch directories for changes recursively. It uses fs-watch to watch for changes, thus should work on most platforms.

Synopsis

var watchTree = require("fs-watch-tree").watchTree;

var watch = watchTree("/home/christian", function (event) {
    // See description of event below
});

watch.end(); // Release watch

watch = watchTree("/home/christian", {
    exclude: ["node_modules", "~", "#", /^\./]
}, function (event) {
    // Respond to change
});

watchTree(dir, callback)

Watches directory dir recursively for changes.

The callback is called with an event object. The event is described below.

watchTree(dir, options, callback)

Watch a directory recursively, with some specific options. Currently, you can only specify a single option:

{ exclude: [] }

The exclude array specifies file patterns to exclude from watches. If a pattern matches a directory, watch-tree will not recurse into it. If it matches a file, changes to that file will not trigger an event.

The excludes can be either strings or regular expressions, but are always treated as regular expressions. That means that

{ exclude: [".git", "node_modules"] }

Will be treated the same way as:

{ exclude: [new RegExp(".git"), new RegExp("node_modules")] }

If you only want to exclude specific files, be sure to provide full paths. watch-tree does not expand paths, it will resolve all paths relative to the original directory. So this:

watchFile(".git", function (event) { /* ... *) });

Will watch (and consider excludes for) directories like .git/branches. And this:

watchFile("/home/christian/projects/watch-tree/.git", function (event) {});

Will watch (and consider excludes for) directories like /home/christian/projects/watch-tree/.git.

event

The event object has the following properties:

name

The full (relative) path to the file/directory that changed.

isDirectory()

Returns true if the cause of the change was a directory. In some cases, e.g. when the directory was deleted, it's not possible to know if the source was a directory. In that case, this method returns false.

isMkdir()

Returns true if the cause of the event was a newly created directory.

isDelete()

Returns true if the cause of the event was a deleted file/directory.

isModify()

Returns true if the cause of the event was a modified file/directory.

Current Tags

  • 0.2.5                                ...           latest (11 years ago)

7 Versions

  • 0.2.5 [deprecated]           ...           11 years ago
  • 0.2.4 [deprecated]           ...           11 years ago
  • 0.2.3 [deprecated]           ...           11 years ago
  • 0.2.2 [deprecated]           ...           12 years ago
  • 0.2.1 [deprecated]           ...           12 years ago
  • 0.2.0 [deprecated]           ...           13 years ago
  • 0.1.0 [deprecated]           ...           13 years ago
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (2)
  • when https://github.com/cujojs/when/tarball/1.3.0
  • minimatch ~0.2
Dev Dependencies (2)
Dependents (1)

Copyright 2013 - present © cnpmjs.org | Home |