[Templates] Template::Profile 0.01

[prev] [thread] [next] [Date index for 2004/08/04]

From: Dylan Hardison
Subject: [Templates] Template::Profile 0.01
Date: 03:46 on 04 Aug 2004
------=_Part_62_23482834.1091591178844
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Here's a very very alpha Template::Profile, as Andy said in:
http://www.template-toolkit.org/pipermail/templates/2004-April/006020.html

Included is a simple replacement for tpage, which accepts
some new options:

--profile=$profile (also is -p)
--profile-arg="foo" (can be repeated) (also is -a)

It comes with two profiles, which are just perl modules,
file and default.

default does nothing at all, and file allows a profile to be loaded from
a file with one key = value pair per line.

example stuff.cfg:
----
interpolate = 1
trim = 1
include_path = foobar
----

tpage:
./tpage -p file -a stuff.cfg file.html > newfile.html

tpage then calls my $profile = Template::Profile->new("file", "stuff.cfg")
which loads Template::Profile::file and calls
Template::Profile::file->init("stuff.cfg").

Then it uses a hashref returned by $profile->config
to configure the Template->new object.

This is really, really quite simple code, but it will be useful in abstracting
the setting of TT-specific options away from the tpage and ttree programs.

Simple, and yet it probably contains at three bugs... Well, it works here.
Please abuse it and cause it break or find other things wrong with it.

I'm aware it doesn't yet allow one to specify which classes to use
(e.g. which provider, which stash), but that'll be added shortly. This
is 20-minute code.

I also have some directory-tree traversal code, too, but it isn't good
enough yet. :)

------=_Part_62_23482834.1091591178844
Content-Type: application/x-tar; name="Template-Profile-0.01.tar.gz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="Template-Profile-0.01.tar.gz"

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
PJMAUAAA
------=_Part_62_23482834.1091591178844--

_______________________________________________
templates mailing list
templates@xxxxxxxxxxxxxxxx.xxx
http://lists.template-toolkit.org/mailman/listinfo/templates

(message missing)

[Templates] Template::Profile 0.01
Dylan Hardison 03:43 on 04 Aug 2004

[Templates] Template::Profile 0.01
Dylan Hardison 03:46 on 04 Aug 2004

Generated at 08:55 on 15 Mar 2005 by mariachi v0.52