% language=us runpath=texruns:manuals/cld \startenvironment cld-environment \usemodule[abr-04] \setuplayout [width=middle, height=middle, backspace=2cm, topspace=1cm, footer=0pt, bottomdistance=1cm, bottom=1cm, bottomspace=2cm] \setuppagenumbering [alternative=doublesided] \definecolor[darkred] [r=.5] \definecolor[darkgreen][g=.5] \definecolor[darkblue] [b=.5] \definecolor[red] [darkred] \definecolor[green][darkgreen] \definecolor[blue] [darkblue] \definetype [boldtypebig] [style=\ttbfa] \definetype [boldtype] [style=\ttbf] \definetyping [smalltyping] [bodyfont=small] \setuptype [color=blue] \setuptyping [color=blue] \setupbodyfont [palatino,11pt] \setuphead [chapter] [style=\bfc, color=blue] \setuphead [section] [style=\bfb, color=blue] \definehead [summary] [subsubsubsubject] \setuphead [summary] [style=, deeptextcommand=\boldtypebig, color=blue] \definehead [subsummary] [subsubsubsubsubject] \setuphead [subsummary] [style=, before=\blank, after=\blank, deeptextcommand=\type, command=\MySubSummaryHead, color=blue] \unexpanded\def\MySummaryHead#1#2% {\framed [frame=off, bottomframe=on, offset=0cm] {#2}} \unexpanded\def\MySubSummaryHead#1#2% {\framed [frame=off, bottomframe=on, offset=0cm] {#2}} \setupwhitespace [big] \setupheadertexts [] \setupheadertexts [] [{\getmarking[chapter]\quad\pagenumber}] [{\pagenumber\quad\getmarking[chapter]}] [] \setupheader [color=darkblue] \setuplist [chapter,title] [color=darkblue, style=bold] \setupbottom [style=\bfx, color=darkred] \setupbottomtexts [preliminary, uncorrected version -- \currentdate] % special functions \unexpanded\def\ShowLuaExampleOne#1#2#3% {\bgroup \obeyluatokens \startsubsummary[title={#1.#2(#3)}] \ctxlua{table.tocontext(#3)} \stopsubsummary \egroup} \unexpanded\def\ShowLuaExampleTwo#1#2#3% {\bgroup \obeyluatokens \startsubsummary[title={#1.#2(#3)}] \ctxlua{table.tocontext(#1.#2(#3))} \stopsubsummary \egroup} \unexpanded\def\ShowLuaExampleThree#1#2#3% {\bgroup \obeyluatokens \startsubsummary[title={#1.#2(#3)}] \ctxlua{string.tocontext(tostring(#1.#2(#3)))} \stopsubsummary \egroup} \unexpanded\def\ShowLuaExampleFour#1#2#3#4% {\bgroup \obeyluatokens \startsubsummary[title={t=#3 #1.#2(t#4)}] \ctxlua{local t = #3 #1.#2(t#4) table.tocontext(t)} \stopsubsummary \egroup} \unexpanded\def\ShowLuaExampleFive#1#2% {\bgroup \obeyluatokens \startsubsummary[title={#1.#2}] \ctxlua{string.tocontext(tostring(#1.#2))} \stopsubsummary \egroup} \unexpanded\def\ShowLuaExampleSix#1#2#3% {\bgroup \obeyluatokens \startsubsummary[title={#1.#2(#3)}] \ctxlua{string.tocontext(#1.#2(#3))} \stopsubsummary \egroup} \unexpanded\def\ShowLuaExampleSeven#1#2#3% {\bgroup \obeyluatokens \startsubsummary[title={#1.#2(#3)}] \ctxlua{string.tocontext(table.concat({#1.#2(#3)}," "))} \stopsubsummary \egroup} \unexpanded\def\ShowLuaExampleTable#1% {\bgroup \obeyluatokens \startsubsummary[title={#1}] \ctxlua{table.tocontext(#1,false)} \stopsubsummary \egroup} \unexpanded\def\ShowLuaExampleTableHex#1% {\bgroup \obeyluatokens \startsubsummary[title={#1}] \ctxlua{table.tocontext(#1,false,false,true,true)} % name, reduce, noquotes, hex \stopsubsummary \egroup} \unexpanded\def\ShowLuaExampleString#1% {\bgroup \obeyluatokens \startsubsummary[title={#1}] \ctxlua{string.tocontext(#1)} \stopsubsummary \egroup} \unexpanded\def\ShowLuaExampleBoolean#1% {\bgroup \obeyluatokens \startsubsummary[title={#1}] \ctxlua{boolean.tocontext(#1)} \stopsubsummary \egroup} % interaction \setupinteraction [state=start, color=, contrastcolor=] \setuplist [chapter,section] [interaction=all] % a hack: \startluacode function document.checkcldresource(filename) if environment.arguments.runpath then -- We're running elsewhere so we can have started fresh. local cldname = file.replacesuffix(filename,"cld") local pdfname = file.replacesuffix(filename,"pdf") if not lfs.isfile(pdfname) then -- We don't have the titlepage yet but need to fetch -- the template from the real path. local path = environment.arguments.path if lfs.isdir(path) then os.execute('context --global --path="' .. path .. '" ' .. cldname) else -- bad news end end end end \stopluacode \stopenvironment