On Tue, Mar 27, 2007 at 07:22:02AM +0100, SteP wrote: > (version 2.20beta38) I want to add a table column only when (:pagelist:) > outputs something. I thought I could use the following format > [[#f]] > (:template first:) > (:cell:) > (:template each:) > test > [[#fend]] > > and page text > > (:table class"test" border=1:) > (:pagelist fmt=#f count=1:) > (:pagelist fmt=#f count=1:) > (:tableend:) > > however this results in two separate, stacked tables instead of the two > side-by-side columns I was expecting. It looks like the (:table:) markup > line is ignored, so each (:cell:) automagically becomes a whole table.
No, what is really happening is that any open tables, divs, or other structures inside of (:pagelist:) are automatically closed at the end of the pagelist command. In other words, (:pagelist:) acts like its own complete page, as opposed to generating markup that is then inserted into the enclosing page. So, what is happening is that the table generated by the (:cell:) directive in the first (:pagelist:) command is automatically closed at the end of the pagelist. The (:cell:) in the second (:pagelist:) command then starts a new table. Note that the (:table:) directive doesn't actually start a new table, it's the (:cell:) or (:cellnr:) directive that does it. All that the (:table:) directive does is set attributes for any tables that follow. > How can I achieve adding a table column only when pagelist outputs > something? I can't think of a way to do this, as yet. But see my message at [1], which proposes the addition of an outputtype=markup option which would allow (:pagelist:) to return the markup to the enclosing page, as opposed to rendering it standalone. [1] http://www.pmichaud.com/pipermail/pmwiki-users/2007-March/041000.html Pm _______________________________________________ pmwiki-users mailing list [email protected] http://www.pmichaud.com/mailman/listinfo/pmwiki-users
