Observe files for changes and run tasks
If you haven't used grunt before, be sure to check out the Getting Started guide, as it explains how to create a gruntfile as well as install and use grunt plugins. Once you're familiar with that process, install this plugin with this command:
npm install grunt-regarde --save-dev
Add a regarde
section in your Gruntfile.js
to list the files to observe as well as the task to fire when one of these files change.
Type: String|Array
This lists patterns describing files to observe.
Type: String|Array
Defines the tasks to run when an observed file change. Note that this is optional (in case it is missing, an implicit events: true
will be inserted in the configuration)
Tasks called (if they are not spawned), can access to the list of changed file through the array grunt.regarde.changed
.
Type: boolean
Default: false
Whether or not the tasks will be launched in a spawned subprocess. Note that in this case, the spawned task has no information on which file changed.
grunt-regarde
will emit an event each time a file is changed, added or deleted.
The following events will be emitted:
-
regarde:file:changed
,regarde:file:added
,regarde:file:deleted
with name of the section config, file path, tasks and whether or not the tasks will be spawn, as parameters. -
regarde:file
with status (changed
,added
,deleted
), name of the section config, file path, tasks and whether or not the tasks will be spawn, as parameters. -
regarde:<name>:file
, where<name>
is the name of the task target (i.e.css
orjs
in the below example), with status (changed
,added
,deleted
), file path, tasks and whether or not the tasks will be spawned, as parameters. -
regarde:<name>:file:changed
,regarde:<name>:file:added
,regarde:<name>:file:deleted
where<name>
is the name of the task target (i.e.css
orjs
in the below example), with status (changed
,added
,deleted
), file path, tasks and whether or not the tasks will be spawn, as parameters.
grunt.initConfig({
regarde: {
js: {
files: '**/*.js',
tasks: ['jshint'],
spawn: true
},
css: {
files: '**/*.scss',
events: true
}
}
});
BSD license and copyright Google