{"_id":"fs-util","_rev":"102-f429a02a7a80ab9150a57ff5eb1b948d","name":"fs-util","description":"Incremental utilities for NodeJS File System API.","dist-tags":{"latest":"0.3.17"},"versions":{"0.1.0":{"name":"fs-util","version":"0.1.0","description":"Incremental utilities for NodeJS File System API.","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"engines":{"node":"0.8.x"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"keywords":["fs","util"],"devDependencies":{"coffee-script":"1.4.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n\n# FS Tree Watcher\n\nProvides the ability to watch an entire _*tree*_ of `folders` and `files`.\n\n* Events:\n * watch\n * unwatch\n * create\n * change\n * delete\n\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n````\n\n### Arguments\n\nAll callbacks receives one argument which is the related `item` to the event.\n\nIt has the following properties:\n\n#### [item].location\n\nFullpath `location` of the item.\n\n##### [item].type\n\nItem `type`, can be `dir` or `file`.\n\n##### [item].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n##### [item].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n##### [item].tree\n\nThe complete `tree` of subitems (`files` and `folders`) under that point.\n\n* _Applies only when `item.type` is `folder`_\n\n# Installing\n\n````bash\nnpm install fs-util\n````\n\n## Developing\n\n````bash\ncd fs-util && npm install\n````\n\n### Building\n\n````bash\nmake build\n````\n\n### Testing\n\n````bash\nmake test\n````\n\n# TODO\n\nList of **TODO** features besides the current `[FS Tree Watcher].watch`:\n\n* `mkdir [-p]`\n* `rm [-r] [-f]`\n* `search`\n* `cp [-r]`\n* `mv`\n\n**Note**: _There are also some tests to be finished and tested across different\nplatforms, such as Osx, Linux and Windows._","readmeFilename":"README.md","_id":"fs-util@0.1.0","dist":{"shasum":"fbd7c0d4ed66d8482f7660de43dbebb93b401896","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.1.0.tgz","integrity":"sha512-7ysvIP+21UX9Z0X1ccB9JPsXoGNCfvdACkqZntQ+vHwaV/ZPScPX0bAcLz7qNdrhy83h0K7zkk5T3JGNwxzkfA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVgXTb05Wxfrfn/UmjT3mfzHqp3WUjyJsafj9rqdYtTAIhANXTC6knrPHIB2bwWb/Y/Pei7Y1TC+j/JG1eV6U3mqax"}]},"_npmVersion":"1.1.65","_npmUser":{"name":"nybras","email":"anderson@arboleya.me"},"maintainers":[{"name":"nybras","email":"anderson@arboleya.me"}]},"0.2.0":{"name":"fs-util","version":"0.2.0","description":"Incremental utilities for NodeJS File System API.","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"engines":{"node":"0.8.x"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"keywords":["fs","util"],"devDependencies":{"coffee-script":"1.4.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.2.0\n\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n## Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_filter], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` you wanna watch (ie. 'my/path'), `file` is not accept.\n\n> `regex_filter`\n\nThe regex to filter only the files you wanna watch, i.e. `/.coffee$/m`.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be \nispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n## Example\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n````\n\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n# Installing\n\n````bash\nnpm install fs-util\n````\n\n## Developing\n\n````bash\ncd fs-util && npm install\n````\n\n### Building\n\n````bash\nmake build\n````\n\n### Testing\n\n````bash\nmake test\n````\n\n* Current [output](https://raw.github.com/serpentem/fs-util/master/imgs/tests-passing.png):\n\n````bash\n\nCurrent version is: 0.2.0\n\n • FS Watcher\n    When watching a directory tree\n      ✓ the `watch` event should be emitted properly \n    When creating a dir inside that tree\n      ✓ the `watch` and `create` event should be emitted properly \n    When deleting this dir\n      ✓ the `unwatch` and `delete` events should be emitted properly \n    When creating a file inside the watched dir\n      ✓ the `created` and `watch` events should be emitted properly \n    When updating this file (a little delay needed here, pay no mind)\n      ✓ the `change` event should be emitted properly (1001ms)\n    When deleting this file\n      ✓ the `unwatch` and `delete` events should be emitted properly \n    When moving an existent structure inside the watched tree\n      ✓ the `create` and `watch` events should be emitted properly for all files and dirs (85ms)\n    When deleting this structure\n      ✓ the `delete` and `unwatch` events should be emitted properly for all files and dirs \n\n\n  8 tests complete (1 seconds)\n````\n\n# TODO\n\nList of **TODO** features besides the current `[FS Tree Watcher].watch`:\n\n* `mkdir [-p]`\n* `rm [-r] [-f]`\n* `search`\n* `cp [-r]`\n* `mv`","readmeFilename":"README.md","_id":"fs-util@0.2.0","dist":{"shasum":"2296104c7dd4090d41e65222caa66364e22e65ef","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.2.0.tgz","integrity":"sha512-VnSgMuwpD2RNy74FVD1d4xDs1FByLOo9eZP1cCJ0M8SAH7xI2Qcfc2E7YArfK1dAqPiAINLZIiLhUZ9vtse8gQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCg7uyVcbK+ljnqGaxQBKUtxAtDC07xnMiP9K0OJ2eaWgIhANo+MSPrudB8iiLQszKFff48cKM6v/KNV22lNzxKhGhH"}]},"_npmVersion":"1.1.65","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.0":{"name":"fs-util","version":"0.3.0","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.8.x"},"devDependencies":{"coffee-script":"1.4.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.0\n\n## Compatibility\n\nIt just works.\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#watcher)\n- [FS Tools](#tools)\n\n<a name=\"watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` you wanna watch (ie. 'my/path'), `file` is not accept.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch, i.e. `/.coffee$/m`.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be \nispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n## Example\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n````\n\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n# Installing\n\n````bash\nnpm install fs-util\n````\n\n## Resolving dependencies\n\n````bash\ncd fs-util && npm install\n````\n\n### Building\n\n````bash\nmake build\n````\n\n### Testing\n\n````bash\nmake test\n````\n\n* Current [output](https://raw.github.com/serpentem/fs-util/master/imgs/tests-passing.png):\n\n````bash\nCurrent version is: 0.3.0\n\n\n  • FS Tools\n    When making a deep-dir structure\n      ✓ the structure must to be created \n    When touching a file\n      ✓ the file must be touched \n    When copying a structure\n      ✓ the structure must to be copied \n    When searching a file\n      ✓ the search must to return the proper results \n    When searching a directory\n      ✓ the search must to return the proper results \n    When listing a directory\n      ✓ the list must to return the dir contents \n    When removing a strucuture recursively\n      ✓ the structure must to removed recursively \n\n  • FS Watcher\n    When watching a directory tree\n      ✓ the `watch` event should be emitted properly \n    When creating a dir inside that tree\n      ✓ the `watch` and `create` event should be emitted properly \n    When deleting this dir\n      ✓ the `unwatch` and `delete` events should be emitted properly \n    When creating a file inside the watched dir\n      ✓ the `created` and `watch` events should be emitted properly \n    When updating this file (a little delay needed here, pay no mind)\n      ✓ the `change` event should be emitted properly (1001ms)\n    When deleting this file\n      ✓ the `unwatch` and `delete` events should be emitted properly \n    When moving an existent structure inside the watched tree\n      ✓ the `create` and `watch` events should be emitted properly for all files and dirs \n    When deleting this structure\n      ✓ the `delete` and `unwatch` events should be emitted properly for all files and dirs \n\n\n  15 tests complete (1 seconds)\n````","readmeFilename":"README.md","_id":"fs-util@0.3.0","dist":{"shasum":"c434d65ac4cfb5c81288f4d62101961c876e3121","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.0.tgz","integrity":"sha512-DOkIZXaHZJoMgle4b3kEwHPOmWqiKHI+mb2OlPTjd3/tljK8n7udHnC8n2sdfVk/hTHZlIBfyQ5v6bG4Er857w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDfqlc5z+8BjrI/PnHjDkVT5JtruvcGx9a2pKVw09ZWEAIgKHYe+ArNFQKlgDuR7Z83yfgm54SyNKh+eyl0TJri7hE="}]},"_npmVersion":"1.1.65","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.1":{"name":"fs-util","version":"0.3.1","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.8.x"},"devDependencies":{"coffee-script":"1.4.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.1\n\n## Compatibility\n\nIt just works.\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#watcher)\n- [FS Tools](#tools)\n\n<a name=\"watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` you wanna watch (ie. 'my/path'), `file` is not accept.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch, i.e. `/.coffee$/m`.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be \nispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n## Example\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n````\n\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n# Installing\n\n````bash\nnpm install fs-util\n````\n\n## Resolving dependencies\n\n````bash\ncd fs-util && npm install\n````\n\n### Building\n\n````bash\nmake build\n````\n\n### Testing\n\n````bash\nmake test\n````\n\n* Current [output](https://raw.github.com/serpentem/fs-util/master/imgs/tests-passing.png):\n\n````bash\nCurrent version is: 0.3.1\n\n  • FS Tools\n    When making a deep-dir structure\n      ✓ the structure must to be created \n    When touching a file\n      ✓ the file must be touched \n    When copying a structure\n      ✓ the structure must to be copied \n    When searching a file\n      ✓ the search must to return the proper results \n    When searching a directory\n      ✓ the search must to return the proper results \n    When listing a directory\n      ✓ the list must to return the dir contents \n    When removing a strucuture recursively\n      ✓ the structure must to removed recursively \n\n  • FS Watcher\n    When watching a directory tree\n      ✓ the `watch` event should be emitted properly \n    When creating a dir inside that tree\n      ✓ the `watch` and `create` event should be emitted properly \n    When deleting this dir\n      ✓ the `unwatch` and `delete` events should be emitted properly \n    When creating a file inside the watched dir\n      ✓ the `created` and `watch` events should be emitted properly \n    When updating this file (a little delay needed here, pay no mind)\n      ✓ the `change` event should be emitted properly (1001ms)\n    When deleting this file\n      ✓ the `unwatch` and `delete` events should be emitted properly \n    When moving an existent structure inside the watched tree\n      ✓ the `create` and `watch` events should be emitted properly for all files and dirs \n    When deleting this structure\n      ✓ the `delete` and `unwatch` events should be emitted properly for all files and dirs \n\n  15 tests complete (1 seconds)\n````","readmeFilename":"README.md","_id":"fs-util@0.3.1","dist":{"shasum":"fe6574e7dc9d2f9b3b6a9beb61e5165503b51c76","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.1.tgz","integrity":"sha512-45bGOubAq2GxxJSGDufSaQXGMrxLAKxsSlE5AggQP1hP3JVAXvC07GgjUTJ6RnM7COAp5E4Yl1+yjeH/FXRrZw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCw5TY/BZKVr+6pubMvtUD94MELKHIh7aZ0nfRXd1piZgIhANCPkIoK9aaPnqH8MagQ5c8ZAu8C22UKHaIpQfwfGPlH"}]},"_npmVersion":"1.1.65","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.2":{"name":"fs-util","version":"0.3.2","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.8.x"},"devDependencies":{"coffee-script":"1.4.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.2\n\n## Compatibility\n\nIt just works.\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#watcher)\n- [FS Tools](#tools)\n\n<a name=\"watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` you wanna watch (ie. 'my/path'), `file` is not accept.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch, i.e. `/.coffee$/m`.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be \nispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n## Example\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n<a name=\"tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n# Installing\n\n````bash\nnpm install fs-util\n````\n\n## Resolving dependencies\n\n````bash\ncd fs-util && npm install\n````\n\n### Building\n\n````bash\nmake build\n````\n\n### Testing\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.2","dist":{"shasum":"b4da0e655a0388417901d26e40d9e35affa97d64","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.2.tgz","integrity":"sha512-ZlvgugWrrTLgTljAO6uR4smB+E8TScMaoD2WUVfE6q5ixcA9mkL8YVUWLbs6sykBM+XanqGOIkz96HDSzhB8Vg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLfwjBLCsZRIxRSqXKDg2Rm0gd7appf0D6/o/cUmSrggIhAKqt4LAR2e2hLDAYO3eRMCvLP/uVpxt1dUlEZAClHXzJ"}]},"_npmVersion":"1.1.65","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.3":{"name":"fs-util","version":"0.3.3","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.8.x"},"devDependencies":{"coffee-script":"1.4.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.3\n\n## Compatibility\n\nIt just works.\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#watcher)\n- [FS Tools](#tools)\n\n<a name=\"watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` you wanna watch (ie. 'my/path'), `file` is not accept.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch, i.e. `/.coffee$/m`.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be \nispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n<a name=\"tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n# Installing\n\n````bash\nnpm install fs-util\n````\n\n## Resolving dependencies\n\n````bash\ncd fs-util && npm install\n````\n\n### Building\n\n````bash\nmake build\n````\n\n### Testing\n\n````bash\nmake test\n````","_id":"fs-util@0.3.3","dist":{"shasum":"5cdfbe7cfe49a48ab6766a817a725ab0ae811bbf","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.3.tgz","integrity":"sha512-b1kU29s3WaZzz/GNvatyzk1qh96+XmvyAC0cqjeEUzNFbVA3AZaiQVorVQ8jCYHH+GPFfc13KhPYlInz3YHj8A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDb7L3yavFlrnY91KBRiTSbz5TL4oc7qBxDkpUmSsRgTQIgWQcp/K4fe9f2O6qMOsEGGKQDsLKRMcTM6vEQejQ4Uqw="}]},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.4":{"name":"fs-util","version":"0.3.4","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.8.x"},"devDependencies":{"coffee-script":"1.4.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.4\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.4","dist":{"shasum":"dc378300883ba582e7026aaa7a9aada4f3bda38e","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.4.tgz","integrity":"sha512-yh04FlNmeffXu2Y3q6KiF+W3HlEPWHLFbxHr+mtX9IhX0Yyv/r0cx+T5fPu+A3DDflLlLQ8PxbM4TxUpV38o8Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDDFrbZNvG3G58GUcDX+OT4gJ746J2PYmwa3r2DXJzVAAiEA+Vp5cS6HuYgmN0Dcux8gy5cxtkpK/vjl9n1OaNvn+Ek="}]},"_npmVersion":"1.1.65","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.5":{"name":"fs-util","version":"0.3.5","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.8.x"},"devDependencies":{"coffee-script":"1.4.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.5\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.5","dist":{"shasum":"dcbe34500cc0ee02aab1a603c0938edcb37518c3","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.5.tgz","integrity":"sha512-c62b3/qSVnO740dvdc9eeKqb8qy1oaXJUFRB6oqIX1xA/Jk5LeR7UlKFamOOXH+45DfPtbPoNTg8BymO3CRkWQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD5FTvq8rDak9jGZydcau/n1cCYlnMz2cxVm9xLY/pMtgIhALcRUKZQZ4gZX2JVCJR7BpbYgqvA26gD0x3jymvbQMxx"}]},"_npmVersion":"1.1.65","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.6":{"name":"fs-util","version":"0.3.6","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.8.x"},"devDependencies":{"coffee-script":"1.4.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.6\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.6","dist":{"shasum":"76715d8b80a7c828dadd97b19e70e0c9375e4325","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.6.tgz","integrity":"sha512-q4c0TxmbD+UIc9Hl/bmvDB0NXNG7/nLRq3Fi2cGxjom0McTjVFDDczqTkiMT17G+a5uJ2XaTY57nwiY/fkVOhQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBbM/8vbjZ+AtTpAVzeLvUF9PdlgfKu8WXT2mPNL4NgDAiEAmLSf5N136fC80GhSRfjw6suCLLkOaV9DOEuPSppuHKU="}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.7":{"name":"fs-util","version":"0.3.7","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.10.x"},"devDependencies":{"coffee-script":"1.6.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.7\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.7","dist":{"shasum":"1a552327314de25956ad521809a73d968da49dcf","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.7.tgz","integrity":"sha512-DaqxD3qirCpckq4uUm4UEUnb61/AJepCznkRnANgtNIlNo+iC0gc34+H70YrNnmYa2tTQTuUZoZmxz0xY/GHFg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0O5XZSjOKezNCUTf7ToJ8RzIIX7PHCYgXRRUYKkllQQIhAPsOgbzkZOqYsp8RjlyVUsUVUXS1x12pXZFGJluY/0Si"}]},"_from":".","_npmVersion":"1.2.15","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.8":{"name":"fs-util","version":"0.3.8","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.10.x"},"devDependencies":{"coffee-script":"1.6.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.8\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.8","dist":{"shasum":"d13e6f8d15386a8e6460a07a9ad29e24fc003557","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.8.tgz","integrity":"sha512-cDhc6NbX4WQuDOfBORztyQX4ZgLRDqa2ZZuccYkfxiHQewCRHQ2Dh5b1OHmNyPEJZorxTmTBej0lKSoNXVtgUA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCB9pcYPDA5b/uTctakhvWs9mYhaAHH6vtgGPJQXIw6qQIhAI+OUlp/DYJ2Svb1lE8J8OsvCDo6nZSLga0ABTEF8fg3"}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.10":{"name":"fs-util","version":"0.3.10","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.10.x"},"devDependencies":{"coffee-script":"1.6.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.10\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.10","dist":{"shasum":"1e2c0abfe8ea804747887bbbb67f4fc877768129","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.10.tgz","integrity":"sha512-1t1dM9uPJrttEm0W+mDO/jz3iCKR0qFEOyJDyiwaO+SYNbE97yyvAoKgiJSPlDKiB2CGARmOkfCzmax0PngmBg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSCQr+i02nCZv4IhsfgPN3uViCioGGe+QdUfpTVqWqAgIgSWWdMUO8dQh289+wZAq2EnCL4TtrAwWLCaQeuKzRy9g="}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.11":{"name":"fs-util","version":"0.3.11","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":"0.10.x"},"devDependencies":{"coffee-script":"1.6.x","mocha":"1.7.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n> Version 0.3.11\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.11","dist":{"shasum":"5f2d4f45497028a7c186cd79c77b3bbe50762f2f","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.11.tgz","integrity":"sha512-BVVewjlePS3m6g1YLHOfa25SEf5hJqUZaC63N55EL/FFGb9K5gcXHp3W9MZ9A1Hi997Z79jtJsTydfFhZbqGAA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFWJwWIlfUiaNqNhxT5Wb0Okif51Z6QKbB/CdjWeJnxaAiEA6RhQHed9KEgqXZBLvEGQ0hunF9L/UB6+qsXK8BxvOBg="}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.12":{"name":"fs-util","version":"0.3.12","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test","postinstall":"coffee -j lib/fs-util.js -c src"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":">=0.8.0 <0.10.x"},"dependencies":{"coffee-script":"1.6.x","source-map-support":"0.1.x"},"devDependencies":{"mocha":"1.9.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util) [![Dependency Status](https://gemnasium.com/serpentem/fs-util.png)](https://gemnasium.com/serpentem/fs-util)\n> Version 0.3.12\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.12","dist":{"shasum":"ec4eca7450f1dbadc4bef05fa509125cc187ba79","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.12.tgz","integrity":"sha512-mLqtfq3XoNDGM5PN5eER3W5/eqsg11UOQGvoX9y5q8IYG2czPXkkeaxu2btWXBcWCI1fmzBWt0gBMdRLpcLhIA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsuAbt9hhitC5Lum0P6R6HhN7h/i83BvV2FimYyzvFfwIhAPAAjnCv3KiP19j0iEn+Aoq1lyiuRSKunfVMrWtIiIyx"}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.13":{"name":"fs-util","version":"0.3.13","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":">0.8.x <=0.10.x"},"dependencies":{"source-map-support":"0.1.x"},"devDependencies":{"coffee-script":"1.6.x","mocha":"1.9.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util) [![Dependency Status](https://gemnasium.com/serpentem/fs-util.png)](https://gemnasium.com/serpentem/fs-util)\n> Version 0.3.13\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.13","dist":{"shasum":"dc2983bcba6aef6b12a9f3e719ea02d0073fdb6c","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.13.tgz","integrity":"sha512-faeFB6IetdFqhHY/NrQ6ADlX+cgDWOXKjRrJAxHDj/gL/zNUf8Hki9pWNoEOzK9Iztczke4U0u2zm57eMG5uqQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFJXdngc7hft1p3yF8olCOzO+FKMxkEojBikGxtS6NEaAiEA0F702zNPJxDJuv1EqULNRAoDBU5nDnO4KPvRLmjafIw="}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.14":{"name":"fs-util","version":"0.3.14","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":">= 0.8"},"dependencies":{"source-map-support":"0.1.x"},"devDependencies":{"coffee-script":"1.6.x","mocha":"1.9.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util) [![Dependency Status](https://gemnasium.com/serpentem/fs-util.png)](https://gemnasium.com/serpentem/fs-util)\n> Version 0.3.14\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","_id":"fs-util@0.3.14","dist":{"shasum":"87e24ca3df0909967fb951bf5138bbc55cc807f8","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.14.tgz","integrity":"sha512-nK0G99cCu6HdvRzQALVCnmCDtN76ezMdg9RW9ETtla1i1EBqvCGHDW/du5NAKSS9ClAj09Pfcb6jvR4DeKnRhA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEHvaK6yp1I4C0wyfV+oVeGw9k3UKYp546pAVOaC79f4AiAeIZw+AYc2RUzog9dIEPI98NjxLDIn+JXtEMLLBadr/A=="}]},"_from":".","_npmVersion":"1.2.17","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.15":{"name":"fs-util","version":"0.3.15","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":">= 0.8"},"dependencies":{"source-map-support":"0.1.x"},"devDependencies":{"coffee-script":"1.6.x","mocha":"1.12.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util) [![Dependency Status](https://gemnasium.com/serpentem/fs-util.png)](https://gemnasium.com/serpentem/fs-util)\n> Version 0.3.15\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","bugs":{"url":"https://github.com/serpentem/fs-util/issues"},"_id":"fs-util@0.3.15","dist":{"shasum":"9c90a9c1fd5ed01ba308c646709a8f1d328fcb71","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.15.tgz","integrity":"sha512-nyEcTYlvsvP0GIni9BGtiXu219dx/hfGeng0gKr4vRI+rLa/yqBHFX/c6YA4qeev87sA7/iVLgAkAzjCjJZudw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMfCUihQCVbtLO+Y8FQTagOg4yybc5joGAGjKeYGoaigIgUeTc/Y65/J1UPw00ExpfDK4HzML/YDAEjaIo3NyZaYU="}]},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.16":{"name":"fs-util","version":"0.3.16","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":">= 0.8"},"dependencies":{},"devDependencies":{"coffee-script":"1.6.x","mocha":"1.12.x","should":"1.2.x"},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util) [![Dependency Status](https://gemnasium.com/serpentem/fs-util.png)](https://gemnasium.com/serpentem/fs-util)\n> Version 0.3.16\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","bugs":{"url":"https://github.com/serpentem/fs-util/issues"},"_id":"fs-util@0.3.16","dist":{"shasum":"cb4e4f25066d154960bb3768ef67a1fb9d06af65","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.16.tgz","integrity":"sha512-mhBXSGjxK22OrCH/EvE99S8NWgQbV4aRPpRgdxYS6fem9jK+K3x14kaP0dO1heegASFzkojytRBlKbfkll+5jg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICtqrXeBc/B214Q3TTMlezOoZZWAzDN4+1AUTEneoC4gAiEArPmzV2ZRgJ7iuoy6YqFzHN5062+9wvTTOMEHLi8UIMY="}]},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]},"0.3.17":{"name":"fs-util","version":"0.3.17","author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"description":"Incremental utilities for NodeJS File System API.","keywords":["fs","util"],"main":"lib/fs-util","directories":{"lib":"./lib","test":"./tests"},"scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"engines":{"node":">= 0.8"},"dependencies":{},"devDependencies":{"coffee-script":"1.6.x","mocha":"1.12.x","should":"1.2.x"},"readme":"# FsUtil\n\nIncremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util) [![Dependency Status](https://gemnasium.com/serpentem/fs-util.png)](https://gemnasium.com/serpentem/fs-util) [![NPM version](https://badge.fury.io/js/fs-util.png)](http://badge.fury.io/js/fs-util)\n\n# Compatibility\n\n* Linux\n* MacOSX\n* Windows\n\n# Documentation\n\n- [FS Watcher](#fs-watcher)\n  - [Usage](#fs-watcher-usage)\n  - [Events](#fs-watcher-events)\n  - [Example](#fs-watcher-example)\n      - [Callback](#fs-watcher-callback)\n      - [Method](#fs-watcher-method)\n- [FS Tools](#fs-tools)\n  - [Usage](#fs-tools-usage)\n\n# Setting up\n\n- [Installing](#installing)\n  - [Developing](#developing)\n  - [Building](#building)\n  - [Watching](#watching)\n  - [Testing](#testing)\n\n----\n<a name=\"fs-watcher\"/>\n# FS Watcher\n\nProvides the ability to watch an entire _*tree*_ of `dirs` and `files`.\n\n<a name=\"fs-watcher-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch [desired_path], [regex_pattern], [recursive_notifications]\n````\n\n> `desired_path`\n\nThe path to the `dir` or `file` you wanna watch.\n\n> `regex_pattern`\n\nThe regex to filter only the files you wanna watch.\n\n> `recursive_notifications`\n\nIf `true` notifications will be fired for all files. If you delete a `dir`\nthat has many `sub dirs` and `files`, an `unwatch` and `delete` events will be\ndispatched for all the children `dirs` and `files` as well.\n\nIf `false`, only one event will be dispatched for the `dir` that was actually\ndeleted. It can save you an overhead of events popping up when a `dir` with\nbig ammount of `subdirs` and `files` is deleted.\n\n<a name=\"fs-watcher-events\"/>\n## Events\n * watch\n * unwatch\n * create\n * change\n * delete\n\n<a name=\"fs-watcher-example\"/>\n## Example\n\nBellow is a very basic usage example that can be found in the\n[examples](https://github.com/serpentem/fs-util/tree/master/examples) folder.\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m, true\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n\nwatcher.close()\n````\n\n<a name=\"fs-watcher-callback\"/>\n### Callback's argument\n\nAll callbacks receives only *one* argument which is the related `[f]ile` to\nthe event.\n\nIt has the following properties:\n\n> [f].location\n\nFullpath `location` of the item.\n\n>  [f].type\n\nItem `type`, can be `dir` or `file`.\n\n>  [f].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n>  [f].tree\n\nThe complete `tree` of subitems (`files` and `dirs`) under that point.\n\n* _Applies only when `f.type` is `dir`_\n\n<a name=\"fs-watcher-method\"/>\n### Watcher's method\n\nBesides all the Event Emiter inherited methods, the `watcher` class has one more:\n\n> [watcher].close()\n\nWhen called, this method will forcely close all persistent watcher's process and\nremoves all previously added listeners. Every file and folder is `unwatched`,\nevents will pop normally for them, and after that the instance becomes useless.\n\n----\n<a name=\"fs-tools\"/>\n# FS Tools\n\nProvides functionalities such as `rm_rf`, `cp_r`, `mkdir_p`, `find` and `ls`.\n\n<a name=\"fs-tools-usage\"/>\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nfsu.mkdirp [dir_path]\nfsu.touch [file_path], [encoding='utf-8']\nfsu.copy [from_path], [to_path]\nfsu.find [path], [regex_pattern], [include_dirs]\nfsu.ls [path]\nfsu.rm_rm [path]\n````\n\n> `*path`\n\nAbsolute or relative `paths` are accepted, you take care of your things.\n\n> `encoding`\n\nThe `file` encoding when `touching` it.\n\n> `regex_pattern`\n\nYour search pattern, i.e. `/.coffee$/m`.\n\n> `include_dirs`\n\nWhen `true` will include the `dirs` in the search, otherwise only `files`.\n\n----\n<a name=\"installing\"/>\n# Installing\n\nRemembers that you need to install fs-util locally in order to use it as a LIB.\nYou will need to `require 'fs-util` in you script, there's no reason to install\nit globally with `-g`, `fs-util` won't work directly in the command line.\n\nAt least for now.\n\n````bash\nnpm install fs-util\n````\n\n<a name=\"developing\"/>\n## Developing\n\nIn order to contribute you will need to `fork`, `clone` and initialize the env.\n\n````bash\ngit clone git@github.com:[username]/fs-util\ncd fs-util && npm install\n````\n\n<a name=\"building\"/>\n### Building\n\nBuild the `src/*.coffee` files to `lib/*.js`.\n\n````bash\nmake build\n````\n\n<a name=\"watching\"/>\n### Watching\n\nContinuously building in `watch` mode.\n\n````bash\nmake watch\n````\n\n<a name=\"testing\"/>\n### Testing\n\nRunning tests suite.\n\n````bash\nmake test\n````","readmeFilename":"README.md","bugs":{"url":"https://github.com/serpentem/fs-util/issues"},"_id":"fs-util@0.3.17","dist":{"shasum":"bde8cdd16d4ff7d0852daa9e17f10e9ac36a4eab","tarball":"https://registry.npmjs.org/fs-util/-/fs-util-0.3.17.tgz","integrity":"sha512-wr7o11gNl5X7PvxgRuBEtlUpayJIqsHfQ3WA9ro+CuHkFJf9DiCaKYq8rafTkxz+0Za7kcFq5Gokc4QGuoVUJg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC/SAoTB19+P/TJxp5FsoA+tlG4sDxwd1Zz66jSuA/XIAiAhCNuOS1oyhbhvldW3NwFYLzZuEEiLFfZC14JRBi38qA=="}]},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"arboleya","email":"anderson@arboleya.me"},"maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}]}},"readme":"Incremental utilities for NodeJS File System API.\n\n[![Build Status](https://secure.travis-ci.org/serpentem/fs-util.png)](http://travis-ci.org/serpentem/fs-util)\n\n# FS Tree Watcher\n\nProvides the ability to watch an entire _*tree*_ of `folders` and `files`.\n\n* Events:\n * watch\n * unwatch\n * create\n * change\n * delete\n\n\n## Usage\n\n````coffeescript\nfsu = require 'fs-util'\nwatcher = fsu.watch 'desired/path', /.coffee$/m\nwatcher.on 'watch', (f)-> console.log 'WATCHED ' + [f.type, f.location]\nwatcher.on 'unwatch', (f)-> console.log 'UNWATCHED ' + [f.type, f.location]\nwatcher.on 'create', (f)-> console.log 'CREATED ' + [f.type, f.location]\nwatcher.on 'change', (f)-> console.log 'CHANGED ' + [f.type, f.location]\nwatcher.on 'delete', (f)-> console.log 'DELETED ' + [f.type, f.location]\n````\n\n### Arguments\n\nAll callbacks receives one argument which is the related `item` to the event.\n\nIt has the following properties:\n\n#### [item].location\n\nFullpath `location` of the item.\n\n##### [item].type\n\nItem `type`, can be `dir` or `file`.\n\n##### [item].prev\n\nLast stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n##### [item].curr\n\nCurrent stat of the file, it's an instance of [fs.Stats](http://nodejs.org/api/fs.html#fs_class_fs_stats).\n\n##### [item].tree\n\nThe complete `tree` of subitems (`files` and `folders`) under that point.\n\n* _Applies only when `item.type` is `folder`_\n\n# Installing\n\n````bash\nnpm install fs-util\n````\n\n## Developing\n\n````bash\ncd fs-util && npm install\n````\n\n### Building\n\n````bash\nmake build\n````\n\n### Testing\n\n````bash\nmake test\n````\n\n# TODO\n\nList of **TODO** features besides the current `[FS Tree Watcher].watch`:\n\n* `mkdir [-p]`\n* `rm [-r] [-f]`\n* `search`\n* `cp [-r]`\n* `mv`\n\n**Note**: _There are also some tests to be finished and tested across different\nplatforms, such as Osx, Linux and Windows._","maintainers":[{"name":"arboleya","email":"anderson@arboleya.me"}],"time":{"modified":"2022-06-18T03:56:12.921Z","created":"2012-12-03T02:51:59.398Z","0.1.0":"2012-12-03T02:52:01.787Z","0.2.0":"2012-12-08T15:18:27.761Z","0.3.0":"2012-12-08T19:06:11.776Z","0.3.1":"2012-12-09T02:00:49.022Z","0.3.2":"2012-12-09T21:23:14.993Z","0.3.3":"2012-12-10T14:08:44.444Z","0.3.4":"2012-12-15T19:48:27.781Z","0.3.5":"2013-01-20T06:20:08.402Z","0.3.6":"2013-02-11T21:04:35.087Z","0.3.7":"2013-03-25T21:10:41.734Z","0.3.8":"2013-04-02T21:52:16.149Z","0.3.10":"2013-04-11T01:44:51.082Z","0.3.11":"2013-04-12T23:42:22.885Z","0.3.12":"2013-04-23T11:55:04.572Z","0.3.13":"2013-04-26T12:00:46.043Z","0.3.14":"2013-05-08T18:17:38.509Z","0.3.15":"2013-07-19T18:44:00.260Z","0.3.16":"2013-07-23T19:26:34.182Z","0.3.17":"2013-10-18T14:23:22.532Z"},"author":{"name":"Anderson Arboleya","email":"anderson@arboleya.me"},"repository":{"type":"git","url":"git://github.com/serpentem/fs-util"},"users":{"morogasper":true}}