Vergleichen und kontrastieren Sie die leichtgewichtigen Markup-Sprachen [geschlossen]


90

Bitte identifizieren Sie die beliebtesten Lightweight-Markup-Sprachen und vergleichen Sie ihre Stärken und Schwächen. Diese Sprachen sollten ein Allzweck-Markup für technische Prosa sein, beispielsweise für die Dokumentation (z. B. zählt Haml nicht).

Siehe auch: Markdown versus ReStructuredText


Antworten:


115

Ich kenne drei Hauptsprachen, die in der größeren Programmier- und Tech-Community häufig verwendet werden: Textile, Markdown und reStructuredText. Alle drei können in ein paar Stunden erlernt oder mit dem Spickzettel in der Nähe "geflügelt" werden.

Textil

  • Wird von Redmine und der Ruby-Community verwendet
  • 113 Fragen, die derzeit im Stapelüberlauf markiert sind
  • Die HTML-ähnlichste, aber am wenigsten lesbare Quelle
  • Einfachste verschachtelte Listen aller drei Sprachen
  • Nicht verständlich für Nicht-Programmierer oder HTML-Unwissende
  • Ideal für komplexe Kurzdokumente (mit Links, verschachtelten Listen, Code, benutzerdefiniertem HTML); Zum Beispiel: kurze Dokumentation, Anleitungen, Blog- oder CMS-Inhalte
  • Syntaxreferenz

Abschlag

  • Scheint keine "Community" in der Muttersprache zu haben, aber ...
  • 1274 Fragen zum Thema Stapelüberlauf *
  • Betont die Lesbarkeit des Quellcodes, ähnlich wie bei E-Mail-Traditionen
  • Einfache HTML-Einbettung (Sie geben einfach die Tags ein)
  • Außer dem Einbetten von HTML gibt es keine Möglichkeit, Tabellen zu erstellen
  • Sie wissen es bereits, wenn Sie den Stapelüberlauf kennen
  • Leicht zu erlernen, wenn Sie reStructuredText bereits kennen
  • Automatische Verschleierung der E-Mail-Adresse für das Format <address@example.com> (mit spitzen Klammern)
  • Syntaxreferenz

reStructuredText (AKA ReST)

  • Beliebt in der Python-Community
  • 285 Fragen zum Thema Stapelüberlauf
  • Ein bisschen Ausdauer in Bezug auf Leerzeichen und Ausrichtung, wenn Sie mich fragen
  • Listen (insbesondere verschachtelte Listen) und Absätze scheinen immer in Streit zu geraten
  • Lesbar für Nicht-Programmierer
  • Nur Format, das ein Inhaltsverzeichnis erstellen kann (über eine Erweiterung in der Python-Referenzimplementierung)
  • Konvertiert direkt in andere Formate wie PDF und XML
  • Ideal für große Dokumente mit viel Prosa (zB eine Alternative zu docbook für ein Benutzerhandbuch)
  • Syntaxreferenz

4
Für Benutzer von ReST sieht sphinx.pocoo.org wie ein sehr schönes Tool für große baumstrukturierte Sammlungen von Referenzdokumentationen aus.
Bendin

6
Ich habe kein Problem mit Listen und Absätzen in reStructuredText, wenn ich Dinge in Emacs fest einpacke. Tatsächlich funktionieren sie genau so, wie ich es erwarten würde :-)
Martin Geisler

1
Es gibt Erweiterungen für Markdown, mit denen Tabellen in ASCII erstellt werden können.
Jakub Narębski

1
ReST bietet auch eine hervorragende Tool-Unterstützung: Beispielsweise ist die browserbasierte Notex.ch ein gutes Tool, mit dem Sie experimentieren, ReST lernen und verwenden können (basierend auf dem Backend sphinx.pocoo.org).
hsk81

31

Sie könnten auch Asciidoc in Betracht ziehen

  • relativ lesbares Markup
  • einfache Befehlszeilenverwendung
  • Einige mögen es in Bezug auf die Syntax als relativ „wählerisch“ (vs. flexibel) empfinden
  • docbook und (x) html Ausgabe

2
Leider hat asciidoc eine schreckliche Syntax für Listenelemente mit mehreren Absätzen: Sie müssen sie durch eine einzelne Zeile trennen, die nur ein Pluszeichen enthält (ja, ein "+").
Martin Geisler

4
@ Martin: Sind Listenelemente mit mehreren Absätzen wirklich so wichtig? Wenn Sie mehr als einen Absatz benötigen, wären Überschriften / Abschnitte nicht geeigneter als eine Liste?
Steve S

Der größte Vorteil von AsciiDoc ist, dass es viel mehr Funktionen unterstützt. Es kann Bücher erstellen, Tippabschnitte
Wernight


5

Ich versuche hier, alle verschiedenen Lightweight-Markup-Sprachen abzudecken:

http://www.subspacefield.org/~travis/static_blog_generators.html

Wie Sie sehen können, begann es mit "Wie kann ich ein sicheres Blog erstellen?" - dh einem Blog, das statisches HTML generiert, und ich befand mich in Markup-Sprachen, Template-Systemen usw. gefangen.

Aktualisieren

Ich habe mich nur auf LWMLs mit Python-Implementierungen konzentriert, und sie sind hier:

http://www.subspacefield.org/~travis/python_lightweight_markup_languages.html

Bisher habe ich Markdown und ReST ausprobiert, und letzteres gefällt mir besser für alles andere als HTML-Schnipsel, die in andere Seiten eingebettet sind. Tabellen, Querverweise, indirekte Links usw.


4

zur Dokumentation? Wie wäre es mit Sauerstoff ?
Ich habe es für einige C / C ++ - Projekte verwendet, die ich dokumentieren muss. Sogar Sie können es "missbrauchen", wie es der Doxygen-Autor für die Doxygen-Dokumentation verwendet

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.