NAME

Mojolicious::Plugin::PODRenderer - POD renderer plugin

SYNOPSIS

# Mojolicious (with documentation browser under "/perldoc")
my $route = $app->plugin('PODRenderer');
my $route = $app->plugin(PODRenderer => {name => 'foo'});
my $route = $app->plugin(PODRenderer => {preprocess => 'epl'});

# Mojolicious::Lite (with documentation browser under "/perldoc")
my $route = plugin 'PODRenderer';
my $route = plugin PODRenderer => {name => 'foo'};
my $route = plugin PODRenderer => {preprocess => 'epl'};

# Without documentation browser
plugin PODRenderer => {no_perldoc => 1};

# foo.html.ep
%= pod_to_html "=head1 TEST\n\nC<123>"

# foo.html.pod
=head1 <%= uc 'test' %>

DESCRIPTION

Mojolicious::Plugin::PODRenderer is a renderer for true Perl hackers, rawr!

The code of this plugin is a good example for learning to build new plugins, you're welcome to fork it.

See "PLUGINS" in Mojolicious::Plugins for a list of plugins that are available by default.

OPTIONS

Mojolicious::Plugin::PODRenderer supports the following options.

name

# Mojolicious::Lite
plugin PODRenderer => {name => 'foo'};

Handler name, defaults to pod.

no_perldoc

# Mojolicious::Lite
plugin PODRenderer => {no_perldoc => 1};

Disable Mojolicious::Guides documentation browser that will otherwise be available under /perldoc.

preprocess

# Mojolicious::Lite
plugin PODRenderer => {preprocess => 'epl'};

Name of handler used to preprocess POD, defaults to ep.

HELPERS

Mojolicious::Plugin::PODRenderer implements the following helpers.

pod_to_html

%= pod_to_html '=head2 lalala'
<%= pod_to_html begin %>=head2 lalala<% end %>

Render POD to HTML without preprocessing.

METHODS

Mojolicious::Plugin::PODRenderer inherits all methods from Mojolicious::Plugin and implements the following new ones.

register

my $route = $plugin->register(Mojolicious->new);
my $route = $plugin->register(Mojolicious->new, {name => 'foo'});

Register renderer and helper in Mojolicious application.

SEE ALSO

Mojolicious, Mojolicious::Guides, https://mojolicious.org.