Things have stabilized enough to release Radius 0.0.2. This release
contains a couple of minor refactorings.
What’s New?
-
Refactored Parser to use Context#render_tag instead of #send when
rendering tags defined on a Context. -
UndefinedTagError is now thrown when the parser tries to render a tag
which doesn’t exist on a context. -
Added Context#tag_missing which works like method_method missing on
Object, but is tag specific.
What is Radius?
A small, but powerful tag-based template language for Ruby similar to
the ones used in MovableType and TextPattern. It has tags similar to
HTML or XML, but can be used to generate any form of plain text (not
just HTML).
Installation:
% gem install radius
Download:
http://rubyforge.org/frs/?group_id=1262
Documentation:
http://radius.rubyforge.org
A small example of Radius in action:
class ThreeStoogesContext < Radius::Context
def initialize
@prefix = ‘ts’
end
def stooge(attr)
content = ‘’
[“Larry”, “Moe”, “Curly”].each do |name|
@name = name
content << yield
end
content
end
def name(attr)
@name
end
end
parser = Radius::Parser.new(ThreeStoogesContext.new)
template = <<-TEMPLATE
puts parser.parse(template)
This will output:
<li>Larry</li>
<li>Moe</li>
<li>Curly</li>
Learn more by reading the Quick Start guide:
http://radius.rubyforge.org/files/QUICKSTART.html
Enjoy!