Sha256: 60bc1d2aa499d533ec882702d7b0041c958a58a2791b023d5a963532a79ddd3f

Contents?: true

Size: 849 Bytes

Versions: 3

Compression:

Stored size: 849 Bytes

Contents

# ERb renderer
module Middleman
  module Renderers
    module ERb
      # Setup extension
      class << self

        # once registered
        def registered(app)
          app.before_configuration do
            template_extensions :erb => :html
          end

          # After config
          app.after_configuration do
            ::Tilt.prefer(Template, :erb)
          end
        end
        alias :included :registered
      end

      class Template < ::Tilt::ErubisTemplate
        ##
        # In preamble we need a flag `__in_erb_template` and SafeBuffer for padrino apps.
        #
        def precompiled_preamble(locals)
          original = super
          "__in_erb_template = true\n" << original
          #.rpartition("\n").first << "#{@outvar} = _buf = ActiveSupport::SafeBuffer.new\n"
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
middleman-core-3.3.2 lib/middleman-core/renderers/erb.rb
middleman-core-3.3.1 lib/middleman-core/renderers/erb.rb
middleman-core-3.3.0 lib/middleman-core/renderers/erb.rb