Sha256: 3a62c79c86c4b65075a01fd8c636652dd2ede3d92ba0b8aa8622541c97f3b847

Contents?: true

Size: 1.18 KB

Versions: 1

Compression:

Stored size: 1.18 KB

Contents

require 'awestruct/handlers/base_tilt_handler'
require 'awestruct/handlers/file_handler'
require 'awestruct/handlers/front_matter_handler'
require 'awestruct/handlers/layout_handler'

module Awestruct
  module Handlers
    class CssTiltHandler < BaseTiltHandler

      CHAIN = Awestruct::HandlerChain.new(/\.(sass|scss|less)$/,
        Awestruct::Handlers::FileHandler,
        Awestruct::Handlers::CssTiltHandler
      )

      def initialize(site, delegate)
        super( site, delegate )
      end

      ##
      # Sass Engine requires dynamically generated options.
      ##
      def options
        opts = super

        # Sass / Scss
        opts[:load_paths] ||= []

        if require('compass') || defined?(::Compass)
          ::Compass::Frameworks::ALL.each do |framework|
            opts[:load_paths] << framework.stylesheets_directory
          end
          opts[:load_paths] << ::Compass::SpriteImporter.new
        end
        opts[:load_paths] << File.join(site.config.dir.to_s, File.dirname(relative_source_path) ) unless relative_source_path.nil?

        # Less use Paths instead of load_paths
        opts[:paths] = opts[:load_paths]

        return opts
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
awestruct-0.5.7.RC1 lib/awestruct/handlers/css_tilt_handler.rb