Mediawiki/Erweiterung/Syntaxhighlight GESHI

Aus Mikiwiki
Zur Navigation springen Zur Suche springen

Die Mediawiki-Erweiterung Syntaxhighlight GESHI dient der Syntaxhervorhebung von Programmcode. Wie die Tags "<pre>" und "<poem>" werden Leerzeichen dabei geschützt - der Code erscheint also genau, wie er eingegeben wurde. Zusätzlich kann auch eine Zeilennummerierung eingefügt werden.

Das Beispiel zeigt, wie HTML-Code eingefärbt werden kann.

<source lang="html4strict" line start=1>
HTML module goes here...
</source>

Optionen

Es werden über 100 Sprachen unterstützt, darunter die folgenden.

Option Programmiersprache
apache Apache Log
bash Bash
c C
cpp C++
css Cascading Stylesheets / CSS
diff diff
html4strict HTML
java Java
java5 Java(TM) 2 Platform Standard Edition 5.0
javascript JavaScript
mysql MySQL
perl Perl
php PHP
python Python
ruby Ruby
sql SQL
xml XML

Installation

1. Herunterladen der vier Erweiterungsdateien aus dem Subversion-Repository ins Verzeichnis "extensions/SyntaxHighlight_GeSHi" des Wikis.

$ cd /var/www/mikiwiki/extensions
$ svn co http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/SyntaxHighlight_GeSHi

2. Herunterladen des 1.0.X stable release des Subversion-Repository von SourceForge.net.

$ cd SyntaxHighlight_GeSHi
$ svn co http://geshi.svn.sourceforge.net/svnroot/geshi/branches/RELEASE_1_0_X_STABLE/geshi-1.0.X/src/ geshi

3. Am Ende der Datei "LocalSettings.php" ist folgender Parameter einzutragen.

# Extension: SyntaxHighlight_GeSHi
require_once("extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php");

4. Wenn nötig, kann folgende Zeile in der Datei "SyntaxHighlight_GeSHi.class.php" angepasst werden, um den Pfad zur Datei "geshi.php" anzugeben. Je nach dem muss hier der absolute Pfad zur Datei "geshi.php" angegeben werden.

require("geshi/geshi.php");

Achtung: Zwar kann GeSHi auf diese Weise unter Mediawiki 1.10.0 installiert werden, jedoch wird jegliches Syntax-Highlighting innerhalb von "<div>"-Tags ausgeführt. Um auch die Ausführung innerhalb von "<pre>"-Tags zu ermöglichen, müssen folgende ältere Version installiert werden.

$ mkdir SyntaxHighlight_GeSHi && cd SyntaxHighlight_GeSHi
$ wget http://svn.wikimedia.org/viewvc/mediawiki/trunk/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.class.php?revision=28481 && \
     wget http://svn.wikimedia.org/viewvc/mediawiki/trunk/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.i18n.php?revision=28480  && \
     wget http://svn.wikimedia.org/viewvc/mediawiki/trunk/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php?revision=28551
$ mv SyntaxHighlight_GeSHi.class.php?revision=28481 SyntaxHighlight_GeSHi.class.php && \
    mv SyntaxHighlight_GeSHi.i18n.php?revision=28480 SyntaxHighlight_GeSHi.i18n.php   && \
    mv SyntaxHighlight_GeSHi.php?revision=28551 SyntaxHighlight_GeSHi.php
$ wget http://downloads.sourceforge.net/geshi/GeSHi-1.0.7.20.tar.bz2?modtime=1183339585&big_mirror=0
$ tar xjf GeSHi-1.0.7.20.tar.bz2 && rm GeSHi-1.0.7.20.tar.bz2

In die Datei "LocalSettings.php" ist folgende Zeile einzufügen, um die Erweiterung zu laden.

## Extension: SyntaxHighlight_GeSHi
require_once("extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php");

Weblinks

Vorlage:dewi