K
kwatch
I have released Erubis 1.1.0.
http://rubyforge.org/projects/erubis/
Erubis is an implementation of eRuby.
It has the following features:
* Auto sanitizing support
* Embedded pattern changeable (default '<% %>')
* Auto trimming spaces around '<% %>'
* Context object available
* Print statement available
* Faster mode support
* Easy to expand in subclass
Erubis is implemented in pure Ruby. It requires Ruby 1.8 or higher.
Sample code (example.rb):
--------------------
## eRuby script
## ('<%= %>' is escaped and '<%== %>' is not escaped when XmlEruby)
input = <<END
<ul>
<% for item in list %>
<li><%= item %>
<%== item %></li>
<% end %>
</ul>
END
## create Eruby object
require 'erubis'
eruby = Erubis::XmlEruby.new(input) # or Erubis::Eruby.new(input)
## get result
list = ['<aaa>', 'b&b', '"ccc"']
puts eruby.result(binding())
--------------------
result:
====================
$ ruby example.rb
<ul>
<li><aaa>
<aaa></li>
<li>b&b
b&b</li>
<li>"ccc"
"ccc"</li>
</ul>
====================
See doc/users-guide.html in archive for details.
: Enhancement from 1.0.1
* '<%# .. %>' supported. Erubis ignores '<%# %>'.
* New class PrintEruby and PrintXmlEruby available.
These class enables you to embed print statement in eRuby
(this feature is not supported in ERB).
ex. example.eb
--------------------
## data and context
list = ['aaa', 'bbb', 'ccc']
context = { :list => list }
## eRuby script
## (use print statement instead of <%= item %>)
input = <<-END
<ul>
<% for item in list %>
<li><% print item %></li>
<% end %>
</ul>
END
## create eruby and get result as string
require 'erubis'
eruby = Erubis:
rintEruby.new(input)
str = eruby.evaluate(context) # don't use result()!
print str
--------------------
result:
====================
$ ruby example.rb
<ul>
<li>aaa</li>
<li>bbb</li>
<li>ccc</li>
</ul>
====================
Have fun!
http://rubyforge.org/projects/erubis/
Erubis is an implementation of eRuby.
It has the following features:
* Auto sanitizing support
* Embedded pattern changeable (default '<% %>')
* Auto trimming spaces around '<% %>'
* Context object available
* Print statement available
* Faster mode support
* Easy to expand in subclass
Erubis is implemented in pure Ruby. It requires Ruby 1.8 or higher.
Sample code (example.rb):
--------------------
## eRuby script
## ('<%= %>' is escaped and '<%== %>' is not escaped when XmlEruby)
input = <<END
<ul>
<% for item in list %>
<li><%= item %>
<%== item %></li>
<% end %>
</ul>
END
## create Eruby object
require 'erubis'
eruby = Erubis::XmlEruby.new(input) # or Erubis::Eruby.new(input)
## get result
list = ['<aaa>', 'b&b', '"ccc"']
puts eruby.result(binding())
--------------------
result:
====================
$ ruby example.rb
<ul>
<li><aaa>
<aaa></li>
<li>b&b
b&b</li>
<li>"ccc"
"ccc"</li>
</ul>
====================
See doc/users-guide.html in archive for details.
: Enhancement from 1.0.1
* '<%# .. %>' supported. Erubis ignores '<%# %>'.
* New class PrintEruby and PrintXmlEruby available.
These class enables you to embed print statement in eRuby
(this feature is not supported in ERB).
ex. example.eb
--------------------
## data and context
list = ['aaa', 'bbb', 'ccc']
context = { :list => list }
## eRuby script
## (use print statement instead of <%= item %>)
input = <<-END
<ul>
<% for item in list %>
<li><% print item %></li>
<% end %>
</ul>
END
## create eruby and get result as string
require 'erubis'
eruby = Erubis:
str = eruby.evaluate(context) # don't use result()!
print str
--------------------
result:
====================
$ ruby example.rb
<ul>
<li>aaa</li>
<li>bbb</li>
<li>ccc</li>
</ul>
====================
Have fun!