Sha256: e197efe109a6d5ad50b5e34b1c220824cf5ae4247108cbb42df9f34a6a20e382

Contents?: true

Size: 1.14 KB

Versions: 17

Compression:

Stored size: 1.14 KB

Contents

# ===========================================================================
# Project:   Abbot - SproutCore Build Tools
# Copyright: ©2009 Apple Inc.
#            portions copyright @2006-2011 Strobe Inc.
#            and contributors
# ===========================================================================

require "sproutcore/builders/stylesheet"
require 'fileutils'

module SC

  # This build can compile a Less stylesheet.
  class Builder::Less < Builder::Stylesheet

    def build(dst_path)
      begin
        require 'less'
      rescue
        raise "Cannot compile #{entry.source_path} because less is not installed.  Please try 'sudo gem install less' and try again"
      end

      begin
        content = read(entry.source_path)
        css = ::Less::Engine.new(content).to_css
        lines = []
        css.each_line { |l| lines << rewrite_inline_code(l) }
        writelines dst_path, lines
      rescue Exception => e

        # explain sass syntax error a bit more...
        if e.is_a? Less::SyntaxError
          e.message << " of #{@entry.source_path}"
        end
        raise e # reraise
      end # rescue
    end # def

  end

end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
sproutcore-1.11.0 lib/sproutcore/builders/less.rb
sproutcore-1.11.0.rc3 lib/sproutcore/builders/less.rb
sproutcore-1.11.0.rc2 lib/sproutcore/builders/less.rb
sproutcore-1.11.0.rc1 lib/sproutcore/builders/less.rb
sproutcore-1.10.3.1 lib/sproutcore/builders/less.rb
sproutcore-1.10.2 lib/sproutcore/builders/less.rb
sproutcore-1.10.1 lib/sproutcore/builders/less.rb
sproutcore-1.10.0 lib/sproutcore/builders/less.rb
sproutcore-1.10.0.rc.3 lib/sproutcore/builders/less.rb
sproutcore-1.10.0.rc.2 lib/sproutcore/builders/less.rb
sproutcore-1.10.0.rc.1 lib/sproutcore/builders/less.rb
sproutcore-1.9.2 lib/sproutcore/builders/less.rb
sproutcore-1.9.1 lib/sproutcore/builders/less.rb
sproutcore-1.9.0 lib/sproutcore/builders/less.rb
sproutcore-1.8.2.1 lib/sproutcore/builders/less.rb
sproutcore-1.8.1 lib/sproutcore/builders/less.rb
sproutcore-1.8.0 lib/sproutcore/builders/less.rb