# AsciiDoc

AsciiDoc ist eine vereinfachte Auszeichnungssprache, die dazu dient, Texte in verschiedenen Dokumentenformaten zu veröffentlichen. AsciiDoc-Dateien können entweder nach HTML oder ins DocBook-Format konvertiert werden – und von dort dann ggf. weiter in viele andere Formate, z. B. PDF oder Manpage.
Im Vergleich zu auf SGML oder XML basierenden Dokumentenformaten wie DocBook haben auf Plain text basierende „leichte“ Auszeichnungssprachen wie AsciiDoc den Vorteil, leicht erlernbar zu sein und auch unverarbeitet (als Quelltext) gut lesbar zu sein. Weitere „leichte“ Auszeichnungssprachen sind z. B. Markdown, reStructuredText, Textile, Almost Plain Text oder auch Wikitext.
Einer breiten Öffentlichkeit wurde AsciiDoc bekannt durch den Einsatz in GitHub.

## Geschichte und Software

Das ursprüngliche Konvertierprogramm, asciidoc, ist in Python geschrieben und steht unter der freien GNU General Public License (GPL). Im Juni 2020 wurde eine an aktuelle Python-Versionen angepasste Version veröffentlicht.
Eine Neuimplementierung von AsciiDoc ist ‘Asciidoctor’, Version 0.1 wurde 2013 veröffentlicht. GitHub verwendet Asciidoctor, um AsciiDoc-Dokumente nach HTML zu wandeln. Neben der Ruby-Variante ist Asciidoctor auch in Varianten für Java und JavaScript verfügbar.

## AsciiDoc Working Group

Am 6. Februar 2020 gab die Eclipse Foundation bekannt, dass die AsciiDoc Working Group gegründet wurde zur Standardisierung von AsciiDoc. Die Open-Source-Organisation will einen „offenen und neutralen Raum für die Diskussionen und Entwicklungen zur Auszeichnungssprache schaffen, sowohl was die Sprache als auch das Dokumentmodell betrifft.“

## Beispiel

Das folgende Beispiel zeigt einen in AsciiDoc geschriebenen Quelltext und eine HTML-Darstellung ähnlich der, wie sie ein AsciiDoc-Prozessor aus dem Quelltext erzeugt.
Die Encoding-Angabe in der ersten Zeile ist nur nötig, wenn das Dokument nicht in UTF-8 kodiert ist.
* Eingabe
* :encoding: iso-8859-1
* = Meine Überschrift
* K. Mustermann
* https://wikipedia.org[Wikipedia] ist eine Online-Enzyklopädie,
* verfügbar auf Englisch, Deutsch und in *vielen* anderen Sprachen.
* == Software
* Sie können 'paket' mit dem `make`-Kommando installieren:
* make install paket
* == Hardware
* Häufig genutzte Metalle sind:
* * Eisen
* * Kupfer
* Ergebnis
* Meine Überschrift
* K. Mustermann
* Wikipedia ist eine
* Online-Enzyklopädie, verfügbar auf
* Englisch, Deutsch und in vielen anderen Sprachen.
* Software
* Sie können paket mit dem make-Kommando installieren:
* make install paket
* Hardware
* Häufig genutzte Metalle sind:
* Eisen
* Kupfer

## Vergleich zu Wikitext

AsciiDoc ähnelt in mancher Hinsicht Wikitext, wie viele vereinfachte Auszeichnungssprachen. Die Stärken der beiden Sprachen machen sich in den jeweiligen Einsatzgebieten bemerkbar, für die sie entwickelt wurden.
Wikitext wurde für die Darstellung von Webseiten entwickelt, speziell Wiki-Seiten. Beispielsweise macht Wikitext es den Autoren einfach, Verweise auf andere Wiki-Seiten darzustellen. Die Schreibweise für einen Verweis auf die Seite Beispiel ist zum Beispiel [[Beispiel]]. Original AsciiDoc besitzt für Verweise auf Wiki-Seiten keine eigene Schreibweise. Verweise müssen die volle URL angeben, zum Beispiel https://de.wikipedia.org/wiki/Beispiel[Beispiel].
AsciiDoc hingegen wurde für technische Dokumentation entwickelt, insbesondere im Bereich der Informatik. Beispielsweise ist es sehr einfach, im Fließtext Dateinamen oder Programmcode auszuzeichnen. Zum Beispiel ergibt `Beispiel` das Ergebnis Beispiel, während Wikitext für das Ergebnis Beispiel die Schreibweise <code>Beispiel</code> erfordert und für das Ergebnis Beispiel gar die Schreibweise <code style="border:0; background:#FFFFFF;">Beispiel</code>.
Ein weiterer Unterschied sind die Ausgabeformate. MediaWiki bietet ohne Weiteres nur Wandlung von Wikitext nach HTML und beschränkt sich insofern auf die Darstellung von Web-Seiten. Die gängigen AsciiDoc-Implementierungen bieten neben HTML verschiedene weitere Ausgabeformate, neben den schon erwähnten PDF, DocBook und Manpage auch EPUB und LaTeX. Dadurch bietet sich AsciiDoc auch für die Formatierung von Büchern und allgemein Dokumenten an, die auch außerhalb des Webs verbreitet und gelesen werden können sollen.