Sha256: 8046aaa0aebf8ddc0cd73e47181d55ddb89e0170e23976e4f8e4e8d6a4d1a5e0

Contents?: true

Size: 1.56 KB

Versions: 6

Compression:

Stored size: 1.56 KB

Contents

module Less  
  module Rails
    class Railtie < ::Rails::Railtie
      
      module LessContext
        attr_accessor :less_config
      end
      
      config.less = ActiveSupport::OrderedOptions.new
      config.less.paths = []
      config.less.compress = false
      config.app_generators.stylesheet_engine :less
      
      config.before_initialize do |app|
        require 'less'
        require 'less-rails'
        Sprockets::Engines #force autoloading
        Sprockets.register_engine '.less', Less::Rails::LessTemplate
      end
      
      initializer 'less-rails.before.load_config_initializers', :before => :load_config_initializers, :group => :all do |app|
        raise 'The less-rails plugin requires the asset pipeline to be enabled.' unless app.config.assets.enabled
        app.assets.register_preprocessor 'text/css', ImportProcessor
      end
      
      initializer 'less-rails.after.load_config_initializers', :after => :load_config_initializers, :group => :all do |app|
        app.assets.context_class.extend(LessContext)
        app.assets.context_class.less_config = app.config.less
      end
      
      initializer 'less-rails.after.append_assets_path', :after => :append_assets_path, :group => :all do |app|
        assets_stylesheet_paths = app.config.assets.paths.select { |p| p.ends_with?('stylesheets') }
        app.config.less.paths.unshift(*assets_stylesheet_paths)
      end
      
      initializer 'less-rails.setup_compression', :group => :all do |app|
        config.less.compress = app.config.assets.compress
      end
      
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
less-rails-2.1.6 lib/less/rails/railtie.rb
less-rails-2.1.5 lib/less/rails/railtie.rb
less-rails-2.1.4 lib/less/rails/railtie.rb
less-rails-2.1.3 lib/less/rails/railtie.rb
less-rails-2.1.2 lib/less/rails/railtie.rb
less-rails-2.1.1 lib/less/rails/railtie.rb