Sha256: bed876a600ae44e90be94eaeaa030d165ee5b355c101981a3f274e714ce315e5

Contents?: true

Size: 1.07 KB

Versions: 2

Compression:

Stored size: 1.07 KB

Contents

require "less"

module Middleman
  module Renderers
    
    # Sass renderer
    module Less
  
      # Setup extension
      class << self
    
        # Once registered
        def registered(app)
          # Default sass options
          app.set :less, {}
      
          app.before_configuration do
            template_extensions :less => :css
          end

          # Tell Tilt to use it as well (for inline sass blocks)
          ::Tilt.register 'less', LocalLoadingLessTemplate
          ::Tilt.prefer(LocalLoadingLessTemplate)
        end
    
        alias :included :registered
      end
  
      # A SassTemplate for Tilt which outputs debug messages
      class LocalLoadingLessTemplate < ::Tilt::LessTemplate
  
        def prepare
          if ::Less.const_defined? :Engine
            @engine = ::Less::Engine.new(data)
          else
            parser  = ::Less::Parser.new(options.merge :filename => eval_file, :line => line, :paths => [".", File.dirname(eval_file)])
            @engine = parser.parse(data)
          end
        end
        
      end
  
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
middleman-core-3.0.0 lib/middleman-core/renderers/less.rb
middleman-core-3.0.0.rc.4 lib/middleman-core/renderers/less.rb