[NTG-context] markings and syncing

Wolfgang Schuster schuster.wolfgang at gmail.com
Thu Oct 22 17:59:45 CEST 2015


> Thomas A. Schmitz <mailto:thomas.schmitz at uni-bonn.de>
> 22. Oktober 2015 um 13:51
> Hi,
>
> I'm trying to set up a header: if a page contains only one marking, it 
> should display this, if it has more than one, display the first and 
> last. Here's what I tried, unsuccessfully:
>
> \definemarking [test]
>
> \startsetups [test header]
> \doifelse {\expanded{\getmarking[test][top]}} 
> {\expanded{\getmarking[test][bottom]}}
>     {\getmarking[test][top]}
>     {\getmarking[test][top] and \getmarking[test][bottom]}
> \stopsetups
>
> \setupheadertexts [\setups{test header}]
>
> \starttext
>
> \marking[test] {One}
>
> \input knuth
>
> \marking [test] {Two}
>
> \page
>
> \marking [test] {Three}
>
> \input tufte
>
> \stoptext
>
> How can I make the \doifelse work? I'm not sure I understand the 
> keywords top/bottom, first/last, and previous/next.
You have to use the \fetchmark command (which is currently broken but I 
sent a fix to the dev list)
to check the content of both marks because \getmarking isn’t expandable.

\startsetups [test header]
     \doifelse{\fetchmark[test][top]}{\fetchmark[test][bottom]}
         {\getmarking[test][top]}
         {\getmarking[test][top] and \getmarking[test][bottom]}
\stopsetups

Wolfgang
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.ntg.nl/pipermail/ntg-context/attachments/20151022/c42d88be/attachment.html>


More information about the ntg-context mailing list