Excluding files from assets:precompile in rails

asset-pipeline, less, precompile, ruby-on-rails-3, ruby-on-rails-3.2

Solution

From the Asset Pipeline guide:

The default matcher for compiling files includes application.js, application.css and all non-JS/CSS files (i.e., .coffee and .scss files are not automatically included as they compile to JS/CSS):

[ Proc.new{ |path| !File.extname(path).in?(['.js', '.css']) }, /application.(css|js)$/ ]

If you have other manifests or individual stylesheets and JavaScript files to include, you can add them to the precompile array:

config.assets.precompile += ['admin.js', 'admin.css', 'swfObject.js']

So, I would say that your solution is to modify `config.assets.precompile` to exclude `.less` files. Maybe something like this (in a suitable environment file, like `config/environments/production.rb`):

config.assets.precompile = [ Proc.new{ |path| !File.extname(path).in?(['.js', '.css', '.less']) }, /application.(css|js)$/ ]

Problem

I use codekit for writing less which it then converts to css automatically. I don't want rails to convert my less files to css, I rather codekit do it. if I precompile the assets via ``` rake assets:precompile ``` I get ``` rake aborted! cannot load such file -- less ``` How do I exclude a specific folder/file types from precompiling? (all my less files are in app/assets/stylesheets/less and the css (which I do want to be precompiled) are in app/assets/stylesheets/css update deleting `application.less` solves this but how do I excluding it from processing in the first place?

Original source