Q: What is Zope 3X? A: Zope 3X is Zope rebuilt from the ground up, applying the lessons learned from Zope 2 and CMF. <snip> Q: Will Zope 3X support DTML? A: Probably not. Q: Will Zope 3 support DTML? A: Yes. I would like to get a better idea of what 'Zope rebuilt from the ground up includes'. For me, Zope is also used to produce non Markup language (for ex emails) which you cannot use ZPT for. So would the new Zope been limited to ML ? -- Godefroid Chapelle BubbleNet sprl rue Victor Horta, 18 / 202 1348 Louvain-la-Neuve Belgium Tel + 32 (10) 459901 Mob + 32 (477) 363942 TVA 467 093 008 RC Niv 49849
At 12:21 PM 12/4/01 +0100, Godefroid Chapelle wrote:
I would like to get a better idea of what 'Zope rebuilt from the ground up includes'.
Code that isn't crufty! Now with the new, sparkling clear look of Interfaces, and a zesty twist of tests! Objects that don't peer and poke at other objects' private parts! Yay! As someone who's written products that do "Deep Magic" hacking in Zope 2, I am *ecstatic* at the overall direction the Zope 3X code is taking. Have a look at the CVS and see for yourself. My fond hope is that in Zope 3 the need for ZPatterns will disappear completely. It looks so far like it *could*; the real test will be whether Zope.App policies end up including anything that relies on persistence or the performance characteristics of ZODB-ish data structures. If none of those "bad expectations" get carried into Z3, ZPatterns as a product will become irrelevant - you will be able to do whatever you need to simply by writing Python code to the Z3 API's. It also looks as though the work I've done and am doing now on TransWarp will slide straight into Z3 with only a small amount of lubrication required.
For me, Zope is also used to produce non Markup language (for ex emails) which you cannot use ZPT for.
So would the new Zope been limited to ML ?
Actually, although Zope 3X doesn't support DTML, the DocumentTemplate package is still there; there's nothing stopping you from using it in code of your own. It's just not wrapped in the nice Method objects it used to be in. And if you look at the FAQ you quoted, it does note that DTML *will* be available in Zope 3, just not 3X. I personally would like to see ZPT support plain text at some point, and it already has some of the things necessary to do it. But that's a separate issue from Zope 3X or Zope 3 itself.
"Phillip J. Eby" wrote:
(snip)
So would the new Zope been limited to ML ?
Actually, although Zope 3X doesn't support DTML,
The current very early prototype code doesn't support DTML. Zope 3x, which by the way is not a zope version so much as a set of milestones, will certainly support DTML.
the DocumentTemplate package is still there; there's nothing stopping you from using it in code of your own. It's just not wrapped in the nice Method objects it used to be in. And if you look at the FAQ you quoted, it does note that DTML *will* be available in Zope 3, just not 3X.
It should be updated to include DTML in the 3x planning. Jim -- Jim Fulton mailto:jim@zope.com Python Powered! CTO (888) 344-4332 http://www.python.org Zope Corporation http://www.zope.com http://www.zope.org
"Phillip J. Eby" wrote:
I personally would like to see ZPT support plain text at some point, and it already has some of the things necessary to do it. But that's a separate issue from Zope 3X or Zope 3 itself.
It already can: <dummy tal:omit-tag="" tal:content="mymethod"> Some dummy text </dummy> Or even: <dummy tal:replace="mymethod"> Some dummy text </dummy> It's more long winded that DTML in this case, but there's no need for another markup language... Chris
Chris Withers wrote:
"Phillip J. Eby" wrote:
I personally would like to see ZPT support plain text at some point, and it already has some of the things necessary to do it. But that's a separate issue from Zope 3X or Zope 3 itself.
It already can:
<dummy tal:omit-tag="" tal:content="mymethod"> Some dummy text </dummy>
Or even:
<dummy tal:replace="mymethod"> Some dummy text </dummy>
It's more long winded that DTML in this case, but there's no need for another markup language...
How would you do repeating texts or conditional texts like this? I mean, perhaps it's obvious; I haven't played enough with ZPT yet. I also think this looks rather unnatural when doing email templates or SQL templates. A completely stripped down magic-less variety of something DTMLish with support for tales expressions might be worth exploring for these purposes. Another possibility is to design teeny dedicated systems that are magic rich but extremely limited (and then strongly resist any extending it). Something is needed for ZSQL at least in my opinion. In XPath Methods I simply used the way XPath deals with variables ($foo) to parameterize them. Perhaps there are some semi-standard conventions for SQL that we could use? Regards, Martijn
Martijn Faassen wrote:
How would you do repeating texts or conditional texts like this? I mean, perhaps it's obvious; I haven't played enough with ZPT yet.
repeat: <x tal:repeat="object here/collection" tal:omit-tag=""> I am <y tal:replace="object/id" /> </x> condition: <yes tal:condition="here/has_objects_in_basket" tal:omit-tag=""> You have <c tal:replace="here/basket_count"/> objects in your basket </yes> <no tal:condition="not here/has_objects_in_basket" tal:omit-tag=""> Your basket is empty </no>
I also think this looks rather unnatural when doing email templates or SQL templates.
I used to think that, I'm quickly changing positions. Perhaps the only option I'd like is a check box somewhere on the template object saying something like "always include tal:omit-tag by default. Then I reckon it could do for everything :-) cheers, Chris -- more and more a ZPT-ONLY! fan each day...
Hi out there :)
How would you do repeating texts or conditional texts like this? I mean, perhaps it's obvious; I haven't played enough with ZPT yet.
Just for your info: there is one product that tries to address this problem: TERRY http://www.zope.org/Members/lalo/TextTemplates It is a modified version of TAL that doesn't use XML but a custom syntax: %(tal:content="here/fgcolor" black)% I don't now, if this makes things easier, but it would ensure at least the use of TALES and has similar usage.
I also think this looks rather unnatural when doing email templates or SQL templates.
I used to think that, I'm quickly changing positions. Perhaps the only option I'd like is a check box somewhere on the template object saying something like "always include tal:omit-tag by default. Then I reckon it could do for everything :-)
cheers,
Chris -- more and more a ZPT-ONLY! fan each day...
YES :))) One Template-Language for all: ZPT .. and one Expression Syntax as well: TALES .. cheers Ulrich Eck --------------------------------------------------------------------------- net-labs Systemhaus GmbH Ebersberger Str. 46 85570 Markt Schwaben fon: +49-8121-4747-11 fax: +49-8121-4747-77 email: ueck@net-labs.de http://www.net-labs.de
I was about to mention TERRY, but Ulrich beat me to it. One nice thing about TERRY is that it allows you to change the markup simbols. For instance it is entirely possible to use: <?tal:content="here/fgcolor" black?> (which, by the way, is a semi-standard way to do extentions to html and looks like php escapes) instead of %(tal:content="here/fgcolor" black)% However I think there still isn't an easy, thru the web, way to change the markup signals. On Wed, 2001-12-05 at 09:41, Ulrich Eck wrote:
Hi out there :)
How would you do repeating texts or conditional texts like this? I mean, perhaps it's obvious; I haven't played enough with ZPT yet.
Just for your info:
there is one product that tries to address this problem: TERRY http://www.zope.org/Members/lalo/TextTemplates
It is a modified version of TAL that doesn't use XML but a custom syntax:
%(tal:content="here/fgcolor" black)%
I don't now, if this makes things easier, but it would ensure at least the use of TALES and has similar usage.
I also think this looks rather unnatural when doing email templates or SQL templates.
I used to think that, I'm quickly changing positions. Perhaps the only option I'd like is a check box somewhere on the template object saying something like "always include tal:omit-tag by default. Then I reckon it could do for everything :-)
cheers,
Chris -- more and more a ZPT-ONLY! fan each day...
YES :))) One Template-Language for all: ZPT .. and one Expression Syntax as well: TALES ..
-- Ideas don't stay in some minds very long because they don't like solitary confinement.
Ulrich Eck wrote:
Hi out there :)
How would you do repeating texts or conditional texts like this? I mean, perhaps it's obvious; I haven't played enough with ZPT yet.
Just for your info:
there is one product that tries to address this problem: TERRY http://www.zope.org/Members/lalo/TextTemplates
It is a modified version of TAL that doesn't use XML but a custom syntax:
%(tal:content="here/fgcolor" black)%
I don't now, if this makes things easier, but it would ensure at least the use of TALES and has similar usage.
Yes, TALES seems to be the way to go, unless we opt for a really micro-language dedicated to do only one thing and nothing more. I'm unconvinced I want to explain ZPT with omit-tag etc for someone just writing SQL, for instance, though. Looks worse and is harder to explain even than DTML, which is bad news. Regards, Martijn
Chris Withers wrote:
Chris -- more and more a ZPT-ONLY! fan each day...
How would you email someone some output from the Python interactive interpreter? In other words, how do you get a naked < or > or & in a plain-text ZPT? I guess you'd need to have a special page template interpreter that knows that it isn't putting out SGML-style stuff. -- Steve Alexander
Steve Alexander wrote:
I guess you'd need to have a special page template interpreter that knows that it isn't putting out SGML-style stuff.
Indeed, you can, of course, use < amd & in the meantime if the HTML parser in ZPT does barf (which maybe it shouldn't?) Sounds like the content type in a page template could be very useful: if content_type='text/plain': self._parser = PlainTextTagParser() self._alls_ommit_tags=1 cheers, Chris
<x tal:repeat="object here/collection" tal:omit-tag=""> I am <y tal:replace="object/id" /> </x>
Everybody keeps forgetting it, but this should work: <tal:loop repeat="object here/collection"> I am <y tal:replace="object/id" /> </tal:loop> Because tags in the 'tal' namespace are stripped. I could have used "dummy" instead of "loop" though. Florent -- Florent Guillaume, Nuxeo SARL (Paris, France) +33 1 40 33 79 10 http://nuxeo.com mailto:fg@nuxeo.com
Florent Guillaume wrote:
<x tal:repeat="object here/collection" tal:omit-tag=""> I am <y tal:replace="object/id" /> </x>
Everybody keeps forgetting it, but this should work:
<tal:loop repeat="object here/collection"> I am <y tal:replace="object/id" /> </tal:loop>
Because tags in the 'tal' namespace are stripped.
I could have used "dummy" instead of "loop" though.
I did forget that, and that makes it even better :-) Thanks Florent... Chris
At 05:58 PM 12/4/01 +0000, Chris Withers wrote:
"Phillip J. Eby" wrote:
I personally would like to see ZPT support plain text at some point, and it already has some of the things necessary to do it. But that's a separate issue from Zope 3X or Zope 3 itself.
It already can:
[example snipped]
Last I looked, there were still certain constructs that could not have the tag opted-out-of. But that was a month or two ago and TAL moves fast... :) I don't remember seeing tal:omit-tag before, so maybe that was the last piece of the puzzle.
participants (9)
-
Chris Withers -
Florent Guillaume -
Godefroid Chapelle -
Jim Fulton -
Leonardo Rochael Almeida -
Martijn Faassen -
Phillip J. Eby -
Steve Alexander -
Ulrich Eck