Use different color for change-tracked greyedout text (#12025)

We use a blended version of the normal lyxadded and lyxdeleted colors
This commit is contained in:
Juergen Spitzmueller 2021-01-20 08:59:52 +01:00
parent 59869417b8
commit 0b31fcd083

View File

@ -193,45 +193,6 @@ static docstring const tabularnewline_def = from_ascii(
"%% Because html converters don't know tabularnewline\n"
"\\providecommand{\\tabularnewline}{\\\\}\n");
static docstring const lyxgreyedout_def = from_ascii(
"%% The greyedout annotation environment\n"
"\\newenvironment{lyxgreyedout}\n"
" {\\textcolor{note_fontcolor}\\bgroup\\ignorespaces}\n"
" {\\ignorespacesafterend\\egroup}\n");
static docstring const lyxgreyedout_rtl_def = from_ascii(
"%% The greyedout annotation environment (with RTL support)\n"
"\\NewEnviron{lyxgreyedout}{%\n"
"\\if@rl%\n"
"\\everypar{\\textcolor{note_fontcolor}\\beginL\\ignorespaces}%\n"
"\\BODY\\everypar{\\ignorespacesafterend\\endL}\n"
"\\else%\n"
"\\textcolor{note_fontcolor}\\bgroup\\ignorespaces%\n"
"\\BODY\\ignorespacesafterend\\egroup\n"
"\\fi}\n");
static docstring const lyxgreyedout_luartl_def = from_ascii(
"%% The greyedout annotation environment (with RTL support)\n"
"\\NewEnviron{lyxgreyedout}{%\n"
"\\if@RTL%\n"
"\\everypar{\\color{note_fontcolor}\\pardir TRT \\textdir TRT\\ignorespaces}%\n"
"\\BODY\\everypar{\\ignorespacesafterend}\n"
"\\else%\n"
"\\textcolor{note_fontcolor}\\bgroup\\ignorespaces%\n"
"\\BODY\\ignorespacesafterend\\egroup\n"
"\\fi}\n");
static docstring const lyxgreyedout_luartl_babel_def = from_ascii(
"%% The greyedout annotation environment (with RTL support)\n"
"\\NewEnviron{lyxgreyedout}{%\n"
"\\if@rl%\n"
"\\everypar{\\color{note_fontcolor}\\pardir TRT \\textdir TRT\\ignorespaces}%\n"
"\\BODY\\everypar{\\ignorespacesafterend}\n"
"\\else%\n"
"\\textcolor{note_fontcolor}\\bgroup\\ignorespaces%\n"
"\\BODY\\ignorespacesafterend\\egroup\n"
"\\fi}\n");
// We want to omit the file extension for includegraphics, but this does not
// work when the filename contains other dots.
// Idea from http://www.tex.ac.uk/cgi-bin/texfaq2html?label=unkgrfextn
@ -503,6 +464,7 @@ static docstring const textschwa_def = from_ascii(
// split-level fractions
static docstring const xfrac_def = from_ascii(
"\\usepackage{xfrac}\n");
static docstring const smallLetterFrac_def = from_ascii(
"\\DeclareCollectionInstance{smallLetterFrac}{xfrac}{default}{text}\n"
" {phantom=c, scale-factor=1.0, slash-left-kern=-.05em}\n"
@ -577,6 +539,88 @@ static docstring const lyxmintcaption_def = from_ascii(
" \\ifx#1b\\vskip\\baselineskip\\fi\n"
"}\n");
docstring const lyxgreyedoutDef(bool const ct)
{
odocstringstream ods;
ods << "%% The greyedout annotation environment\n"
<< "\\newenvironment{lyxgreyedout}\n"
<< "{";
if (ct)
ods << "\\colorlet{lyxadded}{lyxadded!30}\\colorlet{lyxdeleted}{lyxdeleted!30}";
ods << "\\textcolor{note_fontcolor}\\bgroup\\ignorespaces}\n"
<< " {\\ignorespacesafterend\\egroup}\n";
return ods.str();
}
docstring const lyxgreyedoutRTLDef(bool const ct)
{
odocstringstream ods;
ods << "%% The greyedout annotation environment (with RTL support)\n"
<< "\\NewEnviron{lyxgreyedout}{%\n"
<< "\\if@rl%\n"
<< "\\everypar{";
if (ct)
ods << "\\colorlet{lyxadded}{lyxadded!30}\\colorlet{lyxdeleted}{lyxdeleted!30}";
ods << "\\textcolor{note_fontcolor}\\beginL\\ignorespaces}%\n"
<< "\\BODY\\everypar{\\ignorespacesafterend\\endL}\n"
<< "\\else%\n";
if (ct)
ods << "\\colorlet{lyxadded}{lyxadded!30}\\colorlet{lyxdeleted}{lyxdeleted!30}";
ods << "\\textcolor{note_fontcolor}\\bgroup\\ignorespaces%\n"
<< "\\BODY\\ignorespacesafterend\\egroup\n"
<< "\\fi}\n";
return ods.str();
}
docstring const lyxgreyedoutLuaRTLDef(bool const ct)
{
odocstringstream ods;
ods << "%% The greyedout annotation environment (with RTL support)\n"
<< "\\NewEnviron{lyxgreyedout}{%\n"
<< "\\if@RTL%\n"
<< "\\everypar{";
if (ct)
ods << "\\colorlet{lyxadded}{lyxadded!30}\\colorlet{lyxdeleted}{lyxdeleted!30}";
ods << "\\color{note_fontcolor}\\pardir TRT \\textdir TRT\\ignorespaces}%\n"
<< "\\BODY\\everypar{\\ignorespacesafterend}\n"
<< "\\else%\n";
if (ct)
ods << "\\colorlet{lyxadded}{lyxadded!30}\\colorlet{lyxdeleted}{lyxdeleted!30}";
ods << "\\textcolor{note_fontcolor}\\bgroup\\ignorespaces%\n"
<< "\\BODY\\ignorespacesafterend\\egroup\n"
<< "\\fi}\n";
return ods.str();
}
docstring const lyxgreyedoutLuaRTLBabelDef(bool const ct)
{
odocstringstream ods;
ods << "%% The greyedout annotation environment (with RTL support)\n"
<< "\\NewEnviron{lyxgreyedout}{%\n"
<< "\\if@rl%\n"
<< "\\everypar{";
if (ct)
ods << "\\colorlet{lyxadded}{lyxadded!30}\\colorlet{lyxdeleted}{lyxdeleted!30}";
ods << "\\color{note_fontcolor}\\pardir TRT \\textdir TRT\\ignorespaces}%\n"
<< "\\BODY\\everypar{\\ignorespacesafterend}\n"
<< "\\else%\n";
if (ct)
ods << "\\colorlet{lyxadded}{lyxadded!30}\\colorlet{lyxdeleted}{lyxdeleted!30}";
ods << "\\textcolor{note_fontcolor}\\bgroup\\ignorespaces%\n"
<< "\\BODY\\ignorespacesafterend\\egroup\n"
<< "\\fi}\n";
return ods.str();
}
/////////////////////////////////////////////////////////////////////
//
@ -1691,17 +1735,18 @@ TexString LaTeXFeatures::getMacros() const
// the color is specified in the routine
// getColorOptions() to avoid LaTeX-package clashes
if (mustProvide("lyxgreyedout")) {
bool const ct = mustProvide("ct-xcolor-ulem");
// We need different version for RTL (#8647)
if (hasRTLLanguage()) {
if (runparams_.flavor == Flavor::LuaTeX)
if (useBabel())
macros << lyxgreyedout_luartl_babel_def;
macros << lyxgreyedoutLuaRTLBabelDef(ct);
else
macros << lyxgreyedout_luartl_def;
macros << lyxgreyedoutLuaRTLDef(ct);
else
macros << lyxgreyedout_rtl_def;
macros << lyxgreyedoutRTLDef(ct);
} else
macros << lyxgreyedout_def;
macros << lyxgreyedoutDef(ct);
}
if (mustProvide("lyxdot"))