result = command;
ltrimmed = true;
}
- if (handling & ParamInfo::HANDLING_LATEXIFY
- || handling & ParamInfo::HANDLING_INDEX_ESCAPE)
+ if (handling & ParamInfo::HANDLING_LATEXIFY)
if ((*this)["literal"] == "true")
handling = ParamInfo::HANDLING_NONE;
uncodable));
}
}
- // INDEX_ESCAPE is independent of the others
- if (handling & ParamInfo::HANDLING_INDEX_ESCAPE) {
- // Now escape special commands
- static docstring const quote = from_ascii("\"");
- int const nchars_escape = 4;
- static char_type const chars_escape[nchars_escape] = { '"', '@', '|', '!' };
-
- if (!result.empty()) {
- // The characters in chars_name[] need to be changed to a command when
- // they are LaTeXified.
- for (int k = 0; k < nchars_escape; k++)
- 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]);
- }
- }
return ltrimmed ? ltrim(result) : result;
}
HANDLING_ESCAPE = 2, /// escape special characters
HANDLING_LATEXIFY = 4, /// transform special characters to LaTeX macros
HANDLING_LTRIM = 8, /// trim blanks on the left
- HANDLING_INDEX_ESCAPE = 16, /// escape makeindex special chars
};
///
class ParamData {