Parent

Methods

Included Modules

Class/Module Index [+]

Quicksearch

Webgen::ContentProcessor::Less

Generates valid CSS from CSS-like input, supporting variables, nesting and mixins.

Public Instance Methods

call(context) click to toggle source

Convert the content in context to valid CSS.

# File lib/webgen/contentprocessor/less.rb, line 10
def call(context)
  require 'less'
  context.content = ::Less.parse(context.content)
  context
rescue LoadError
  raise Webgen::LoadError.new('less', self.class.name, context.dest_node, 'less')
rescue ::Less::SyntaxError => e
  line = e.message.scan(/on line (\d+):/).first.first.to_i rescue nil
  raise Webgen::RenderError.new(e, self.class.name, context.dest_node, context.ref_node, line)
rescue ::Less::MixedUnitsError => e
  raise Webgen::RenderError.new("Can't mix different units together: #{e}",
                                self.class.name, context.dest_node, context.ref_node)
rescue ::Less::VariableNameError => e
  raise Webgen::RenderError.new("Variable name is undefined: #{e}",
                                self.class.name, context.dest_node, context.ref_node)
rescue ::Less::MixinNameError => e
  raise Webgen::RenderError.new("Mixin name is undefined: #{e}",
                                self.class.name, context.dest_node, context.ref_node)
rescue ::Less::ImportError => e
  raise Webgen::RenderError.new(e, self.class.name, context.dest_node, context.ref_node)
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.