Springe zum Hauptinhalt
Universitäts­rechen­zentrum
Syntax-Highlighting-Modul

Syntax-Highlighting-Modul

  1. Nutzung
  2. Beispiele
    1. Mehrzeilige Strings
    2. Innerhalb einer Zeile
    3. Auslesen einer Datei mit Zeilennummerierung

Mit Hilfe dieses Moduls können Webautoren Code-Blöcke zur besseren Übersicht einfach highlighten lassen. Unterstützt werden dafür folgende Sprachen und Konfigurationsdateien:

  • PHP
  • HTML
  • CSS
  • JavaScript
  • htaccess ‐ Apache Webserver Konfigurationsdatei

Um die Funktionen nutzen zu können, muss die Datei php/syn.inc am Seitenanfang geladen werden:

<?php
    …
    # Nutzung des Syntax-Highlighting-Moduls
    require_once('php/syn.inc');
    seite(__FILE__);
?>

Nutzung

Initialisierung mit $myVar = new TucalSyn($source$language, [$lineNumbers, [$lineBegin, [$lineEnd]]])

  • $source string, auszugebender Code
  • $language string, Sprache des Codes. Möglichkeiten sind:
    • php, für PHP und JS
    • html, für HTML und PHP innerhalb von HTML
    • css
    • htaccess
  • $lineNumbers boolean, bestimmt, ob Zeilennummern angezeigt werden sollen [optional]
  • $lineBegin integer, Zeilennummer, an der der String beginnen soll [optional]
  • $lineEnd integer, Zeilennummer, an der der String enden soll [optional]

Funktionen der TucalSyn Klasse

  • $myVar->parseCode(), gibt die Ausgabe als string zurück
  • $myVar->setWithinLine(true), formatiert die Ausgabe zur Verwendung innerhalb einer Zeile oder eines Satzes
  • Änderungsmethoden:
    • $myVar->setSource($source) string
    • $myVar->setLang($lang) string
    • $myVar->setLineNumbers($lineNumbers) boolean
    • $myVar->setLineBegin($lineBegin) integer
    • $myVar->setLineEnd($lineEnd) integer

Beispiele

Mehrzeilige Strings

<?php
    …
    # Nutzung des Syntax-Highlighting-Moduls
    require_once('php/syn.inc');
    seite(__FILE__);
?>
<?php
$temp_string "<?php
…
# Nutzung des Syntax-Highlighting-Moduls
require_once('php/syn.inc');
seite(__FILE__);
?>";

$tsyn = new tucalsyn($temp_string'php');
echo $tsyn->parseCode();
?>

Innerhalb einer Zeile

$myVar = new TucalSyn($source$language, [$lineNumbers, [$lineBegin, [$lineEnd]]])
<?php
$temp_string '$myVar = new TucalSyn($source, $language, $lineNumbers, $lineBegin, $lineEnd)';
$tsyn = new TucalSyn($temp_string'php');
$tsyn->setWithinLine(true);
echo $tsyn->parseCode();
?>

Auslesen einer Datei mit Zeilennummerierung

            <li><a href="#syn_exam_inner">Innerhalb einer Zeile</a></li>
            <li><a href="#syn_exam_ausl">Auslesen einer Datei mit Zeilennummerierung</a></li>
        </ol>
    </li>
</ol>

<p style="margin-bottom:0">
    Mit Hilfe dieses Moduls können Webautoren Code-Blöcke zur besseren Übersicht
    einfach highlighten lassen. Unterstützt werden dafür folgende Sprachen und Konfigurationsdateien:
</p>
<ul>
<?php
$tsyn = new tucalsyn(file_get_contents("highlight.html"), 'html'true1525);
echo $tsyn->parseCode();
?>

Start der Zeilennummerierung bei Zeile 15

Um die Zeilennummerierung bei einer bestimmten Zahl starten zu lassen, muss die CSS-Eigenschaft counter-reset vergeben werden.

            <li><a href="#syn_exam_inner">Innerhalb einer Zeile</a></li>
            <li><a href="#syn_exam_ausl">Auslesen einer Datei mit Zeilennummerierung</a></li>
        </ol>
    </li>
</ol>

<p style="margin-bottom:0">
    Mit Hilfe dieses Moduls können Webautoren Code-Blöcke zur besseren Übersicht
    einfach highlighten lassen. Unterstützt werden dafür folgende Sprachen und Konfigurationsdateien:
</p>
<ul>
<div class="tucbox-example counterreset">
<?php
$tsyn = new tucalsyn(file_get_contents("highlight.html"), 'html'true1525);
echo $tsyn->parseCode();
?>
</div>
/* CSS: */
.counterreset span.ln {
    /*  "linenb" darf nicht geändert werden;
        die angegebene Zahl muss eins niedriger als der gewünschte Startwert sein. */
    counter-reset: linenb 14;
}