Farben der Code-Abschnitte

Hier findest Du Hilfe zur Forum, was hier wie funktioniert. Weiterhin kannst Du hier Wünsche und Anregungen sowie Probleme mitteilen.


Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Farben der Code-Abschnitte

Beitrag von KOMA »

In den Code-Abschnitten werden die Kommentare hellgrau eingefärbt. Dadurch sind sie zum Einen nicht ganz einfach zu entziffern, zum anderen verleitet die Farbe dazu, sie dann auch nicht zu beachten. Wenn ich mir schon die Mühe eines Kommentars mache, hätte ich aber gerne, dass er auch gelesen wird. Etwas wie (auf tt konnte ich leider nicht umschalten, um eine direkte Vergleichbarkeit zu ermöglichen):
% Hier musst Du gleich aufpassen:
wäre mir jedenfalls lieber, als:
% Hier kannst Du jetzt wegschauen:

pospiech
Moderator
Moderator
Beiträge: 247
Registriert: Do 3. Jul 2008, 11:40
Wohnort: Hannover
Kontaktdaten:

Beitrag von pospiech »

Das Problem ist das offensichtlich bbcode nach geshi nicht ausgeführt wird.
% normal
% [b]dies ist Fett[/b]
% [i] Kursiv[/i]
% [color=red]rot[/color] 
Man kann natürlich die Einstellungen für geshi (den Syntaxhighlighter) ändern.
Die Farben sind übrigens zum großen Teil von mir verbrochen worden (http://www.matthiaspospiech.de/blog/200 ... webseiten/)

Das gleiche Beispiel hier
% Beispieldokument
\documentclass[a4paper, 11pt,german]{scrartcl}
\usepackage{lmodern}
\usepackage{textcomp}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{graphicx}
\begin{document}
	$ a = b + c $
	\begin{equation}
		a = b + c
	\end{equation}
	\begin{figure}
		\includegraphics{Bild.png}
	\end{figure}
	\section{Einleitung}
	Dies ist ein beliebig langer Satz ohne konkreten Hintergrund.
	\cite[S. 22]{Mustermann}
\end{document}
Wie man sieht ist rot schon verbraucht. Die Farbewahl habe ich von KDE übernommen. Eine alternative Färbung kann man natürlich implementieren, z.B. die von emacs, und dann darauf achten das die Kommentare besser zu lesen sind.

Das ganze läuft übrigens ausschließlich über reguläre Ausdrücke.

Matthias

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

pospiech hat geschrieben:Das Problem ist das offensichtlich bbcode nach geshi nicht ausgeführt wird.
Das ist mir egal. Mich strengt das Hellgrau - nicht nur, aber besonders nach einem langen Tag - einfach extrem beim Lesen an. Deshalb finde ich diese Farbwahl sehr, sehr ungünstig. Ob man das nun auf rot oder violett oder dunkelgrün ändert, ist mir letztlich egal. Es bringt mich auch nicht um, dass BBCode an der Stelle nicht funktioniert (obwohl es natürlich praktisch wäre, wenn man in einem Kommentar einen funktionierenden Link setzen könnte). Ich will ja nicht alle Kommentare manuell färben. Ich hätte gerne, dass alle Kommentare automatisch nicht ausgerechnet Hellgrau dargestellt werden.

Da die Kommentare außerdem auch noch schräg gestellt werden, wäre übrigens die Mehrfachverwendung von Rot IMHO nicht wirklich ein Problem.

BTW: Auf Deiner Seite Syntaxhighlighting von LaTeX in Webseiten finde ich das Hellgrau noch ungeschickter, da der Hintergrund dort auch noch leicht eingefärbt ist.

Mag ja sein, dass ich langsam alt werde und meine Augen nachlassen. Aber es gibt LaTeX-Anwender, die noch weit älter sind.
Zuletzt geändert von KOMA am Mo 4. Aug 2008, 18:14, insgesamt 1-mal geändert.

pospiech
Moderator
Moderator
Beiträge: 247
Registriert: Do 3. Jul 2008, 11:40
Wohnort: Hannover
Kontaktdaten:

Beitrag von pospiech »

Um nicht falsch verstanden zu werden - ich finde deinen Vorschlag vollkommen zutreffend. Wenn ich dazukomme spiele ich heute Abend oder im Laufe der Woche mal mit der Installation auf meinem Server und poste das Beispiel dann hier.

Konkrete Vorschläge wie man es ändern könnte - vielleicht auch anhand von Schemas die andere Editoren verwenden nehme ich dafür auch gerne entgegen.

Und das Problem mit bbcode sollte langfristig auch behoben werden.

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

pospiech hat geschrieben:Konkrete Vorschläge wie man es ändern könnte - vielleicht auch anhand von Schemas die andere Editoren verwenden nehme ich dafür auch gerne entgegen.
Dazu müsste ich erst einmal verstehen, warum einige Anweisungen hellrot und andere dunkelrot eingefärbt sind. Ich kann da leider kein System dahinter erkennen. So kann ich nur folgende vier Tests empfehlen:
  • Hellrot --> Violett und Hellgrau --> Hellrot
  • Hellrot --> Dunkelrot und Dunkelrot --> Violett und Hellgrau --> Hellrot
  • Hellgrau --> Violett
  • Dunkelrot --> Violett und Hellgrau --> Dunkelrot
Nachsatz: emacs ist bei mir übrigens so eingestellt (Code einfach als HTML-Datei speichern und dann im Browser anzeigen lassen, um die verwendeten Farben zu sehen):
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<!-- Created by htmlize-1.30 in font mode. -->
<html>
  <head>
    <title>tmp.tex</title>
  </head>
  <body text="#000000" bgcolor="#dfddc3">
    <pre>
<font color="#b22222">% </font><font color="#b22222">Beispieldokument
</font><font color="#a020f0">\documentclass</font><font color="#b8860b">[a4paper, 11pt,german]</font><font color="#0000ff">{scrartcl}</font>
<font color="#a020f0">\usepackage</font><font color="#0000ff">{lmodern}</font>
<font color="#a020f0">\usepackage</font><font color="#0000ff">{textcomp}</font>
<font color="#a020f0">\usepackage</font><font color="#b8860b">[german]</font><font color="#0000ff">{babel}</font>
<font color="#a020f0">\usepackage</font><font color="#b8860b">[T1]</font><font color="#0000ff">{fontenc}</font>
<font color="#a020f0">\usepackage</font><font color="#b8860b">[latin1]</font><font color="#0000ff">{inputenc}</font>
<font color="#a020f0">\usepackage</font><font color="#0000ff">{graphicx}</font>
<font color="#a020f0">\begin</font><font color="#0000ff">{document}</font>
<font color="#8b4513">$ a = b + c $</font>
<font color="#a020f0">\begin</font><font color="#0000ff">{equation}</font><font color="#8b4513">
  a = b + c
</font><font color="#a020f0">\end</font><font color="#0000ff">{equation}</font>
<font color="#a020f0">\begin</font><font color="#0000ff">{figure}</font>
  <font color="#696969">\includegraphics</font>{Bild.png}
<font color="#a020f0">\end</font><font color="#0000ff">{figure}</font>
<font color="#a020f0">\section</font><font color="#00008b"><b>{Einleitung}</b></font>
Dies ist ein beliebig langer Satz ohne konkreten Hintergrund.
<font color="#a020f0">\cite</font><font color="#b8860b">[S. 22]</font><font color="#5f9ea0">{Mustermann}</font>

<font color="#a020f0">\begin</font><font color="#0000ff">{table}</font>[tb]
  <font color="#a020f0">\centering</font>
  <font color="#a020f0">\begin</font><font color="#0000ff">{tabular}</font>{ll}
    links Spalte <font color="#ff0000"><b>&</b></font> rechte Spalte <font color="#ff0000"><b>\\</b></font>
  <font color="#a020f0">\end</font><font color="#0000ff">{tabular}</font>
  <font color="#a020f0">\caption</font><font color="#b8860b">[Eine Testtabelle]</font><font color="#228b22">{Testtabelle}</font>
  <font color="#a020f0">\label</font><font color="#5f9ea0">{tab:test}</font>
<font color="#a020f0">\end</font><font color="#0000ff">{table}</font>
        
<font color="#a020f0">\end</font><font color="#0000ff">{document}</font>
</pre>
  </body>
</html>
Wobei ich das Mittelgrau für die unbekannten Befehle immer schon einmal ändern wollte, aber nie dazu gekommen bin. :roll:

Benutzeravatar
Johannes
Admin
Admin
Beiträge: 250
Registriert: So 29. Jun 2008, 00:00
Wohnort: Böblingen

Beitrag von Johannes »

NAbend,
die Kritik am grau ist berechtigt. Mir ist es ganz zu Anfang auch schonmal aufgefallen. Aber dann habe ich mich wohl dran gewöhnt. Doch ihr habt recht. Die Farben könnten wirklich überarbeitet werden. Ich finde die Idee mit dem Highlighting aus emacs nicht schlecht. Nur für \begin \end würde ich noch andere Farben nehmen. Aber ich denke da lässt sich noch einiges anpassen. Grundsätzlich fände ich das aus C alt bewährte grün für Kommentare nicht schlecht.

Schauen wir mal das wir das angepasst kriegen.

Gruß
Johannes
goLaTeX Knigge - Eine kleine Liste von wichtigen Regeln, die jeder beachten sollte
goLaTeX-Wiki

pospiech
Moderator
Moderator
Beiträge: 247
Registriert: Do 3. Jul 2008, 11:40
Wohnort: Hannover
Kontaktdaten:

Beitrag von pospiech »

Hier ist ein neuer Stil:
http://www.matthiaspospiech.de/blog/200 ... hlighting/

Wie der Code dazu aussieht hier zu sehen:
http://www.matthiaspospiech.de/download ... xemacs.txt
(bitte in Editor der Wahl kopieren um auch hier Syntax Highlighting zu haben)

Die Farbe bei den Mathumgebungen von emacs finde ich nicht so überzeugend, weil sie sich von den anderen Farben nicht so sehr abhebt, aber ich habe es erstmal übernommen.

Einige Dinge funktionieren nicht:
- Symbols (&, \\, usw.). '\\' konnte ich über RA abfangen, aber & wandelt er mir dabei in "&" um, was ich natürlich nicht will.
- Keywords. Ich habe einfach mal die Liste aus dem listing Paket übernommen. Aber diese Wörter werden irgendwie vollkommen ignoriert...

Farben können ganz einfach geändert werden. Umgebungen wie bei den \section zu ändern ist hingegen mit etwas Gehirnakrobatik verbunden. Das Problem ist nämlich das alle Textstellen nur einmal ausgewertet werden können. Wenn eine der ersten RA zugetroffen hat, werden die weiter unten nicht mehr ausgewertet.

Um die Datei hier im Forum zu installieren einfach ins Geshi Verzeichnis kopieren und der Code Umgebung statt "latex" "latexemacs" zuweisen.

Matthias

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

pospiech hat geschrieben:Die Farbe bei den Mathumgebungen von emacs finde ich nicht so überzeugend, weil sie sich von den anderen Farben nicht so sehr abhebt, aber ich habe es erstmal übernommen.
Bei emacs wurde Grün ja bereits verwendet. Bei Dir hingegen nicht. Also könntest Du für Mathe wieder ein Grün verwenden, wenn Du es gerne deutlicher hättest.

Ich frage mich gerade, ob man noch Befehle mit @ anders hervorheben sollte. Für Anfänger wäre es vielleicht ganz nützlich, wenn sie quasi mit der Nase darauf gestoßen würden, dass da etwas anders ist.

Auf jeden Fall, kann man jetzt die Kommentare lesen. Das ist für mich ein deutlicher Fortschritt.

pospiech
Moderator
Moderator
Beiträge: 247
Registriert: Do 3. Jul 2008, 11:40
Wohnort: Hannover
Kontaktdaten:

Beitrag von pospiech »

KOMA hat geschrieben: Ich frage mich gerade, ob man noch Befehle mit @ anders hervorheben sollte. Für Anfänger wäre es vielleicht ganz nützlich, wenn sie quasi mit der Nase darauf gestoßen würden, dass da etwas anders ist.
So z.B?
http://www.matthiaspospiech.de/blog/200 ... t-an-emacs

Wobei ich überlege diese in Rot und dafür die Roten in Grün darzustellen oder so.


Ich überlege noch ob man nicht doch die Umgebungen anders darstellen sollte als die Befehle, so wie im ursprünglichen Beispiel, nur mit anderen Farben. Dazu fehlt mir aber noch die Idee mit welcher Farbekombination ich das machen sollte. Zu bunt soll es ja auch nicht werden.

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

pospiech hat geschrieben:So z.B?
http://www.matthiaspospiech.de/blog/200 ... t-an-emacs

Wobei ich überlege diese in Rot und dafür die Roten in Grün darzustellen oder so.
Ich wäre für diese Vertauschung. Rot hat zumindest in westlichen Ländern eine Gefahren-Signal-Wirkung, während Grün mehr mit »Alles klar« verbunden wird. In dem Fall ginge es auch noch, dass man \cite etc. in einem Grün und Mathe in einem anderen Grün darstellen würde. Wobei ich nicht ganz einsehe, warum man, \cite, \ref, \label und \pageref unbedingt zusätzlich hervorheben muss. Bei 100 Seiten LaTeX-Code mag das nützlich sein. Bei eher kleinen Code-Abschnitten im WWW sehe ich das nicht so. Außerdem gibt es inzwischen weit mehr Zitat-Befehle als nur das im LaTeX-Kern vorgesehene \cite. Man müsste dann schon die Abarten davon, die natbib, jurabib oder biblatex bereit stellen, ebenfalls hervorheben.
pospiech hat geschrieben:Ich überlege noch ob man nicht doch die Umgebungen anders darstellen sollte als die Befehle, so wie im ursprünglichen Beispiel, nur mit anderen Farben. Dazu fehlt mir aber noch die Idee mit welcher Farbekombination ich das machen sollte. Zu bunt soll es ja auch nicht werden.
Nichts dagegen, nur sollte es nicht unbedingt Rot sein, wie in der KDE-Färbung (Begründung siehe oben). Ein dunkleres Rot passt wegen der Kommentare nicht so gut. Man könnte allenfalls im Lila/Viloett-Bereich experimentieren. Auf der anderen Seite sollten in sauber formatiertem Quelltext Umgebungen durchaus erkennbar sein.

Wenn Du allerdings die Farbe für \cite etc. einsparst, dann läge es nahe die Matheumgebungen mit einem Grün und in Anlehnung daran, Anfang und Ende anderer Umgebungen mit einem etwas anderen Grün zu markieren.

Antworten