Menu

#22 '$' not escaped properly in children of <filename>

open
nobody
None
5
2004-09-24
2004-09-24
Anonymous
No

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

Discussion

  • Nobody/Anonymous

    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

     
  • Nobody/Anonymous

    Logged In: NO

    Testing with Saxon 6.4 demonstrates the same behaviour

    philip.rodrigues@chch.ox.ac.uk

     

Log in to post a comment.

Auth0 Logo