Hi, I uploaded a new beta (so the minimals will have it in about an hour): - some cleanup at the lua end as side effect of documenting lua interfacing as part of writing the cld manual - a couple of bug fixed in the lua code that crept in during some optimizations - removal of some old lua code (not needed any more or replaced by better code) - a couple of patches (or extensions) to macros (due to reports on the list); for instance, the HideLayer and VideLayer reference actions were never implemented; also, some animation code has been added (for WS) - definitions like \definedfont[file:lbr.pfb] are ok now (remapped onto afm, a few line harmless extension) - a replacement of the existing marking mechanism (as used for running headers and footers): less interference with typesetting as mark nodes are no longer part of the game; more robust synchronization of chained marks (sectioning); more robust handling of marking in columns and columnsets; experimental marking in arbitrary constructs (thomas might like that one); not all is tested but we have: the usual marking: first, last, previous, current; these are strict in the sense that they take sectioning into account some new, less strict marking: firstpage, lastpage, previouspage; these ignore sectioning related resets some experimental methods: next, nextpage; these concern parts of paragraphs that end up on the next page, so limited lookahead (in there is interest we can make that full lookahead i.e. future marks) the usual column related marking: \getmarking[chapter][first]/ \getmarking[chapter][page][first]/ \getmarking[chapter][column:first][first]/ \getmarking[chapter][column:1][first]/ \getmarking[chapter][1][first] even more expermental: \definemarking[boxmark] \setbox0\ruledvbox{ \marking[boxmark]{tufte} \input tufte \par \marking[boxmark]{ward} \input ward \par } \synchronizemarking[zerobox][0] \box0 \getmarking[boxmark][zerobox][first] \getmarking[boxmark][zerobox][last] anyhow, it might be that something is broken, but at least this implementation has more potential - the properties mechanism is obsolete and replaced by three mechanism that used them (originally properties dealt with specific engine/backend functionality); the most important ones are \defineviewerlayer[name][options] \startviewerlayer[name]....\stopviewerlayer \viewerlayer[name]{...} and \defineeffect[name][options] \starteffect[name]....\stopviewerlayer \effect[name]{...} where we have predefined (as with former properties): \defineeffect [inner] [alternative=inner,rulethickness=.25pt] \defineeffect [outer] [alternative=outer,rulethickness=.25pt] \defineeffect [both] [alternative=both, rulethickness=.25pt] \defineeffect [normal] [alternative=normal] \defineeffect [hidden] [alternative=hidden] \defineeffect [stretch] [alternative=stretch,stretch=1] the properties commands are still there but map onto these so older code should work ok (but somewhat less efficient) Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------