>>Ok, I don't really understand what this all means. I have trivial use
>>cases and don't understand why everything has to be so complicated.
Roger Ineichen schrieb:
> It's only because the macros registration via ZCML and the TALES
> expression isn't the right concept for what you where shoing at the
> For your idea, you need to implement a custom page template where
> provides a macros namspace. Then you can call macros in TAL like:
> <metal:block use-macro="macros/myMacro" />
> If we like to use the standard page template we don't have this
> "macro" namespace and need a TALES expression for the macro
> lookup like:
> <metal:block use-macro="macros:myMacro" />
> Right now without a macros ZCML directive we use macros via a
> additional page (view) hook like:
> <metal:block use-macro="context/@@macros/myMacro" />
> In this case the "@@macros" is a view registred with a own python
> class inherited from the class Macros. Most the time called
> StandardMacros (see Rotterdam skin).
> I only propose to get rid of this additional python class
> implementation and view registration and like to offer a
> ZCML directive and a TALES namespace explicit for macros.
Ok, got it :)
You want to support browser:page's template="some.pt" which is a
ViewPageTemplateFile and has an immutable namespace when used as view
from a browser:page directive.
Interesting, I have been believing that it is straighter to pass a dict
to a page template than creating a new expression type. Thanks for the
Zope3-dev mailing list