sourCEntral - mobile manpages

pdf

ERUBIS

NAME

erubis − eRuby style template engine for multiple languages

SYNOPSIS

erubis [..options..] [file ...]

DESCRIPTION

Embedded templating engine for multiple languages. Erubis will take a template file as input and output code to convey that data in the language specified. The following output languages are supported:

* Ruby
* PHP
* C
* Java
* Scheme
* Perl
* JavaScript

OPTIONS

−h, −−help

help

−v

version

−x

show converted code

−X

show converted code, only ruby code and no text part

−N

numbering: add line numbers (for ’−x/−X’)

−U

unique: compress empty lines to a line (for ’−x/−X’)

−C

compact: remove empty lines (for ’−x/−X’)

−b

body only: no preamble nor postamble (for ’−x/−X’)

−z

syntax checking

−e

escape (equal to ’−−E Escape’)

−p pattern

embedded pattern (default ’<% %>’)

−l lang

convert but no execute (ruby/php/c/java/scheme/perl/js)

−E e1,e2,...

enhancer names (Escape, PercentLine, BiPattern, ...)

−I path

library include path

−K kanji

kanji code (euc/sjis/utf8) (default none)

−c context

context data string (yaml inline style or ruby code)

−f datafile

context data file (’*.yaml’, ’*.yml’, or ’*.rb’)

−T

don’t expand tab characters in YAML file

−S

convert mapping key from string to symbol in YAML file

−B

invoke ’result(binding)’ instead of ’evaluate(context)’

−−pi=name

parse ’<?name ... ?>’ instead of ’<% ... %>’

supported properties:

* (common)

−−escapefunc=nil

: escape function name

−−pattern="<% %>"

: embed pattern

−−trim=true

: trim spaces around <% ... %>

−−preamble=nil

: preamble (no preamble when false)

−−postamble=nil

: postamble (no postamble when false)

−−escape=nil

: escape expression or not in default

* (basic) * (pi)

−−pi="rb"

: PI (Processing Instrunctions) name

−−embchar="@"

: char for embedded expression pattern(’@{...}@’)

* ruby * php * c

−−indent=""

: indent spaces (ex. ’ ’)

−−out="stdout"

: output file pointer name

* java

−−indent=""

: indent spaces (ex. ’ ’)

−−buf="_buf"

: output buffer name

−−bufclass="StringBuffer" : output buffer class (ex. ’StringBuilder’)

* scheme

−−func="_add"

: function name (ex. ’display’)

* perl

−−func="print"

: function name

* javascript

−−docwrite=true

: use ’document.write()’ when true

EXAMPLES

Run ’erubis −l php example.ephp’ to convert the embedded document to php code.

example.ephp:
<?xml version="1.0"?>
<html>
<body>
<p>Hello <%= $user %>!</p>
<table>
<tbody>
<% $i = 0; %>
<% foreach ($list as $item) { %>
<% $i++; %>
<tr bgcolor="<%= $i % 2 == 0 ? ’#FFCCCC’ : ’#CCCCFF’ %>">
<td><%= $i %></td>
<td><%== $item %></td>
</tr>
<% } %>
</tbody>
</table>
</body>
</html>

SEE ALSO

http://rubyforge.org/projects/erubis/

pdf