erb - Man Page

Ruby Templating

Synopsis

erb[--version] [-UPdnvx] [-E ext[:int]] [-S level] [-T mode] [-r library] [--] [file ...]

Description

erb is a command line front-end for ERB library, which is an implementation of eRuby.

ERB provides an easy to use but powerful templating system for Ruby. Using ERB, actual Ruby code can be added to any plain text document for the purposes of generating document information details and/or flow control.

erb is a part of Ruby.

Options

--version

Prints the version of erb.

-E external[:internal]
--encoding external[:internal]

Specifies the default value(s) for external encodings and internal encoding. Values should be separated with colon (:).

You can omit the one for internal encodings, then the value (Encoding.default_internal) will be nil.

-P

Disables ruby code evaluation for lines beginning with %.

-S level

Specifies the safe level in which eRuby script will run.

-T mode

Specifies trim mode (default 0). mode can be one of

0

EOL remains after the embedded ruby script is evaluated.

1

EOL is removed if the line ends with %>.

2

EOL is removed if the line starts with <% and ends with %>.

-

EOL is removed if the line ends with -%>. And leading whitespaces are removed if the erb directive starts with <%-.

-r

Load a library

-U

can be one of Sets the default value for internal encodings (Encoding.default_internal) to UTF-8.

-d
--debug

Turns on debug mode. $DEBUG will be set to true.

-h
--help

Prints a summary of the options.

-n

Used with -x. Prepends the line number to each line in the output.

-v

Enables verbose mode. $VERBOSE will be set to true.

-x

Converts the eRuby script into Ruby script and prints it without line numbers.

Examples

Here is an eRuby script

<?xml version="1.0" ?>
<% require 'prime' -%>
<erb-example>
  <calc><%= 1+1 %></calc>
  <var><%= __FILE__ %></var>
  <library><%= Prime.each(10).to_a.join(", ") %></library>
</erb-example>

Command

% erb -T - example.erb

prints

<?xml version="1.0" ?>
<erb-example>
  <calc>2</calc>
  <var>example.erb</var>
  <library>2, 3, 5, 7</library>
</erb-example>

See Also

ruby(1).

And see ri(1) documentation for ERB class.

Reporting Bugs

Authors

Written by Masatoshi SEKI.

Info

December 16, 2018