Creating grunt tasks for compiling coffeescript files recursively inside directories and subdirectories
coffeescript, grunt-contrib-coffee, gruntjs
Solution
The pattern `*.coffee` will only match files that end with `.coffee` in the `cwd` folder. The pattern `**/*.coffee` will match all files that end with `.coffee` recursively in all sub folders of `cwd` and the `cwd` itself.
Try the following config:
glob_to_multiple: {
expand: true,
flatten: true,
cwd: 'path/to',
src: ['**/*.coffee'],
dest: 'path/to/dest/',
ext: '.js'
},
Also remove `flatten: true` if you want it to recreate the folder structure in `path/to/dest/` instead of compiling all files to the single folder.
Problem
I am trying to create a grunt task to compile coffeescript code spread across multiple files to .js files of the same name. I have the grunt coffeescript plugin and I am looking to use the "glob_to_multiple" spec that is given on this page: https://www.npmjs.org/package/grunt-contrib-coffee. ``` glob_to_multiple: { expand: true, flatten: true, cwd: 'path/to', src: ['*.coffee'], dest: 'path/to/dest/', ext: '.js' }, ``` However, this grunt task does not compile .coffee files to .js files of corresponding names - for all .coffee files in a directory and its sub directories. I've been tweaking this config, for a while but I can't get it to do this. Please help.