erubis (1)
NAME
erubis - eRuby style template engine for multiple languagesSYNOPSIS
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
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
rubyforge.org/projects/erubis