// Do we have an open font change?
bool open_font = false;
- Change runningChange = Change(Change::UNCHANGED);
+ Change runningChange =
+ runparams.inDeletedInset && !inInset().canTrackChanges()
+ ? runparams.changeOfDeletedInset : Change(Change::UNCHANGED);
Encoding const * const prev_encoding = runparams.encoding;
os << "{\\" << font.latexSize() << "\\par}";
}
- column += Changes::latexMarkChange(os, bparams, runningChange,
- Change(Change::UNCHANGED), runparams);
+ if (!runparams.inDeletedInset || inInset().canTrackChanges())
+ column += Changes::latexMarkChange(os, bparams, runningChange,
+ Change(Change::UNCHANGED), runparams);
// Needed if there is an optional argument but no contents.
if (body_pos > 0 && body_pos == size()) {
break;
odocstringstream os;
inset->toString(os);
- if (!os.str().empty()) {
- int const insetstringsize = os.str().length();
+ docstring const insetstring = os.str();
+ if (!insetstring.empty()) {
+ int const insetstringsize = insetstring.length();
for (int j = 0; j < insetstringsize && pos < parsize; ++i, ++j) {
- if (str[i] != os.str()[j]) {
+ if ((cs && str[i] != insetstring[j])
+ || (!cs && uppercase(str[i]) != uppercase(insetstring[j]))) {
nonmatch = true;
break;
}