Am 05.08.2009 um 10:47 schrieb Derek CORDEIRO:
\definelayer[mybg][width=\paperwidth,height=\paperheight,state=repeat]
\setlayer [mybg]
[hoffset=1cm, voffset=1cm]
{\framed[frame=on, width=3cm, height=2cm]
{\externalfigure[cow][width=1cm]
}}
\setupbackgrounds[page][background=mybg]
\starttext
\dorecurse{6}{\input tufte\par}
\stoptext
It still does not work(still layer only on first page in Mk IV).
What am I doing wrong?
A typo in pack-lyr.mkiv for the \dodoflushlayer macro.
In MkII a line of the macro is
\doifnotvalue{\??ll#2\c!position}\v!yes
{\doifvalue{\??ll#2\c!repeat}\v!yes\!!donecfalse
\doifvalue{\??ll#2\c!state}\v!repeat\!!donecfalse}%
while in MkIV it's
\ifx\@@currentlayerposition\v!yes
\edef\@@currentlayerrepeat{\csname\??ll\currentlayer\c!repeat
\endcsname}%
% \edef\@@currentlayerstate {\csname\??ll\currentlayer\c!state
\endcsname}% actually this is already set
\ifx\@@currentlayerrepeat\v!yes
\!!donecfalse
\else\ifx\@@currentlayerstate\v!repeat
\!!donecfalse
\fi\fi
\fi
MkII expects position ≠ yes while MkIV continues only when position =
yes
what's wrong, you can add \unless before the \ifx and the layer
mechanism works.
\unless\ifx\@@currentlayerposition\v!yes
\edef\@@currentlayerrepeat{\csname\??ll\currentlayer\c!repeat
\endcsname}%
% \edef\@@currentlayerstate {\csname\??ll\currentlayer\c!state
\endcsname}% actually this is already set
\ifx\@@currentlayerrepeat\v!yes
\!!donecfalse
\else\ifx\@@currentlayerstate\v!repeat
\!!donecfalse
\fi\fi
\fi
\fi
Wolfgang
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
archive : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________