Package Exports
- onchange-mini
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (onchange-mini) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
onchange-mini
run a command on file(s) change, the minimalist way
Motivation
It happened repetively that onchange didn't work for me, for reasons I couldn't track down. So, out of frustration, I wrote a minimalist implementation that would just do the thing I needed: watching a few files and running a script when they change. And it worked! So I wrapped it into this module, mostly for my own use, but maybe you will find it useful too.
Installation
To make it accessible to scripts in a project (learn more):
npm install --save-dev onchange-miniOr to make it accessible globally:
npm install -g onchange-miniHow-to
Watch file(s) changes
onchange-mini ./a/file/to/watch ./another/file -- echo 'the wind of CHAaaAAAaaaNGE ♪ ♫'
# works great with npm scripts
onchange-mini ./a/file/to/watch ./another/file -- npm run build'Watch directories
onchange-mini ./a/folder/to/watch ./another/folder -- the command to execute⚠️ 1️⃣ this will only trigger an event when a file is created, renamed, or removed, not when the files themselves change.
⚠️ 2️⃣ this isn't watching recursively: any file change in subfolders won't be detected
You can work around ⚠️ 1️⃣ by watching both the directory and its files like so
onchange-mini ./a/folder/to/watch ./a/folder/to/watch/* -- the command to executebut beware that it needs to be restarted to watch new files
Debug
export DEBUG=true; onchange-mini ./a/file/to/watch -- the command to executeFor any other feature
Option 1: use onchange if it works for you
Option 2:
- open
./index.js - hack your way
- minimalist PR welcome