[NTG-context] xml parsing

Wolfgang Schuster schuster.wolfgang at googlemail.com
Fri Nov 28 10:22:07 CET 2008


Hi Thomas,

On Fri, Nov 28, 2008 at 9:43 AM, Thomas A. Schmitz
<Thomas.Schmitz at uni-bonn.de> wrote:
> Hi all, Hans,
>
> this is a terribly inaccurate bug report, and I apologize for its
> form, but it's something you and other people might want to look at.
> Or maybe I should change my files, I don't know. Here comes:
>
> SUMMARY
>
> The new mkiv xml parser sometimes "eats" parts of my xml files when
> they are typeset. It appears to skip parts of text between two tags.
>
> DESCRIPTION
>
> I have no minimal example, just a description: for my lectures, I have
> defined a counter to tell me when I  want to show the next slide:
>
> \definelabel[SlideNumber][headstyle=normal,way=bytext]
>
> \define\sln{\color[red]{ [\nextSlideNumber]}}
>
> For my xml files, I have wrapped this into a xml command:
>
> \startxmlsetups xml:sln
>        \sln
> \stopxmlsetups
>
> This works wonderfully in most cases. To make my source file more
> readable, I usually code
>
> foo
> <sln/>
> bar
>
> In this case, the xml parser SOMETIMES (not reproducibly,
> unfortunately) skips the "bar" part up to the next paragraph <p> tag.
> When I take away the line break and write
>
> foo <sln/> bar
>
> the "bar" part appears normally.
>
> ANECDOTE
>
> I write my lectures in xml so I can put them on a website for my
> students, and I deliver them from typeset notes. This happened to me
> last Tuesday. I had typeset and printed my notes, and then while
> lecturing realized that an entire paragraph was missing. I could ad-
> lib it, but this is not something you want to happen at an important
> job-talk...

I don't if this will help you but you can try the following three changes.


1. Change the defintion of \sln

\define\sln{\startcolor[red][\nextSlideNumber]\stopcolor}


2. Put a \relax after the xml setup for \sln

\startxmlsetups xml:sln
       \sln\relax
\stopxmlsetups


3. define \SlideNumber as TeX counter

\newcount\SlideNumber

\def\resetSlideNumber
  {\global\SlideNumber\zerocount\relax}

\def\incrementSlideNumber
  {\global\advance\SlideNumber\plusone\relax}

\def\currentSlideNumber
  {\number\SlideNumber\relax}

\def\nextSlideNumber
  {\incrementSlideNumber
   \currentSlideNumber}


(4. Switch the system or TeX installation, helped on my former
Windows installation with font problems)


Wolfgang


More information about the ntg-context mailing list