use strict; use warnings; use HTML::Inject; use HTML::HTML5::Writer; my @pages = ( [ 'greeting.en.html', 'Hello' ], [ 'greeting.fr.html', 'Bonjour' ], [ 'greeting.es.html', 'Ola' ], [ 'greeting.de.html', 'Guten Tag' ], ); my $template = HTML::Inject->new(target => <<'TEMPLATE');

TEMPLATE my $output = HTML::HTML5::Writer->new(polyglot => 1); for my $page (@pages) { my ($filename, $title) = @$page; my $filled_in = $template -> inject_and_new("$title\n") -> inject ("

$title

\n"); open my $fh, '>', $filename; print $fh $output->document($filled_in); }