I never thank I can do that with a macro. I always use the standard way, like Tonico wrote. I learnt something :)<br><br>
<div><span class="gmail_quote">2007/3/2, Tres Seaver &lt;<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:tseaver@palladion.com" target="_blank">tseaver@palladion.com</a>&gt;:</span> 
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">-----BEGIN PGP SIGNED MESSAGE-----<br>Hash: SHA1<br><br>Gaute Amundsen wrote:<br>&gt; On Friday 02 March 2007 11:20, Andreas Jung wrote: 
<br>&gt;&gt; --On 2. März 2007 11:10:57 +0100 Gaute Amundsen &lt;<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:gaute@div.org" target="_blank">gaute@div.org</a>&gt; wrote:<br>&gt;&gt;&gt; I have tried many varieties, but I can&#39;t remember ever getting it to
<br>&gt;&gt;&gt; work... <br>&gt;&gt;&gt;<br>&gt;&gt;&gt; A few googles shows me nothing either.<br>&gt;&gt; returning a macro?<br>&gt;&gt;<br>&gt;&gt; -aj<br>&gt;<br>&gt; Something like this:<br>&gt;<br>&gt; foo = restrictedTraverse(&#39;/foo/bar/index.html/macros/mymacro&#39;) 
<br>&gt; return foo()<br>&gt;<br>&gt; But of course foo is a list, and I can&#39;t see a way I can use any of the<br>&gt; contents..<br><br>You can&#39;t &quot;use it&quot;, only inline it into a calling template.&nbsp;&nbsp;E.g.:<br>
<br>##Script (Python) &quot;random_macro&quot;<br>from random import choice # may need module security assertion<br>macros = context.some_template.macros<br>macro1 = macros[&#39;one&#39;]<br>macro2 = macros[&#39;two&#39;] 
<br>macro3 = macros[&#39;three&#39;]<br>return choice((macro1, macro2, macro3))<br><br>The template would just do:<br><br>&nbsp;&nbsp;&lt;div metal:use-macro=&quot;context/random_macro&quot; /&gt;<br><br><br><br>Tres.<br>- --<br>=================================================================== 
<br>Tres Seaver&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+1 540-429-0999&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:tseaver@palladion.com" target="_blank">tseaver@palladion.com</a><br>Palladion Software&nbsp;&nbsp; &quot;Excellence by Design&quot;&nbsp;&nbsp;&nbsp;&nbsp;
<a onclick="return top.js.OpenExtLink(window,event,this)" href="http://palladion.com/" target="_blank">http://palladion.com </a><br>-----BEGIN PGP SIGNATURE-----<br>Version: GnuPG v1.4.2.2 (GNU/Linux)<br>Comment: Using GnuPG with Mozilla - 
<a onclick="return top.js.OpenExtLink(window,event,this)" href="http://enigmail.mozdev.org/" target="_blank">http://enigmail.mozdev.org</a><br><br>iD8DBQFF6Euf+gerLs4ltQ4RAlAvAKC1OUUAyTTh5mcJ+WN9ljLQq7eQfQCfeSmv <br>pKeYt4iwEPMdleU5ef9D5Nc=
<br>=fNnX<br>-----END PGP SIGNATURE-----<br><br>_______________________________________________<br>Zope maillist&nbsp;&nbsp;-&nbsp;&nbsp;<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:Zope@zope.org" target="_blank">Zope@zope.org
</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://mail.zope.org/mailman/listinfo/zope" target="_blank">http://mail.zope.org/mailman/listinfo/zope</a><br>**&nbsp;&nbsp; No cross posts or HTML encoding!&nbsp;&nbsp;**
<br>(Related lists -<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://mail.zope.org/mailman/listinfo/zope-announce" target="_blank">http://mail.zope.org/mailman/listinfo/zope-announce </a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://mail.zope.org/mailman/listinfo/zope-dev" target="_blank">
http://mail.zope.org/mailman/listinfo/zope-dev</a> )<br></blockquote></div><br><br clear="all"><br>-- <br>J. Prudent