linemanjs / lineman

Lineman helps you build fat-client JavaScript apps. It produces happiness by building assets, mocking servers, running specs on every file change
MIT License
1.18k stars 83 forks source link

webfonts can only copy the whole directory, not files to a destination #328

Closed peterbe closed 9 years ago

peterbe commented 9 years ago

What I'd like is to be able do this:

webfonts: {
    vendor: "vendor/bootstrap/fonts/*.*",
    root: "fonts"
}

And then expect to see generated/fonts/*.svg etc.

Instead, what I get is generated/fonts/vendor/bootstrap/fonts/*.svg.

davemo commented 9 years ago

Hi @peterbe, I believe you can achieve this by adding grunt-contrib-copy, putting its task configuration in linemans config/application.coffee and utilizing the flatten: true option in the task config; more info here: https://github.com/gruntjs/grunt-contrib-copy#usage-examples

searls commented 9 years ago

FWIW the app already contains grunt-contrib-copy. You could just change the app/static rules or add a new task definition. See "lineman config copy"

On Fri, Oct 10, 2014 at 7:25 PM, Peter Bengtsson notifications@github.com wrote:

What I'd like is to be able do this:

webfonts: {
    vendor: "vendor/bootstrap/fonts/*.*",
    root: "fonts"
}

And then expect to see generated/fonts/*.svg etc.

Instead, what I get is generated/fonts/vendor/bootstrap/fonts/*.svg.

Reply to this email directly or view it on GitHub: https://github.com/linemanjs/lineman/issues/328

davemo commented 9 years ago

Right, thanks @searls :)

peterbe commented 9 years ago

Got it working. https://github.com/mozilla/balrog-ui/commit/bc4fd9fdd4c3510368f02e1f8cb34b58bcbcd991 I used lineman config copy (thanks for that command) and added that (plus the key copy:) to the application.js and added a third element to the two arrays.

I guess the issue here is that this was a little bit harder than need be. I'm still a grunt newbee but I think we could possibly win here by making an example here. Or at least making a mention/story about how you can use lineman config <something> to get a merged view of all inherited and actual config.