[I sent this to Edi earlier, but it seems to have been ignored. I just saw that there is actually a mailing list for this project, so I'm hoping that sending it to the correct place will generate a bit more response.]<br><br>
> For a personal project I extended your HTML-TEMPLATE library with an<br>> extra TMPL tag. If you think my extension is useful enough to be<br>> included in the library proper, I'll be happy to properly document it
<br>> and submit a patch. Here is how it works:<br>> <br>> Support for the TMPL_CALL tag is added. This is related to<br>> TMPL_INCLUDE, but allows the values passed to a template to<br>> 'dynamically' determine which sub-templates should be used. It was
<br>> inspired by the way XSLT's apply-templates works. The tag takes a<br>> single symbol as argument, and treats it the way TMPL_LOOP does,<br>> iterating over a list or a vector of values. Each of these values
<br>> specifies a template to use and a set of values to apply that template<br>> to. These are extracted by applying the functions<br>> *call-template-access-function* and *call-values-access-function* to<br>> the given values - these default to #'car and #'cdr respectively.
<br>> <br>> If *default-template-pathname* is set properly, and there are<br>> templates named "fancy-paragraph" and "standard-footer", something<br>> like this...<br>> <br>> '(:title "Title"
<br>>   :body<br>>     ((#P"fancy-paragraph" :content "This is a fancy paragraph")<br>>      (#P"standard-footer")))<br>> <br>> ... can be fed to a template that applies TMPL_CALL to :body to render
<br>> its body in whatever way the code that generated the values thought<br>> suitable.<br>> <br>> Basically, this extension allows the use of outer templates that do<br>> not know precisely what kind of content will be inserted into them. A
<br>> very basic example is a template that contains the <html>, <head>, &<br>> <body> tags + maybe some basic formatting, and which can be used by<br>> all pages that generate pages with a similar outer structure.
<br>> <br>> Let me know what you think,<br>> Marijn Haverbeke<br><br>[Also, reading a few older message on this list suggests that adding
fancy new features isn't a priority for this library -- but I still think
adding a dynamic way to include subtemplates would be useful enough to
warrant the extra complexity.]<br><br>