middleman/middleman-core/lib/middleman-core/renderers/slim.rb

45 lines
1 KiB
Ruby
Raw Normal View History

# Load gem
require "slim"
module Middleman
module Renderers
# Slim renderer
module Slim
# Setup extension
class << self
# Once registered
def registered(app)
app.before_configuration do
template_extensions :slim => :html
end
# Setup Slim options to work with partials
::Slim::Engine.set_default_options(
:buffer => '@_out_buf',
2013-04-23 07:07:35 +02:00
:use_html_safe => true,
:generator => ::Temple::Generators::RailsOutputBuffer,
:disable_escape => true
)
app.after_configuration do
context_hack = {
:context => self
}
2013-04-14 18:24:48 +02:00
slim_embedded = defined?(::Slim::Embedded) ? ::Slim::Embedded : ::Slim::EmbeddedEngine
%w(sass scss markdown).each do |engine|
2013-04-14 18:24:48 +02:00
slim_embedded.default_options[engine.to_sym] = context_hack
end
end
end
alias :included :registered
end
end
end
end