Hello list,
I've found what it looks like a bug in XML handling in ConTeXt. Try this:

\startbuffer[test]
<text>
  <!-- with following semicolon: ampersand and semicolon are eaten -->
  <p>Me &amp; my friends; you &amp; your friends.</p>
  <!-- without following semicolon: everything ok -->
  <p>Me &amp; my friends. You &amp; your friends.</p>
  <!-- way around: place a comment after the ampersand -->
  <p>Me &amp;<!-- --> my friends; you &amp; your friends.</p>
</text>
\stopbuffer

\startxmlsetups xml:somesetups
  \xmlsetsetup{#1}{text}{xml:text}
  \xmlsetsetup{#1}{p}{xml:p}
\stopxmlsetups

\xmlregistersetup{xml:somesetups}

\startxmlsetups xml:text
  \xmlflush{#1}
\stopxmlsetups

\startxmlsetups xml:p
  \xmlflush{#1}\par\blank[line]
\stopxmlsetups

\starttext
  \xmlprocessbuffer{main}{test}{}
\stoptext

In the first case, the ampersand and the following semicolon are eaten up.
I've found a way around, until the bug is fixed (if it's a bug and not my
limited knowledge of ConTeXt): put a XML comment after the ampersand,
and everything works as expected.
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : [email protected] / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to