grunt-config-dir
v0.3.2
Published
Split a grunt configuration into multiple files
Downloads
1,297
Readme
grunt-config-dir
Split a grunt configuration into multiple files
Getting Started
This plugin requires Grunt ~0.4.1
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, you may install this plugin with this command:
npm install grunt-config-dir --save-dev
Overview
Somewhere in your project's Gruntfile, initialize grunt-config-dir
like this:
require('grunt-config-dir')(grunt, {
configDir: require('path').resolve('grunt'),
fileExtensions: ['js', 'coffee'],
verbose: false
}, function(err){ grunt.log.error(err) });
Then create your configDir
and move as many properties as you wish from grunt.config
into files beneath it. Filenames with truncated
extensions are used as the property keys. Your property files should export a function expecting the grunt
object as a parameter,
which returns the property value.
Options
options.configDir
Type: String
Default value: path.resolve('grunt')
A directory relative to the Gruntfile
to contain your grunt.config property files.
options.fileExtensions
Type: Array
Default value: ['js', 'coffee']
Valid file extensions to import properties from within configDir
.
options.verbose
Type: Boolean
Default value: false
Clutters your log output with details about which files were loaded.
Usage Example
Gruntfile.js
require('grunt-config-dir')(grunt);
grunt.initConfig({
// copy config has been moved to `grunt/copy.js`
/*
copy: {
main: {
files: [
{ expand: true, src: ['path/*'], dest: 'dest/', filter: 'isFile' }
]
}
}
*/
});
// grunt.loadNpmTasks('grunt-contrib-copy');
grunt/copy.js
module.exports = function(grunt) {
grunt.loadNpmTasks('grunt-contrib-copy');
return {
main: {
files: [
{ expand: true, src: ['path/*'], dest: 'dest/', filter: 'isFile' }
]
}
};
};
Contributing
Fork the repository on Github
Fetch a local clone
Install the dependencies
$ npm install
Run the test suite
$ grunt
Make your changes, and then open a pull request
Thanks!
Release History
0.1.0 - First release