| Template-Toolkit documentation | Contained in the Template-Toolkit distribution. |
Template::Plugin::Format - Plugin to create formatting functions
[% USE format %]
[% commented = format('# %s') %]
[% commented('The cat sat on the mat') %]
[% USE bold = format('<b>%s</b>') %]
[% bold('Hello') %]
The format plugin constructs sub-routines which format text according to
a printf()-like format string.
Andy Wardley <abw@wardley.org> http://wardley.org/
Copyright (C) 1996-2007 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.
| Template-Toolkit documentation | Contained in the Template-Toolkit distribution. |
#============================================================= -*-Perl-*- # # Template::Plugin::Format # # DESCRIPTION # # Simple Template Toolkit Plugin which creates formatting functions. # # AUTHOR # Andy Wardley <abw@wardley.org> # # COPYRIGHT # Copyright (C) 1996-2007 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. # #============================================================================ package Template::Plugin::Format; use strict; use warnings; use base 'Template::Plugin'; our $VERSION = 2.70; sub new { my ($class, $context, $format) = @_;; return defined $format ? make_formatter($format) : \&make_formatter; } sub make_formatter { my $format = shift; $format = '%s' unless defined $format; return sub { my @args = @_; push(@args, '') unless @args; return sprintf($format, @args); } } 1; __END__
# Local Variables: # mode: perl # perl-indent-level: 4 # indent-tabs-mode: nil # End: # # vim: expandtab shiftwidth=4: