[NTG-context] problem with interaction and TOC
Wolfgang Schuster
schuster.wolfgang at gmail.com
Sun Mar 22 12:46:35 CET 2015
> Am 22.03.2015 um 11:53 schrieb Pablo Rodriguez <oinos at gmx.es>:
>
> On 03/22/2015 12:27 AM, Hans Hagen wrote:
>> On 3/21/2015 10:49 PM, Pablo Rodriguez wrote:
>>> Dear list,
>>>
>>> I have the following sample:
>>>
>>> \setupinteraction[state=start]
>>> \starttext
>>> \placelist[chapter]
>>> %~ \uppercasestring{context}\to\ascii
>>> %~ \chapter{\getvalue{\ascii}}
>>> \chapter{ConTeXt}
>>> \stoptext
>>>
>>> ConTeXt complains about an error in the first line.
>>>
>>> What am I doing wrong? (Sorry, but I wanted to test the commented lines,
>>> but I don’t know why the simplified example doesn’t work.)
>>
>> \uppercasestring{context}\to\ascii
>> \chapter{\meaning\ascii} % \getvalue{\ascii}}
>> \chapter{\WORD{ConTeXt}}
>>
>> so, \ascii is made undefined at some time
>
> Many thanks for your reply, Hans.
>
> I’m afraid that my ignorance prevents me for understanding your reply.
>
> What I was trying to solve was this:
>
> \startbuffer[demo]
> <doc>
> <h1><span label="context">ConTeXt</a></h1>
> <span label="context">ConTeXt</a>
> <span label="tex">TeX</a>
> <span label="latex">LaTeX</a>
> </doc>
> \stopbuffer
You’re mixing tags, each <span> ends with </a>.
> \setupinteraction[state=start]
>
> \startxmlsetups xml:initialize
> \xmlsetsetup{#1}{h1|span}{xml:*}
> \xmlsetsetup{#1}{span[@label]}{xml:logo}
> \xmlsetsetup{#1}{span[@label='context']}{xml:context}
> \stopxmlsetups
>
> \xmlregistersetup{xml:initialize}
>
> \startxmlsetups xml:h1
> \placecontent[criterium=all]
> \chapter{\xmlflush{#1}}
> \stopxmlsetups
>
> \startxmlsetups xml:logo
> \uppercasestring\xmlatt{#1}{label}\xmlatt{#1}{name}\to\ascii
> \ifx\ascii\empty\else\getvalue{\ascii}\fi
> \stopxmlsetups
>
> \startxmlsetups xml:context
> \ConTeXt
> \stopxmlsetups
>
> \starttext
> \xmlprocessbuffer{main}{demo}{}
> \stoptext
>
> xml:logo doesn’t work when it has to be parsed in a heading.
>
> Is there a fix for xml:logo or is xml:context the proper fix?
You need a expandable version for your logo tags.
\startxmlsetups xml:logo
\getvalue{\utfupper{\xmlatt{#1}{label}}}
\stopxmlsetups
You can also modify this and provide a text which appears when you try to show a logo which isn’t defined.
\startxmlsetups xml:logo
\executeifdefined{\utfupper{\xmlatt{#1}{label}}}{{\tttf ???}}
\stopxmlsetups
Wolfgang
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.ntg.nl/pipermail/ntg-context/attachments/20150322/35a90206/attachment-0001.html>
More information about the ntg-context
mailing list