class Assette::Reader::Less

Constants

LESSC

Private Class Methods

tag(path) click to toggle source
# File lib/assette/readers/less.rb, line 41
    def tag path
      tag = <<-HTML
        <link href="#{path}" rel="stylesheet/less" type="text/css"  media="all" />
      HTML

      tag << %Q{<script src="#{Assette.config.less_js_path}?nodep" type="text/javascript"></script>} if Assette.config.less_js_path
    end

Public Instance Methods

compile(args={}) click to toggle source
# File lib/assette/readers/less.rb, line 13
def compile args={}

  if LESSC
    Assette.logger.info("less running") {"cd #{@file.dirname} && lessc < #{@file.filename}"}
    `cd #{@file.dirname} && lessc #{@file.filename}`
  elsif defined?(Less)
    parser = Less::Parser.new({
      :paths => [File.expand_path(@file.dirname)]|Assette.config.file_paths,
      :filename => @file.filename
    })

    tree = parser.parse(text)

    tree.to_css(options.merge(args))
  else
    warn("cannot compile because no less interpreter installed #{@file.path}")

    text
  end
end

Private Instance Methods

options() click to toggle source
# File lib/assette/readers/less.rb, line 36
def options
  Assette.config.less
end