--------------------------------------------------------------------------------
---  HIGHLIGHT MANUAL - Version 2.4-5  --------------------------- MRZ 2006 ---
--------------------------------------------------------------------------------

OSI Certified Open Source Software

English manual: README

--------------------------------------------------------------------------------

Highlight konvertiert Sourcecode in XHTML, HTML, RTF, TeX, LaTeX und XML-Dateien
mit Syntaxhervorhebung.
Sprachdefinitionen, Farbstile und Einrckungsschemata sind ber Textdateien
konfigurierbar.

INHALT
--------------------------------------------------------------------------------

0.  Schnellstart
1.  Plattformen
2.  Untersttzte Programmier- und Auszeichnungssprachen
3.  Funktionen
4.  Ein- und Ausgabe
5.  Highlight Dateiformat
6.  Sprachdefinitionen
7.  Farbstile
8.  Schlsselwortgruppen
9.  Einrckungsschemata
10. Konfigurationsdatei
11. Skripte
12. SWIG Schnittstelle
13. Kontakt


0.  Schnellstart
--------------------------------------------------------------------------------

- HTML mit separater CSS-Datei ausgeben:
  highlight -i main.cpp -o main.cpp.html
  highlight < main.cpp > main.cpp.html -Sc

  Sie werden die HTML-Datei und die CSS-Datei highlight.css im aktuellen
  Verzeichnis finden. Falls Sie Eingabe-Umleitung verwenden, muss der Typ der
  Programmiersprache mit -S (--syntax) angegeben werden.

- HTML mit eingebetteter CSS Definition und Zeilennummerierung ausgeben:
  highlight -i main.cpp -o main.cpp.html --include-style --linenumbers

- HTML mit Code-Formatierung im "ANSI" Stil und dem Farbschema "Neon" ausgeben:
  highlight -i main.cpp -o main.cpp.html --reformat ansi --style neon

- LaTeX ausgeben:
  highlight --latex -i main.cpp -o main.cpp.tex

  Andere mgliche Ausgabeformate:
  XHTML (--xhtml), TeX (--tex), RTF (--rtf), ANSI (--ansi), XML (--xml).
  HTML ist das Default-Format und wird ausgegeben, wenn kein anders Format
  angegeben ist.

- Font und Schriftgre anpassen:
  highlight -S ada -X --font-size 12 --font Verdana
  highlight -S ada -L --font-size tiny --font sffamily

- Ausgabeverzeichnis definieren:
  highlight -O some/target/dir/ *.cpp *.h

Geben Sie "highlight --help" bzw "man highlight" ein, um mehr Details zu
erfahren.


1. PLATTFORMEN
--------------------------------------------------------------------------------

Highlight ist in ISO C++ geschrieben. Es existieren folgende Versionen:
- UNIX Konsolenanwendung
- W32 Konsolenanwendung
- W32 GUI

Das Highlight Installationsverzeichnis $HL_DIR ist eines der in INSTALL
aufgelisteten Verzeichnisse. Unter Unix lautet der Pfad blicherweise
/usr/share/highlight, unter Windows ist es der Pfad der highlight.exe.
Dieser Pfad kann zur ber das makefile angepasst werden oder zur Laufzeit
mit --data-dir gendert werden.

Highlight erwartet in dem angegebenen Verzeichnis die Unterverzeichnisse
langDefs/, themes/ und indentSchemes/.


2. UNTERSTTZTE PROGRAMMIER- UND AUSZEICHNUNGSSPRACHEN:
--------------------------------------------------------------------------------

Momentan untersttzt Highlight folgende Programmiersprachen, Auszeichnungs-
sprachen und Konfigurationsdateien:

Action Script, ADA 95, Agda, AMPL, Aspect, Assembler, Amtrix, Avenue, (G)AWK,
Bash, BlitzBasic, BibTex, BMS, C, C++, C#, ClearBasic, Clipper, Cobol, Coldfusion
MX, CSS, DOS-Batch, Eiffel, Erlang, Euphoria, Express, Felix, Fortran, Frink,
Haskell, HTML, httpd.conf, Icon, IDL, INI, IO, Jasmin, Java, JavaScript, JSP,
LaTeX, LDIF, Lisp, Lotos, Lotus Script, Lua, Make,Maya, Matlab, Maple, Modelica,
Modula 3, Nasal, OCaml, (Object) Pascal, Objective C, Paradox, PATROL, Perl,
PHP, Pike, PL/1, PL/SQL, PostScript, POV Ray, Progress, Prolog, Python, Relax
NG Compact, Rexx, RPM Spec, Ruby, Small, SML, SNMPv2, Spin, Squirrel, Sybase,
VHDL, Visual Basic, XML.

Sie finden zustzliche Sprachdefinitionen auf http://wiki.andre-simon.de/.


3. FUNKTIONEN:
--------------------------------------------------------------------------------

* Hervorhebung von Schlsselwrtern, Typbezeichnern, Strings, Zahlen,
  Escapesequenzen, Symbolen, Direktiven und Kommentaren
* Hervorhebung von selbstdefinierten Schlsselwort-Gruppen, die mit regulren
  Ausdrcken beschrieben werden knnen
* Konfigurierbare Neuformatierung und Einrckung von C, C++, C# und Java Code
* Automatisches Umbrechen von berlangen Zeilen
* Farbige Ausgabe ins HTML-, XHTML-, RTF-, TeX, LaTeX oder ANSI-Escape-Format
* Ausgabe von Zeilennummern
* Speichern der CSS-Definition wahlweise in separater Datei oder innerhalb der
  Ausgabedatei
* Anpassbare Farbstile
* Rekursive Konvertierung von Verzeichnissen


4. EIN- UND AUSGABE:
--------------------------------------------------------------------------------

Wenn kein Dateiname mit --input bzw. --output angegeben wird, benutzt highlight
stdin bzw. stdout fr die Ein- und Ausgabe.

Wird die Eingabedatei nicht direkt auf der Kommandozeile als Argument bzw. mit
--input angegeben, kann Highlight die  passende Sprachinformation nicht
automatisch anhand der Dateiendung bestimmen.
Mit der Option --syntax muss dann der Typ der Datei vom Benutzer mitgeteilt
werden (das Argument ist normalerweise die fr die Programmiersprache gebruch-
liche Dateiendung).
Beispiel: Wenn Sie eine Python-Datei konvertieren wollen, liest highlight die
Sprachdefinition py.lang ein. Der korrekte Parameter fr -S wre also "py".
Wird der Dateiname direkt an highlight bergeben, erkennt das Programm den Typ
selbstndig anhand der Dateiendung bzw. bei Skripten anhand der Shebang-
Notation in der ersten Zeile, nur bei IO-Redirection ist die Angabe von -S
ntig.

highlight test.py                   # Option --syntax nicht ntig
highlight < test.py --syntax py     # --syntax muss angegeben werden
cat py | highlight --syntax py

Sollte es mehrere Dateiendungen fr Dateien einer Programmiersprache geben (wie
z.B. C, cc, cpp, h bei C++), werden diese in der Datei $HLDIR/extensions.conf
einer Sprachdefinition zugewiesen.

Wenn mehrere Eingabedateien an Highlight bergeben werden oder die Option
--batch-recursive gesetzt ist, wechselt das Tool in den Batch-Modus.
In diesem Modus werden die Ausgabedateien unter dem Namen der Eingabedateien
gespeichert, lediglich die Dateiendung des gewhlten Ausgabeformats wird
angehangen.
Die --outdir Option ist im Batch Modus besonders ntzlich. In Skripten sollte
--quiet angegeben werden, um die Geschwindigkeit der Verarbeitung zu erhhen.


HTML, TeX und LaTeX Ausgabe:
----------------------------

Die HTML und TeX-Formate erlauben die Einbindung von externen Dateien, welche
die Formatierungsinformationen enthalten ("Style-Dateien").

Bei der HTML-Ausgabe enthlt diese Datei CSS-Definitionen und wird wenn nicht
anders angegeben als "highlight.css" gespeichert.

Bei TeX und LaTeX enthlt die Datei Makros, und wird per Default als
"highlight.sty" gespeichert.

Name und Pfad der Style-Datei werden mit --style-outfile bestimmt.
Mit --style-infile wird eine weitere Datei in die Style-Datei eingefgt.
Mittels dieser Datei kann die Formatierung angepasst werden.
Wenn --outdir definiert ist, wird auch die Style-Datei im angegebenen
Ausgabeverzeichnis gespeichert.

Mit --include-style fgt Highlight die Formatierungsangaben direkt in die
Ausgabedokumente ein, statt einen Verweis auf externe Dateien zu setzen.

Der Verweis auf externe Dateien hat den Vorteil, die Formatierung an einer
zentralen Stelle zu verwalten.

Wenn UTF-8 Dateien mit LaTeX verabeitet werden sollen, sollte das Paket ucs
installiert werden.


RTF-Ausgabe:
------------

RTF wird immer mit weier Hintergrundfarbe ausgegeben.


ANSI-Escape-Ausgabe:
--------------------

highlight -A <inputfile> | less -R

zeigt farbigen Sourcecode direkt im Terminal an.

Da es nur wenige Farben zur Ausgabe im Terminal gibt, existiert nur ein
hartkodiertes Farbschema fr ANSI.


Text-Ausgabe:
-------------

Wird als Sprachdefinition txt angegeben, findet keine Hervorhebung statt.

Beispiel:

highlight -S txt -L README > readme.tex


Beispiele:
----------

Die folgenden Kommandos schreiben den Inhalt von hello.c nach hello.html:

highlight -o hello.html -i hello.c
highlight -o hello.html hello.c
highlight -o hello.html --syntax c < hello.c
highlight --syntax c < hello.c > hello.html

Neben hello.html wird highlight.css im aktuellen Verzeichnis erzeugt.

highlight -X  --batch-recursive '*.cpp' --outdir /home/you/html_code/
Das Kommando konvertiert alle *.cpp Dateien im aktuellen Verzeichnis und den
Unterverzeichnissen in XHTML-Dateien, und speichert die Ausgabe in
/home/you/html_code.

highlight -L  * --outdir /home/you/latex_code/
konvertiert alle Dateien in LaTeX.

highlight --fragment --style-outfile hilite.css
erzeugt eine CSS Datei, ohne eine Eingabedatei zu verarbeiten.


5. HIGHLIGHT DATEIFORMAT
--------------------------------------------------------------------------------

Alle Konfigurationsdateien werden als ASCII-Textdateien gespeichert.

Format:

$ParameterName=ParameterWert

ParameterName ist der Bezeichner fr den Paramter, ParameterWert ist sein Wert.
Die Bezeichner sind nicht case sensitive.
Der Wert besteht aus einem Zeichen oder auch einer Liste von Wrtern.
Listen knnen in mehrere Zeilen aufgeteilt sein.

Kommentare beginnen mit # als erstem Zeichen der Zeile.


6. SPRACHDEFINITIONEN
--------------------------------------------------------------------------------

Eine Sprachdefinition beschreibt die Elemente einer Programmiersprache, die
durch verschiedene Farben und Schrifttypen hervorgehoben werden.
Die Datei muss in $HL_DIR/langDefs/ (->Abschnitt 1) unter folgendem Namen
gespeichert werden:

<bliche Endung der Sourcecodedateien>.lang

Beispiele: PHP -> php.lang, Java -> java.lang

Sollte es mehrere gebruchliche Endungen geben, werden diese in der Datei
HL_DIR/extensions.conf* (-> Abschnitt 1) einer Sprachdefinition zugeordnet.

DATEIFORMAT:

# Regulrer Ausdruck, der Zahl-Literale beschreibt
# Default: (?:0x|0X)[0-9a-fA-F]+|\d*[\.]?\d+(?:[eE][\-\+]\\d+)?[lLuU]?
$DIGIT=regex(<RE>)

# Regulrer Ausdruck, der gltige Bezeichner beschreibt
# Default: [a-zA-Z_]\w*
$IDENTIFIER=regex(<RE>)

# Liste von Schlsselwrtern, <group> ist der Name der Schlsselwort-Gruppe
# Die Gruppe muss in dem angewandten Farbschema definiert sein, um eine passende
# Hervorhebung zu ermglichen
$KW_LIST(<group>)=<List>

# Regulrer Ausdruck, der Schlsselwrter beschreibt
$KW_RE(<group>)=regex(<RE>)

# Tagbegrenzer
# Tags werden wie Schlsselwrter formatiert
$TAG_DELIM(<group>)=<tag_open tag_close>

# Liste der Stringbegrenzer
$STRINGDELIMITERS=<Liste>

# Liste von ungleichen Stringbegrenzern
$STRING_UNEQUAL=<Beginn Ende>

# Liste der Escapecharacter innerhalb von Strings (normalerweise \)
$ESCCHAR=<Liste> | regex(<RE>)

# Escapesequenzen auerhalb von Strings erlauben
$ALLOWEXTESCAPE=<true|false>

# Prfix, die das Hervorheben von Escapesequenzen in "Raw Strings" verhindert
$RAWSTRINGPREFIX=<Character>

# Kommentarbeginn und -ende beim mehrzeiligen Kommentar
$ML_COMMENT=<Kommentarbeginn  Kommentarende>

# Liste der Bezeichner, die einen einzeiligen Kommentar einleiten
$SL_COMMENT=<Liste> | regex(<RE>)

# Einleitender Bezeichner von Compilerdirektiven
$DIRECTIVE=<Praefix> | regex(<RE>)

# Character, der eine Complier-Direktive nach Zeilenumbruch fortsetzt
$CONTINUATIONSYMBOL=<symbol>

# Sprache kann reformatiert werden
# (nur C-hnliche Sprachen, die mit astyle (astyle.sf.net) kompatibel sind)
$REFORMATTING=<true | false>

# Symbole (z.B. Klammern oder Operatoren)
$SYMBOLS=<Liste>

# Mehrzeilige Kommentare knnen verschachtelt sein
$ALLOWNESTEDCOMMENTS=<true | false>

# Programmiersprache ist case-sensitive
$IGNORECASE=<true | false>

# Fge eine weitere Sprachdefinition ein
$INCLUDE=<language definition>

In der Datei README_REGEX finden Sie detaillierte Informationen zu regulren
Ausdrcken.

Beispiel:
---------

#Inhalt von pas.lang (Pascal/Objekt Pascal)

$KW_LIST(kwa)= absolute abstract and array as asm assembler automated begin case
cdecl class const constructor destructor dispid dispinterface div do downto
# [...]

$KW_LIST(kwb)=boolean char integer pointer real text
true false cardinal longint byte word single double int64
$KW_LIST(kwc)=if else then downto do for repeat while to until with
$KW_RE(kwd)=regex((\w+?)\s*\()
$STRINGDELIMITERS=" '
$SL_COMMENT=//
$ML_COMMENT={ } (* *)
$IGNORECASE=true
$SYMBOLS= ( ) [ ] , ; : & | < > !  = / * %  + - @
$ESCCHAR=#
$ALLOWEXTESCAPE=true

TIP: Wenn Sie neue Sprachdefinitionen testen wollen und diese nicht im
     Installationsverzeichnis ($HL_DIR) speichern mchten bzw. keine Berechtigung
     dazu haben, knnen Sie mit --add-data-dir einen zustzlichen Suchpfad
     angeben und die Datei dort ablegen.


7. FARBSTILE
--------------------------------------------------------------------------------

Farbstile legen die Formatierung der Sprachelemente fest, die in den Sprach-
definitionen beschrieben wurden.

Die Dateien mssen mit der Endung .style in HL_DIR/themes* gespeichert werden.
Mit der --style (-s) Option wird das Farbschema angewandt.

DATEIFORMAT:

<Colour> = RR GG BB
RR GG BB steht dabei fr die hexadezimalen Rot/Grn/Blau-Anteile der
gewnschten Farbe. Wertebereich: 00 (kein Anteil) - FF (voller Anteil)

<Format> = <bold> <italic> <underline>
Bold, italic und underline sind optional und knnen kombiniert werden.


# Default-Textfarbe
$DEFAULTCOLOUR=<Colour>

# Hintergrundfarbe (ignoriert von RTF Ausgabe)
$BGCOLOUR=<Colour>

# Schriftgre
$FONTSIZE=<number>

# Formatierung von Schlsselwrtern, die zu der gleichnamigen Gruppe gehren
$KW_GROUP(<group>)=<Colour> <Format>

# Formatierung von Zahlen
$NUMBER=<Colour> <Format>

# Formatierung von Escape Charactern
$ESCAPECHAR=<Colour> <Format>

# Formatierung von Strings
$STRING=<Colour> <Format>

# Formatierung von Kommentaren
$COMMENT=<Colour> <Format>

# Formatierung von einzeiligen Kommentaren (optional, sonst wie $COMMENT)
$SL-COMMENT=<Colour> <Format>

# Formatierung von Compilerdirektiven
$DIRECTIVE=<Colour> <Format>

# Formatierung von Strings innerhalb von Compilerdirektiven
$STRING_DIRECTIVE=<Colour> <Format>

# Formatierung von Symbolen (Klammern etc) (optional, sonst wie $DEFAULTCOLOR)
$SYMBOL=<Colour> <Format>

# Formatierung von Zeilenummern
$LINE=<Colour> <Format>

Beispiel:

# golden.style
$DEFAULTCOLOUR=dd bb 00
$BGCOLOUR=00 00 00
$FONTSIZE=10
$KW_GROUP(kwa)=ff ed 8a bold
$KW_GROUP(kwb)=ff ed 8a
$KW_GROUP(kwc)=de de de bold
$KW_GROUP(kwd)=dd bb 00 bold
$NUMBER=ff ff ff
$ESCAPECHAR=ff 00 00
$STRING=ff 00 00
$STRING_DIRECTIVE=ff 00 00
$COMMENT=97 83 45 italic
$DIRECTIVE=ff dd aa
$LINE=89 89 89
$SYMBOL=ab ab ab


8. SCHLSSELWORTGRUPPEN
--------------------------------------------------------------------------------

Sie knnen neue Schlsselwort-Gruppen festlegen und jeder Gruppe eine eigene
Formatierung zuweisen. Das ist ntzlich wenn Sie z.B. Bibliotheksfunktionen,
Makros oder Konstanten gesondert hervorheben mchten.

Eine neue Gruppe wird in zwei Schritten angelegt:

 1. Die Schlsselwort-Gruppe in der Sprachdefinition festlegen:

 Um eine neue Gruppe zu definieren, benutzen Sie einen der folgenden Parameter
 in der Sprachdefinition:

 $KW_LIST(<group>)
 $KW_RE(<group>)
 $TAG_DELIM(<group>)

 Das group-Attribut ist der Bezeichner der neuen Schlsselwort-Gruppe.
 Sie knnen Bezeichner mehrmals verwenden.

 2. Der Gruppe einen Farbstil im gewnschten Farbschema zuweisen:

 Mit der folgenden Anweisung in der Theme-Datei weisen Sie der Gruppe einen
 Farbstil zu:

 $KW_GROUP(group) = RR GG BB <bold> <italic> <underline>

 Beachten Sie, dass jeder Gruppenname, der in einer Sprachdefinition aufgelistet
 ist, auch im verwendeten Farbstil definiert sein sollte.
 Die Klassen "kwa" - "kwd" sind in allen Farbschemen vordefiniert.

Beispiel:

# Some language definition with new group "debug"...
$KW_LIST(kwa)=for repeat while [...]
$KW_LIST(debug)=ASSERT DEBUG
$ML_COMMENT=/* */
# ...

# Some colour theme...
$KW_GROUP(kwa)=dd bb 00 bold
$KW_GROUP(debug)=ff 00 00 bold
$COMMENT=97 83 45 italic
# ...


9. EINRCKUNGSSCHEMATA
--------------------------------------------------------------------------------

Highlight nutzt die astyle-Bibliothek, um C-Syntax nach festgelegten Regeln neu
einzurcken und zu formatieren.
Sie knnen die Formatierung und Einrckung selbst anpassen. Um die Formatierung
fr die eingesetzte Programmiersprache zu ermglichen, muss in der Sprach-
definition die Option $REFORMATTING=true gesetzt sein.
Das neue Schema speichern Sie als *.indent Textdatei in $HL_DIR/indentSchemes*.
Mit der Option --reformat wird das Schema angewandt.

DATEIFORMAT:

# Behandlung von Klammern:
# "break":  Lse Klammern vom letzten Block (ANSI C/C++ style).
# "attach": Verbinde Klammern mit letztem Block (Java/K&R style).
# "linux":  Lse Klammern von Definitionsblcken, verbinde Klammern mit
#           Kommandoblcken
# "break-closing-headers": Break brackets before closing headers (e.g. 'else',
#                          'catch', ..).  Should be appended to $brackets=attach
#                          or $brackets=linux.
$BRACKETS=<break | attach | linux | break-closing-headers>

# Umschliesse Blcke, Labels und Klassen mit Leerzeilen
# "true": Standardmodus
# "all": Umschliesse auch 'else', 'catch', ...
$BREAK-BLOCKS=<true | false | all>

# Teile 'else if()' Anweisungen in zwei Zeilen auf
$BREAK-ELSEIFS=<true | false>

# Rcke Blcke inkl. Klammern zustzlich ein
$INDENT-BLOCKS=<true | false>

# Rcke die Blockklammern '{' und '}' zustzlich ein
$INDENT-BRACKETS=<true | false>

# Rcke 'case XXX:' Zeilen ein, so dass sie mit dem zugehrigen Code
# ausgerichtet sind
$INDENT-CASES=<true | false>

# Rcke 'class' -Blcke ein, so dass die inneren 'public:', 'protected:' und
# 'private:' Bezeichner passend zum class-Block ausgerichtet sind.
$INDENT-CLASSES=<true | false>

# Rcke Label um eine Stufe weniger als der umgebende Block ein, anstatt sie
# komplett nach links zu verschieben (default)
$INDENT-LABELS=<true | false>

# Rcke den Inhalt von namespace - Blcken ein.
$INDENT-NAMESPACES=<true | false>

# Rcke mehrzeilige #define Anweisungen ein
INDENT-PREPROCESSOR=<true | false>

# Rcke mit <num> Leerzeichen pro Einzug ein (Defaultwert: 4)
$INDENT-SPACES=<num>

# Rcke  'switch' Blcke ein, so dass die inneren 'case XXX:' Anweisungen am
# switch - Block ausgerichtet sind.
$INDENT-SWITCHES=<true | false>

# Schalte in den Java-Modus (nur geeignet fr Java Code)
$JAVA-STYLE=<true | false>

# Rcke mehrzeilige Anweisungen in Bezug zur Vorgngerzeile mit max. <num>
# Leerzeichen ein
$MAX-INSTATEMENT-INDENT=<num>

# Rcke mehrzeilige Bedingungen (in einem 'if' oder 'while' Block) mit
# mindestens <num> Leerzeichen ein.
$MIN-CONDITIONAL-INDENT=<num>


# Breche einzelne Codezeilen nicht auf:
# "keep-blocks"    : Lasse einzeilige Codeblcke unverndert.
# "keep-statements": Lasse komplexe Zuweisungen zusammen in einer Zeile stehen
$ONE-LINE=<keep-blocks | keep-statements>

# Umschliesse Symbole mit Leerzeichen:
# "paren": Nur Klammern umschliessen
# "oper":  Nur Operatoren umschliessen
# "all":   Klammern und Operatoren umschliessen
$PAD=<paren | oper | all>


Beispiel:

# K&R indentation scheme
$indent-brackets=false
$indent-spaces=4
$brackets=attach
$indent-classes=false
$indent-switches=false
$indent-namespaces=false

In README_INDENT befinden sich Ausgabebeispiele.


10. KONFIGURATIONSDATEI:
--------------------------------------------------------------------------------

Die Konfigurationdatei wird unter folgendem Pfad gespeichert:

UNIX: $HOME/.highlightrc
W32 : <Pfad der highlight.exe>\highlight.conf

Die Optionen der Datei entsprechen den gleichnamigen langen Kommandozeilen-
optionen. Flags (Optionen ohne Parameter) erwarten true oder false als Wert.


Beispiel:

$style=emacs
$linenumbers=true
$css-outfile=format.css
$format-style=gnu


11. SKRIPTE
--------------------------------------------------------------------------------

Im /examples Unterverzeichnis der highlight Installation befinden sich einige
Skripte, die Highlight integrieren:

examples/cgi/perl/highlight.cgi
Ein Perl Skript, das HTML erzeugt und ausgibt.

examples/cgi/php/SyntaxHighlighter.php
Ein PHP Wiki Plugin.


12. SWIG SCHNITTSTELLE
--------------------------------------------------------------------------------

Eine SWIG Interface-Datei befindet sich in /examples/swig.
Installationshinweise finden Sie in README_SWIG, Programmierbeispiele in
den vorhandenen Skripten.


13. KONTAKT
--------------------------------------------------------------------------------
Andre Simon
andre.simon1@gmx.de
http://www.andre-simon.de
http://wiki.andre-simon.de/

Wegen wiederholtem Spamming ist das Wiki passwortgeschtzt.
Der Zugang lautet: user, Password h1gHL1te
