Textformatierung: Markdown

Inhalt

  1. Beschreibung
  2. Konfiguration
  3. Hinweise

Diese Erweiterung stellt die Auszeichnungssprache Markdown von John Gruber in der PHP-Variante ("PHP Markdown") mit der Erweiterung Markdown Extra von Michel Fortin zur Verfügung.

Außerdem stehen optional die "Textverschönerer" (prettyfier) PHP SmartyPants und PHP SmartyPants Typographer zur Verfügung.

Beschreibung

Markdown ist eine Auszeichnungssprache ("Markup") für Web-Autoren, mit der sich ein einfach lesbarer, leicht zu schreibender Klartext in valides HTML umsetzen lässt. Der "Rohtext" soll im Gegensatz zu anderen Auszeichnungssprachen möglichst einfach lesbar sein und "natürlich" wirken.

Markdown Extra ist eine Markdown-Erweiterung, die zusätzliche Funktionen wie Tabellen, Fußnoten und die Definition von Attributen (ID oder class) zur Verfügung stellt.

SmartyPants "verschönert" Texte, indem bestimmte einfache Zeichen durch typographische HTML-Elemente ersetzt werden.

Mehr dazu:

Konfiguration

Markdown-Textformatierung aktivieren

Die Textformatierung kann für folgende Bereiche gesondert aktiviert oder deaktiviert werden:

Markdown oder Markdown Extra

Es kann entweder das originale Markdown oder die Erweiterung Markdown Extra verwendet werden.

Markdown Extra hat folgende zusätzliche Features:

Syntax-Dokumentation:

Die PHP-Markdown-Konfiguration ist auf die Standardwerte gesetzt und nicht veränderbar. Wenn Sie die lib-Version verwenden, bekomme Fußnoten jedoch als Prefix die Nummer des Eintrags in Serendipity (fn_id_prefix).

Markdown-Version

Zur Auswahl stehen eine klassische Implementation (classic) oder die Verwendung der PHP-Markdown-Bibliothek (lib).

Da die klassische Implementation seit 2013 nicht mehr weiter gepflegt wird, sollte hier jedenfalls die lib-Version ausgewählt werden. Nur diese Version unterstützt auch Prefixe für Fußnoten in Markdown Extra und die Textverschönerung durch SmartyPants oder SmartyPants Typographer.

Textformatierung mit SmartyPants und SmartyPants Typographer aktivieren

SmartyPants und SmartyPants Typographer sind sog. "prettyfier", die Texte in typographischer Hinsicht "verschönern", indem sie bestimmte Elemente wie Anführungszeichen in die entsprechenden HTML-Entities verwandeln oder aus drei Punkten (...) eine "Ellipse" (…) machen.

Die Aktivierung setzt die Verwendung der lib-Version von PHP-Markdown voraus!

Dokumentation: PHP SmartyPants (engl.)

Hinweise

Plugin-Reihenfolge

Das Markdown-Plugin sollte auf jeden Fall nach dem GeSHi-Plugin (serendipity_event_geshi) platziert werden, , aber vor allen Plugins, die als Eingabe HTML erwarten.

CSS für Fußnoten

Für die Formatierung von Fußnotenzeichen und Fußnoten erzeugt das Plugin folgendes CSS:

/* Footnotes (generated by serendipity_event_markdown) */

footnote-ref:after {
  content: ")";
}

.footnotes hr {
  border-top: dashed #ccc;
  border-width: 1px;
}

/* mostly taken from http://www.456bereastreet.com/archive/201105/styling_ordered_list_numbers/ */
.footnotes ol {
  counter-reset: li;
  margin-top: .2em;
  margin-left: 1.5em;
  padding-left: 0;
}
.footnotes ol > li {
  list-style: none;
  position: relative;
  padding-left: .5em;
  font-size: 90%;
}
.footnotes ol > li:before {
  content: counter(li)")";
  counter-increment: li;
  position: absolute;
  left: -2em;
  top: -.1em;
  width: 2em;
  text-align: right;
  font-size: 80%;
  font-weight: bold;
}

/* --- end of Footnotes */