XML in Ruby - Templating Engine

Hi,

While everyone embeds Ruby into HTML code nowadays, I thought why not
do it the other way round? Vim syntax highlighting included :slight_smile:

http://www.ntecs.de/hg-projects/xml_in_ruby/

Uh, and it’s soo simple, and you get a lot of goodies for free (for
example you can split your templates into methods, or inherit from other
template classes etc.).

Regards,

Michael


XML in Ruby - Templating Engine

ABOUT

“XML in Ruby” is a simple templating engine that allows you to embed
XML directly into Ruby.

EXAMPLE

See sample.rbx.

   class MyView < View
     def index(title)
       <html>
         <head>
           <title>${title}</title>
         </head>
         <body>
           render_body
         </body>
       </html>
     end

     def render_body
       output "Hello World"
     end
   end

   puts MyView.render(:index, "Test")

To start:

   ruby -r view -e "View.require 'sample.rbx'"

Output:

   <html>
   <head>
   <title>Test</title>
   </head>
   <body>
   Hello World</body>
   </html>

You can mix XML and Ruby. Everything that starts with “<” as
fist non-whitespace character on a line is considered as XML.
You can also use:

   <: This is text

to output the text " This is text", or require other
“templates” with:

   View.require 'another_template.rbx'

In XML you can embed Ruby code with #{…} and ${…}. The second
performs escaping.