class Nanoc::Filters::Sass
@api private
Public Class Methods
item_filename_map_for_site(site, items)
click to toggle source
# File lib/nanoc/filters/sass.rb, line 21 def self.item_filename_map_for_site(site, items) @item_filename_map ||= {} @item_filename_map[site] ||= {}.tap do |map| items.each do |item| if item.raw_filename path = Pathname.new(item.raw_filename).realpath.to_s map[path] = item end end end end
Public Instance Methods
imported_filename_to_item(filename)
click to toggle source
# File lib/nanoc/filters/sass.rb, line 34 def imported_filename_to_item(filename) realpath = Pathname.new(filename).realpath.to_s map = self.class.item_filename_map_for_site(@site, @items) map[realpath] end
run(content, params = {})
click to toggle source
Runs the content through [Sass](sass-lang.com/). Parameters passed to this filter will be passed on to Sass.
@param [String] content The content to filter
@return [String] The filtered content
# File lib/nanoc/filters/sass.rb, line 12 def run(content, params = {}) options = params.merge( nanoc_current_filter: self, filename: @item && @item.raw_filename, ) engine = ::Sass::Engine.new(content, options) engine.render end