When <filename> contains a $ followed by a child element, the $
is not escaped properly. A backslash is ouput, but no $, leading
to the next brace being escaped, instead of the $ that should be
there.
Example:
<filename>$<keycap>foo</keycap></filename>
produces:
{\texttt{{\{\texttt{{foo}}}}}}
The second backslash on the line should be followed by a $.
Without it, the brace is escaped, and a "Too many }'s" error is
raised by pdflatex.
Submitter: philip.rodrigues@chch.ox.ac.uk
Logged In: NO
After some further testing, I found:
Things that break:
<guimenu>$<accel>a</accel></guimenu>.
<filename>$<anything>anything</anything></filename>
<para>$<envar>HOME</envar></para>
This one doesn't break, but the output is wrong in the same way:
<para>$<programlisting>foo</programlisting></para>
Things that don't:
<filename>$foo</filename>
<para><guimenu>%<accel>a</accel></guimenu></para>
<para>#<envar>HOME</envar></para>
<para>^<envar>HOME</envar></para>
<para>{<envar>HOME</envar></para>
I have a feeling this might be an xsltproc bug, but I can't get any other
XSL processors working to test. FWIW, 'xsltproc --version' returns:
Using libxml 20611, libxslt 10108 and libexslt 806
xsltproc was compiled against libxml 20611, libxslt 10108 and libexslt
806
libxslt 10108 was compiled against libxml 20611
libexslt 806 was compiled against libxml 20611
Logged In: NO
Testing with Saxon 6.4 demonstrates the same behaviour
philip.rodrigues@chch.ox.ac.uk