Template::Plugin::Wrap(3)

NAME
Template::Plugin::Wrap - Plugin interface to Text::Wrap

SYNOPSIS
    [% USE wrap %]

    # call wrap subroutine
    [% wrap(mytext, width, initial_tab,  subsequent_tab) %]

    # or use wrap FILTER
    [% mytext FILTER wrap(width, initital_tab, subsequent_tab) %]

DESCRIPTION
This plugin provides an interface to the Text::Wrap module which provides simple paragraph formatting.

It defines a "wrap" subroutine which can be called, passing the input text and further optional parameters to specify the page width (default: 72), and tab characters for the first and subsequent lines (no defaults).

    [% USE wrap %]

    [% text = BLOCK %]
    First, attach the transmutex multiplier to the cross-wired
    quantum homogeniser.
    [% END %]

    [% wrap(text, 40, '* ', '  ') %]

Output:

    * First, attach the transmutex
      multiplier to the cross-wired quantum
      homogeniser.

It also registers a "wrap" filter which accepts the same three optional arguments but takes the input text directly via the filter input.

Example 1:

    [% FILTER bullet = wrap(40, '* ', '  ') -%]
    First, attach the transmutex multiplier to the cross-wired quantum
    homogeniser.
    [%- END %]

Output:

    * First, attach the transmutex
      multiplier to the cross-wired quantum
      homogeniser.

Example 2:

    [% FILTER bullet -%]
    Then remodulate the shield to match the harmonic frequency, taking
    care to correct the phase difference.
    [% END %]

Output:

    * Then remodulate the shield to match
      the harmonic frequency, taking
      care to correct the phase difference.

AUTHOR
Andy Wardley <abw@wardley.org> <http://wardley.org/>

The Text::Wrap module was written by David Muir Sharnoff with help from Tim Pierce and many others.

COPYRIGHT
Copyright (C) 1996-2022 Andy Wardley. All Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO
Template::Plugin, Text::Wrap