For a few years now, I've been thinking about doing a
But for Padre 2.2meg is a hell of a lot to spend, because of the multiplier effect of threading. Template.pm is geared much more towards being a load focal point in a website or a content generation system, it is just that much too complex when used as a utility class for simple code generation (which is what I want to use it for in Padre).
So Template::Tiny is happening, and I've just uploaded the first release which support pretty much nothing other than basic [% foo %] insertions from a single variable HASH.
Just adding support for tags, plus a tiny bit of boilerplate, has memory consumption at around 24k of RAM consumed out of my anticipated budget of around 100k.
Before I go any further, I'd like to ask you guys what you consider to be the essential TT features that you would want to retain even in a light weight
For me, this includes the three basic array, hash and object foo.bar usages, and IF blocks (and potentially simple | filters).
What do you want?
Loops (Score:2)
For it to be useful, I really think it needs loops.
I work hard (usually) to ensure there is no logic in my templates, but I can't do without loops. And it needs to be easily upgradeable to Template::Toolkit.
That being said, many people will be upset about the whitespace issues of the above. There are obvious ways of dealing with this for the general case (w
Re: (Score:2)
Er, pretend I didn't miss out on a closing "tr" tag :)
Re: (Score:2)
And filters. I may not imagine the bad things that would happen if
item.nameand/oritem.valuecontain text with substrings that are meaningful as HTML markup.Besides, for a template system I want to be able to insert text between every listed item, but not after the final item; just like
joindoes in Perl, but then with a loop-ish instead of a functional syntax. (Just being able to test for the last iteration in the loop, would do the trick.)I don't remember the syntax TT2 uses for such a feature, but I'm
Re: (Score:2)
Template Toolkit's syntax:
What I would wants... (Score:1)
loops
variable substitution (of course)
simple config (where templates are found and the like)
maybe the "include" function as well
loop variable (Score:1)
Plugins (Score:1)
Every token is like an unnecessary stain on whitespace and idleness.
Caveat: I haven't used TT (Score:1)
If T::Tiny doesn't have some looping construct, I don't see the advantage over a simple eval or string interpolation.
If statement (Score:1)
repeating what's been said (Score:1)
These have all been mentioned, but I just wanted to add one more voice: