I am struggling with the grunt-assemble grunt task configuration which looks like this:
assemble: {
options: {
f
Did you try using the expanded files
object for grunt targets with the cwd
property?
assemble: {
options: {
flatten: false,
expand: true,
assets: '',
layout: 'default.hbs',
layoutdir: 'templates/layouts',
partials: ['templates/includes/*.hbs'],
helpers: ['templates/helpers/*.js'],
data: ['templates/data/*.{json,yml}']
},
dev: {
files: [
{ cwd: 'templates/pages/', src: '**/*.hbs', dest: 'build/' }
]
}
}
grunt-assemble
(Note that this information refers specifically to grunt-assemble 0.4.x, which is the grunt plugin for assemble but has a completely different API)
@doowb almost has it right, try adding expand: true
and ext: '.html'
to the files config:
assemble: {
options: {
flatten: false,
expand: true,
assets: '',
layout: 'default.hbs',
layoutdir: 'templates/layouts',
partials: ['templates/includes/*.hbs'],
helpers: ['templates/helpers/*.js'],
data: ['templates/data/*.{json,yml}']
},
dev: {
files: [
{expand: true, cwd: 'templates/pages/', src: '**/*.hbs', dest: 'build/', ext: '.html'}
]
}
}
Also take a look at https://github.com/assemble/assemble-contrib-permalinks
assemble 0.7.x
Collections are first-class in assemble 0.7.0, as are plugins, so things like generating relative links, building pagination, and creating custom permalinks are much easier to do.
If you're using assemble 0.7.x and up, assemble-permalinks is the plugin you'd want to use.