Class: Middleman::Renderers::Sass::SassPlusCSSFilenameTemplate
- Inherits:
-
Tilt::SassTemplate
- Object
- Tilt::SassTemplate
- Middleman::Renderers::Sass::SassPlusCSSFilenameTemplate
- Defined in:
- lib/middleman-core/renderers/sass.rb
Overview
A SassTemplate for Tilt which outputs debug messages
Direct Known Subclasses
Instance Method Summary collapse
-
#evaluate(context, locals, &block) ⇒ String
Add exception messaging.
-
#initialize(*args, &block) ⇒ SassPlusCSSFilenameTemplate
constructor
A new instance of SassPlusCSSFilenameTemplate.
- #prepare ⇒ Object
-
#sass_options ⇒ Hash
Change Sass path, for url functions, to the build folder if we’re building.
-
#syntax ⇒ Symbol
Define the expected syntax for the template.
Constructor Details
#initialize(*args, &block) ⇒ SassPlusCSSFilenameTemplate
Returns a new instance of SassPlusCSSFilenameTemplate.
42 43 44 45 46 47 48 |
# File 'lib/middleman-core/renderers/sass.rb', line 42 def initialize(*args, &block) super if @options.has_key?(:context) @context = @options[:context] end end |
Instance Method Details
#evaluate(context, locals, &block) ⇒ String
Add exception messaging
62 63 64 65 66 67 68 69 70 71 |
# File 'lib/middleman-core/renderers/sass.rb', line 62 def evaluate(context, locals, &block) @context ||= context @engine = ::Sass::Engine.new(data, ) begin @engine.render rescue ::Sass::SyntaxError => e ::Sass::SyntaxError.exception_to_css(e, :full_exception => true) end end |
#prepare ⇒ Object
56 |
# File 'lib/middleman-core/renderers/sass.rb', line 56 def prepare; end |
#sass_options ⇒ Hash
Change Sass path, for url functions, to the build folder if we’re building
75 76 77 78 79 80 81 82 83 84 85 86 87 |
# File 'lib/middleman-core/renderers/sass.rb', line 75 def more_opts = { :filename => eval_file, :line => line, :syntax => syntax } if @context.is_a?(::Middleman::Application) && file location_of_sass_file = File.(@context.source, @context.root) parts = basename.split('.') parts.pop more_opts[:css_filename] = File.join(location_of_sass_file, @context.css_dir, parts.join(".")) end .merge(more_opts) end |
#syntax ⇒ Symbol
Define the expected syntax for the template
52 53 54 |
# File 'lib/middleman-core/renderers/sass.rb', line 52 def syntax :sass end |