From eb9af20b7cc0e374277cf330bdd404f9daab28ec Mon Sep 17 00:00:00 2001 From: Yehuda Katz Date: Thu, 22 Jan 2009 16:18:10 -0600 Subject: Begin unifying the interface between ActionController and ActionView --- .../lib/action_view/template/handlers/erb.rb | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 actionpack/lib/action_view/template/handlers/erb.rb (limited to 'actionpack/lib/action_view/template/handlers/erb.rb') diff --git a/actionpack/lib/action_view/template/handlers/erb.rb b/actionpack/lib/action_view/template/handlers/erb.rb new file mode 100644 index 0000000000..e3120ba267 --- /dev/null +++ b/actionpack/lib/action_view/template/handlers/erb.rb @@ -0,0 +1,22 @@ +module ActionView + module TemplateHandlers + class ERB < TemplateHandler + include Compilable + + ## + # :singleton-method: + # Specify trim mode for the ERB compiler. Defaults to '-'. + # See ERb documentation for suitable values. + cattr_accessor :erb_trim_mode + self.erb_trim_mode = '-' + + def compile(template) + src = ::ERB.new("<% __in_erb_template=true %>#{template.source}", nil, erb_trim_mode, '@output_buffer').src + + # Ruby 1.9 prepends an encoding to the source. However this is + # useless because you can only set an encoding on the first line + RUBY_VERSION >= '1.9' ? src.sub(/\A#coding:.*\n/, '') : src + end + end + end +end -- cgit v1.2.3 From b1f078bddfecd40cce47b7db738620f2df2219c9 Mon Sep 17 00:00:00 2001 From: Yehuda Katz Date: Tue, 24 Feb 2009 17:25:21 -0800 Subject: First, very early, AbstractController code. More to come --- actionpack/lib/action_view/template/handlers/erb.rb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'actionpack/lib/action_view/template/handlers/erb.rb') diff --git a/actionpack/lib/action_view/template/handlers/erb.rb b/actionpack/lib/action_view/template/handlers/erb.rb index e3120ba267..a20b1b0cd3 100644 --- a/actionpack/lib/action_view/template/handlers/erb.rb +++ b/actionpack/lib/action_view/template/handlers/erb.rb @@ -1,3 +1,5 @@ +require 'erb' + module ActionView module TemplateHandlers class ERB < TemplateHandler -- cgit v1.2.3