Le 14/06/2016 21:16, Cor Blom a écrit :
Op 14-06-16 om 22:09 schreef Guillaume Munch:
Le 14/06/2016 18:44, Cor Blom a écrit :
Hi,

Recently I tried lyx with a dark color scheme (breeze-dark  under kde
plasma 5). Ihe toolbar icons are problematic, but I know how to fix that
(and the oxygen set is not that bad against a dark background). In
general I'm happy about it. There is one issue. I don't know whether
it's possible and I'm missing something, or not.

Under de Documents > Settings, in the preamble part, blue is used for
code. Against a dark background this is unreadable. Also in the code
view panel, de latex commands are blue, which makes them unreadable. Is
that color configurable somewhere? I've searched but can't find the
solution.

Thanks,

Cor


Hi,

Can you compile master and test a patch I send you?

Guillaume



Yes I can.

Cor



diff --git a/src/frontends/qt4/LaTeXHighlighter.cpp b/src/frontends/qt4/LaTeXHighlighter.cpp
index 9a9e545..fa949a6 100644
--- a/src/frontends/qt4/LaTeXHighlighter.cpp
+++ b/src/frontends/qt4/LaTeXHighlighter.cpp
@@ -19,13 +19,23 @@
 namespace lyx {
 namespace frontend {
 
+
 LaTeXHighlighter::LaTeXHighlighter(QTextDocument * parent)
 	: QSyntaxHighlighter(parent)
 {
-	keywordFormat.setForeground(Qt::darkBlue);
+	auto blend = [](QColor color1, QColor color2) {
+		int r = 0.5 * (color1.red() + color2.red());
+		int g = 0.5 * (color1.green() + color2.green());
+		int b = 0.5 * (color1.blue() + color2.blue());
+		return QColor(r, g, b);
+	};
+	QPalette palette = QPalette();
+	QColor text_color = palette.color(QPalette::Active, QPalette::Text);
+	keywordFormat.setForeground(blend(Qt::blue, text_color));
 	keywordFormat.setFontWeight(QFont::Bold);
-	commentFormat.setForeground(Qt::darkGray);
-	mathFormat.setForeground(Qt::red);
+	commentFormat.setForeground(palette.color(QPalette::Disabled,
+	                                          QPalette::Text));
+	mathFormat.setForeground(blend(Qt::red, text_color));
 	warningFormat.setForeground(Qt::red);
 	warningFormat.setFontWeight(QFont::Bold);
 }

Reply via email to