]> git.lyx.org Git - lyx.git/commitdiff
Properly escape special characters (!, @, |) in nomenclature output
authorJuergen Spitzmueller <spitz@lyx.org>
Mon, 12 Aug 2024 16:22:57 +0000 (18:22 +0200)
committerJuergen Spitzmueller <spitz@lyx.org>
Mon, 12 Aug 2024 16:22:57 +0000 (18:22 +0200)
src/insets/InsetCommandParams.cpp
status.24x

index 9c3552a4b7262f4661003384e44ee7e7654aed80..a341f73233d6a76f4de7de8546be2d7649ebd8ae 100644 (file)
@@ -550,9 +550,11 @@ docstring InsetCommandParams::prepareCommand(OutputParams const & runparams,
        // INDEX_ESCAPE is independent of the others
        if (handling & ParamInfo::HANDLING_INDEX_ESCAPE) {
                // Now escape special commands
-               static docstring const quote = from_ascii("\"");
+               // We only use this for nomencl, which has the
+               // escape char '%'
+               static docstring const esc_char = from_ascii("%");
                int const nchars_escape = 4;
-               static char_type const chars_escape[nchars_escape] = { '"', '@', '|', '!' };
+               static char_type const chars_escape[nchars_escape] = { '@', '|', '!' };
 
                if (!result.empty()) {
                        // The characters in chars_name[] need to be changed to a command when
@@ -561,7 +563,7 @@ docstring InsetCommandParams::prepareCommand(OutputParams const & runparams,
                                for (size_t i = 0, pos;
                                        (pos = result.find(chars_escape[k], i)) != string::npos;
                                        i = pos + 2)
-                                               result.replace(pos, 1, quote + chars_escape[k]);
+                                               result.replace(pos, 1, esc_char + chars_escape[k]);
                }
        }
 
index 0520e69b48c8e6259508d147223315c50ad184a5..b0a7e1d40bf31422395c9e96e90228c1ea24f380 100644 (file)
@@ -61,6 +61,8 @@ What's new
 
 - When exporting to MathML, the argument of the \boxed{} macro is now
   correctly treated as math.
+  
+- Properly escape special characters (!, @, |) in nomenclature output.
 
 
 * USER INTERFACE