Login
Newsletter
Fr, 11. Oktober 2002, 20:50

Syntax Highlighting von Vim nach HTML konvertieren

Jeder bessere Texteditor bietet heute Syntax Highlighting (farbliche Hervorhebung des Quellcodes) für mindestens eine Handvoll Programmier- und Auszeichnungssprachen (HTML, SGML ...).

Wenn man seinen Quellcode nun aber in einem HTML-Dokument präsentieren will, dann hat man wieder einen einfarbigen und langweiligen Quelltext, obwohl gerade im Web eine ansprechendere Präsentation mit Syntax Highlighting angebracht wäre.

Deshalb gibt es eigene Programme, die nur den Zweck haben, Quellcode in eine farblich hervorgehobene HTML-Darstellung zu konvertieren. Allerdings sind diese Programme auf wenige Programmiersprachen (meist nur C/C++ und Java) begrenzt und müssen zudem noch zusätzlich installiert werden.

Zum Glück geht es aber auch einfacher. Der Texteditor vim beherrscht nicht nur Syntax Highlighting für hunderte von Programmiersprachen, er kann aus der bunten Darstellung des Quelltextes im Editor auch entsprechend formatierten HTML-Code erzeugen.

Wie das geht? Öffnen Sie dazu einfach eine Datei mit Quellcode in einer von vim unterstützen Programmiersprache (C, Perl, PHP ...). Der Quelltext sollte jetzt farblich hervorgehoben sein. Geben Sie nun dieses Kommando
ein:

:runtime! syntax/2html.vim

Vim wird daraufhin ein neues Fenster mit dem formatierten HTML-Code erzeugen.

Zur Erinnerung: Wenn Sie zweimal Strg-C drücken, springt der Cursor zum nächsten Fenster. Mit :close bzw. :close! (nicht speichern) können Sie das gerade aktive Fenster schließen.

Eigentlich haben wir damit unser Ziel schon erreicht und unseren Quellcode in eine farblich hervorgehobene HTML-Darstellung konvertiert. Es gibt aber noch zwei Optionen, die sehr nützlich sein können.

Zum einen sind in der HTML-Darstellung keine Zeilennummern enthalten. Wenn man vor dem Konvertieren den Befehl

:let html_number_lines = 1

eingibt, enthält die HTML-Darstellung des Quellcodes auch
Zeilennummern.

Der andere Punkt ist, dass Vim den Quellcode aus Rücksicht auf ältere Browser mit Hilfe von Font-Tags formatiert. Wenn Sie stattdessen mit CSS formatierten HTML-Code bevorzugen, erreichen Sie das mit diesem Befehl:

:let html_use_css = 1

Damit diese Einstellungen auch nach dem Beenden des Editors noch vorhanden sind, können Sie sie einfach in Ihre ~/.vimrc aufnehmen:

" Konfiguration für Syntax Highlighting => HTML
let html_number_lines = 1
let html_use_css = 1

Mehr Informationen zu diesem Thema (z.B. wie man mit einem Skript ein ganzes Verzeichnis mit Quelldateien konvertiert), findet man in der vim-Hilfe mit dem Kommando:

:help convert-to-HTML

Kommentare (Insgesamt: 41 || Alle anzeigen )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten