highlight.png

Farbcodes

out of the box: highlight

01.01.2003
Wenn Sie selbstgeschriebene Quelltexte in eine Web-Seite oder eine Dokumentation integrieren, macht es sich gut, wenn die jeweiligen Codefragmente durch Syntax-Highlighting besser lesbar werden. Highlight bewältigt diese Aufgabe für Sie.

out of the box

Es gibt tausende Tools und Utilities für Linux. "out of the box" pickt sich die Rosinen raus und stellt pro Monat ein Progrämmchen vor, das wir für schlichtweg unentbehrlich oder aber zu Unrecht wenig beachtet halten.

Editoren mit Syntax-Highlighting gibt es viele, allerdings erlaubt es kaum einer, die formatierte und eingefärbte Darstellung zu speichern. Die Lücke füllt Highlight von André Simon, das allein diesem Zweck dient und unter der Adresse http://www.andre-simon.de/ zu beziehen ist. Natürlich befindet sich das Quelltext-Archiv highlight-1.3.tar.gz auch auf der Heft-CD. Da sich die Installation nicht im bekannten Dreisatz ./configure; make; make install erschöpft, legen wir zudem das Shell-Skript insthighlight.sh bei.

Diese beiden Dateien kopieren Sie in ein gemeinsames Verzeichnis. Dann starten Sie das Skript mit dem Kommando

sh insthighlight.sh

Im Verlauf der Installation fragt es Sie nach dem root-Passwort, weil es Schreibrechte im /usr/local-Zweig des Dateisystems braucht, genauer in /usr/local/bin und /usr/local/share/highlight.

Licht an

Für den ersten Einsatz des Programms reicht ein Aufruf in der Form

highlight -I quelldatei > ausgabedatei.html

Highlight erkennt den Typ der eingelesenen Datei an der Endung. Für die Ausgabe stehen drei Formate zur Verfügung: HTML mit Cascading Style Sheets (CSS), das Rich Text Format (RTF) und TeX.

Die Option -I bewirkt, dass die Style-Sheet-Definition in die Ausgabe-HTML-Datei integriert wird – ohne sie erzeugt das Programm eine separate Datei highlight.css im Arbeitsverzeichnis. Die entstandene Ausgabe können Sie sich in einem CSS-fähigen Browser ansehen. Abbildung 1 zeigt eine POV-Ray-Szenenbeschreibung, dargestellt von Mozilla.

Abbildung 1: HTML-Syntax-Highlighting in Mozilla

Farben und Formen

Falls Ihnen die Farbwahl nicht gefällt, probieren Sie einfach einen anderen Stil aus. Dies geschieht mit der Option -s, gefolgt vom Stil-Namen. Meine persönlichen Favoriten sind blue und darkness. Eine Übersicht der vorhandenen Stile erhalten Sie mit dem Kommando

ls /usr/local/share/highlight/@L: *.style

Um herauszufinden, welche Quelltext-Arten Highlight unterstützt, geben Sie das Kommando

ls /usr/local/share/highlight/@L: *.lang

ein. Aufmerksame Leser stellen dabei fest, dass die für Abbildung 1 verwendete Sprachdefinitionsdatei pov.lang nicht zu den aufgelisteten Dateien gehört. Wir liefern sie zusätzlich auf der Heft-CD mit – kopieren Sie pov.lang einfach nach /usr/local/share/highlight!

Für den Fall, dass die Eingabedatei keine passende Endung im Namen trägt, geben Sie den Dateityp mit der Option -S gefolgt vom Namen der Syntaxdefinition vor und lassen die Eingabedaten mit < von der Standardeingabe lesen. Beispielsweise erkennt Highlight das persönliche Start-Skript ~/.bashrc nicht automatisch als Shell-Skript, weil die Endung .sh fehlt. Mit der entsprechenden Vorgabe klappt es:

highlight -I -S sh < ~/.bashrc > bashrc.html

Wer schön formatierten Code in ein Office-Dokument einbinden will, generiert mit der Option -R nicht HTML, sondern RTF als Ausgabeformat:

highlight -R quelldatei > ausgabedatei.rtf

Mit dem RTF-Importfilter von Open- oder StarOffice lesen Sie nun die Ausgabedatei in ein existierendes Dokument ein. Abbildung 2 zeigt als Beispiel das Installationsskript, eingebettet in ein StarOffice-Dokument.

Abbildung 2: Schön formatiert und als RTF eingelesen

Anwender des Satzsystems TeX werden sich freuen, dass Highlight auch eine Ausgabe in diesem Format anbietet. Hierfür lautet der Aufruf

highlight -T quelldatei > ausgabedatei.tex

Um aus der .tex-Datei ein PostScript-Dokument zu machen, das sich mit gv anzeigen (Abbildung 3) oder mit lpr drucken lässt, muss sie noch den TeX-Interpreter und das Konvertierungstool dvips passieren:

tex ausgabedatei.tex
dvips ausgabedatei.dvi

Eine LaTeX-Ausgabe produziert die Option -L. Diese hat allerdings einen kleinen Schönheitsfehler: In der erzeugten Datei fehlt in der vorletzten Zeile eine geschweifte Klammer.

Abbildung 3: Ein PostScript-Dokument erhält man auf dem Umweg über TeX

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 02/2016: Alt-PCs flott machen

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Der Tipp der Woche

Schon gewußt?

14.11.2015

Auch unter Ubuntu 15.10 kann man wieder mit dem Startmedienersteller (alias Startup Disk Creator) ein Live-System auf einem USB-Stick einrichten. ...

Fehler des Startmedienerstellers von Ubuntu 15.10 umgehen

Aktuelle Fragen

Leap 42.1 und LibreOffice
Heinz Kolbe, 09.02.2016 21:54, 0 Antworten
Moin moin, auf meinem Notebook habe ich Leap 42.1 und Win 10 installiert. Alles läuft rund nur...
Tails Update
Val Lerie, 11.01.2016 10:51, 0 Antworten
Hallo zusammen, updaten > update Speichern unter > Persistent nicht möglich, mit der Meldung;...
Recoll
Jürgen Heck, 20.12.2015 18:13, 4 Antworten
Wie kann man mit Recoll nach bestimmten Zeichen/Satzzeichen bzw. Zeichenkombinationen suchen, z....
Wings Platinum 4 auf Linux?
Bodo Steguweit, 18.12.2015 11:37, 4 Antworten
Hallo in die Runde ich nutze für meine Diashows Wings Platinum 4 als Diareferent. Arbeite jetzt...
Bandbreite regulieren
Georg Armani, 25.11.2015 16:50, 1 Antworten
Hallo, ich bin ein Neuling in Sachen Linux und hoffe auf Hilfe. Ich habe zwei Windows Rechner...