#!/usr/local/bin/perl
use strict;
use Text::Xslate::Runner;
my $app = Text::Xslate::Runner->new_from(@ARGV);
$app->run( $app->targets );
__END__
=head1 NAME
xslate - Process Xslate Templates
=head1 USAGE
# process paths
$ xslate [options...] target
-a --cache Cache level
-t --type Output content type (html | xml | text)
-E --engine Template engine
-D --define Define template variables (e.g. foo=bar)
-I --path Include paths
--version Print version information
--oe --output_encoding Output encoding (default: UTF-8)
-M --module Modules templates will use (e.g. name=sub1,sub2)
-e --eval One line of template code
-s --syntax Template syntax (e.g. TTerse)
-d --debug Debugging flags
-x --suffix Output suffix mapping (e.g. tx=html)
--ie --input_encoding Input encoding (default: UTF-8)
-i --ignore Regular expression the process will ignore
-c --cache_dir Directory the cache files will be saved in
-o --dest Destination directry
-w --verbose Warning level (default: 2)
# one liners, with $ARGV and $ENV
xslate -e 'Hello, <: $ARGV[0] :> world!' Xslate
# => Hello, Xslate world!
xslate -MDigest::MD5=md5_hex -e '<: md5_hex($ARGV[0]) :>' 'foo bar'
# => 327b6f07435811239bc47e1544353273
=head1 DESCRIPTION
The xslate script is used to process entire directory trees containing
template files, or to process one liners.
=head1 ARGUMENTS
=head2 target
Specifies the target to be processed by Xslate.
If the target is a file, the file is processed, and xslate will exit immediately. If the target is a directory, then the directory is traversed and each file found is processed via xslate.
=head1 AUTHOR
Maki, Daisuke (lestrrat)
Fuji, Goro (gfx)
=head1 SEE ALSO
L<Text::Xslate>
=cut