Hello, I've got a running page head like this in my document: \def\CurrentUser{\cldcontext{os.resultof"whoami"}} \def\Markname { Compiled \date by \CurrentUser \LUATEX +\ConTeXt\ \contextversion } and later: \setlayer[cropmark][preset=lefttop,x=3cm,y=-1.5\lineheight]{\Markname} But when I run this, I get a UCS error that seems to indicate that the *result* of \CurrentUser ("waxhaw\huttar") is getting parsed as a command sequence. Here's the error: ! Undefined control sequence. 1 >> % see ConTeXt wiki http://wiki.contextgarden.net/Imposition#Cut_marks 2 3 %% TODO: make sure this doesn't reevaluate every time 4 %% the command sequence is used! 5 \define\CurrentUser{\cldcontext{os.resultof"whoami"}} 6 7 \def\Markname { Compiled \date by \CurrentUser \LUATEX +\ConTeXt\ \conte xtversion. SVN } ... l.1 waxhaw\huttar \cldcontext #1x-\directlua {context(#1)} \Markname #- Compiled \date by \CurrentUser \LUATEX +\ConTeXt \ \contextvers... l.24 ...t=lefttop,x=3cm,y=-1.5\lineheight]{\Markname } How can I change the definition of \CurrentUser, or \Markname, to output the result of \CurrentUser as-is, instead of parsing the result? I tried (somewhat blindly) changing \def to \define, but it didn't make any difference. At the same time, I want to make sure that the processor won't be making an OS system call to "whoami" every time \CurrentUser is evaluated: I want it to happen only once, when \CurrentUser is defined. Here is my complete working example: \def\CurrentUser{\cldcontext{os.resultof"whoami"}} \def\Markname { Compiled \date by \CurrentUser \LUATEX +\ConTeXt\ \contextversion. } \setuplayout[location=middle,marking=on] \definelayer[cropmark][state=repeat,width=\paperwidth,height=\paperheight] \setupbackgrounds[page][background=cropmark] \setlayer[cropmark][preset=lefttop,x=3cm,y=-1.5\lineheight]{\Markname} \starttext Foo \stoptext Thanks for any help. Lars