In before actually helpful people:

This script with an added "OR" (viz. || "::ERR:Cannot print value::") works
as you'd expect

#! /usr/bin/perl

use strict;
use warnings;

use Template;

my $variables = { nrme => "Manfred", };

my $cmd = 'Hi [% name || "::ERR:Cannot substitute variable::" %], how are
you.';

my $template = Template->new();

$template->process(\$cmd, $variables)
 or die $template->error(), "\n";

On Mon, Apr 9, 2012 at 2:28 PM, Manfred Lotz <manfred.l...@arcor.de> wrote:

> Hi all,
> Let's say I use Template:Toolkit like this:
>
> <-----------------snip------------------->
> #! /usr/bin/perl
>
> use strict;
> use warnings;
>
> use Template;
>
> my $variables = { nrme => "Manfred", };
>
> my $cmd = 'Hi [% name %], how are you.';
>
> my $template = Template->new();
>
> $template->process(\$cmd, $variables)
>  or die $template->error(), "\n";
> <-----------------snap------------------->
>
> and accidentally I have a typo in $variables (nrme instead of name).
> The output is: Hi , how are you.
>
> IMHO, this is really bad. I would like to get an error saying that a
> variable could not be substituted.
>
> Is this possible?
>
>
> --
> Manfred
>
>
>
>
>
>
>
>
>
> --
> To unsubscribe, e-mail: beginners-unsubscr...@perl.org
> For additional commands, e-mail: beginners-h...@perl.org
> http://learn.perl.org/
>
>
>

Reply via email to