Markdown

from Wikipedia, the free encyclopedia
Markdown
Markdown-mark.svg
File extension : .md, .markdown
MIME type : text / markdown
Developed by: John Gruber and Aaron Swartz
Initial release: 2004
Current version: 1.0.1
Type: Simplified markup language
Website : daringfireball.net/projects/markdown


Markdown is a simplified markup language that was designed by John Gruber and Aaron Swartz and specified in December 2004 with version 1.0.1. One of Markdown's goals is to make the original form easily readable without any further conversion. For this reason , the main types of markup used as markup elements are those that are common in plain text and e-mails . Other markup languages ​​with similar goals for legibility - such as reStructuredText or Textile - also had an influence on the syntax. The MIME type is text/markdown.

Markdown conversion software converts text into valid and W3C- compliant XHTML . The reference implementation in Perl is under a BSD-like license . Implementations in the most common programming languages ​​such as PHP (e.g.), Python (e.g.) or JavaScript (e.g.) and R are now also available.

distribution

Markdown or a Markdown-like syntax is mainly used on developer platforms with a more tech-savvy audience such as GitHub , Stack Overflow or the blogging platform Ghost . Markdown is often used with Readme files. It also comes in popular Web-based tools such as the Project Management Software Trello or instant messaging - service Slack used.

Most major content management systems , wikis and forums can be expanded to include Markdown support using plug-ins . There are plugins for WordPress , Joomla or MediaWiki . Also flat file content management systems such as Kirby set almost entirely in Markdown as a markup language . Many static website generators ( static site generators as Jekyll , Hugo or Hexo) use Markdown as a markup language for the content. Markdown is also used in other software, e.g. B. in the software documentation tool Doxygen .

Editors

Authors can use three different types of editors. In split-screen markdown editors, the author writes the markdown text in one half of the screen, while the HTML preview appears on the other. In Markdown editors with a partial WYSIWYG mode, the user only writes the Markdown syntax in a single screen window, in which various formatting is applied directly, but the Markdown syntax remains visible. In full-fledged WYSIWYG Markdown editors, the entire text is immediately converted into an HTML document as it is written, and the Markdown syntax disappears.

Award examples

Markdown primarily uses punctuation to mark up text, and in some cases allows several equivalent methods. Characters that are usually understood as the format commands can use a backslash (backslash) escapes ( omitted ) are.

Authors can use XHTML block elements for more complex markups if necessary . The conversion software transfers these elements to the target document without any changes. This makes it possible to format areas of the document in ordinary XHTML.

Text design
Initial form Target shape
Normaler Text wird so dargestellt wie eingegeben.

Eine Leerzeile erzeugt einen Absatz.
Normal text is displayed as entered.

A blank line creates a paragraph.

Für alle Zeichen, die eine Formatierung bewirken, kann die Wirkung durch einen Backslash aufgehoben werden: \* \' \_ 2\. – Der Backslash selbst wird durch \\ eingefügt.

For all characters that cause formatting, the effect can be canceled with a backslash: * '_ 2. - The backslash itself is inserted with \.
Zwei oder mehr Leerzeichen am Ende der Zeile  

erzeugen einen Zeilenumbruch.

Two or more spaces at the end of the line
create a line break.
*Kursiv*, **Fett** und ***Fett kursiv*** or.

_Kursiv_, __Fett__ und ___Fett kursiv___

Italic , bold and bold italic resp.

Italic , bold and bold italic

Markiert Text als `Inline-Quelltext` Marks text as Inline-Quelltext
Ein normaler Absatz

    Ein Code-Block
    durch Einrückung
    mit vier Leerzeichen
A normal paragraph

    Ein Code-Block
    durch Einrückung
    mit vier Leerzeichen

* Ein Punkt in einer ungeordneten Liste
* Ein weiterer Punkt in einer ungeordneten Liste
    * Ein Unterpunkt, um vier Leerzeichen eingerückt
* Statt * funktionieren auch + oder -
  • One item in an unordered list
  • Another item on an unordered list
    • A subitem, indented by four spaces
  • Instead of *, + or - also work
1. Ein Punkt in einer geordneten Liste
2. Ein weiterer Punkt; bei der Eingabe muss nicht auf irgendeine Reihenfolge geachtet werden, sondern nur darauf, dass es beliebige Ziffern sind
1. Noch ein Punkt, der zeigt, dass auch die mehrfache Angabe derselben Ziffer möglich ist
  1. An item in an ordered list
  2. Another point; When entering data, you don't have to pay attention to any order, just make sure that there are any digits
  3. Another point that shows that it is also possible to specify the same number multiple times
HTML headings are created by starting the line with double crosses - their number indicates the level of the desired heading.
# Überschrift in Ebene 1
#### Überschrift in Ebene 4
Heading in level 1
Heading in level 4
An alternative notation is also possible for the first two levels:
Überschrift in Ebene 1
======================
Überschrift in Ebene 2
----------------------
Heading in level 1
Heading in level 2
> Dieses Zitat wird in ein HTML-Blockquote-Element gepackt.

This quote is packed into an HTML block quote element.

Horizontal lines are created by three or more dashes, underscores, or asterisks on a line.
Horizontal line
---
[Beschriftung des Hyperlinks](https://de.wikipedia.org/ "Titel, der beim Überfahren mit der Maus angezeigt wird") Labeling of the hyperlink
general syntax:

![Alternativtext](Bild-URL "Bildtitel hier")

concrete example:
![nur ein Beispiel](https://commons.wikimedia.org/wiki/File:Example_de.jpg "Beispielbild")

Include an image from the source Image URL .

just an example

Further developments, variations and additions

Various common elements such as tables are missing from the original Markdown definition, which is why the use of HTML in Markdown documents is permitted. These loopholes are closed by several extensions and further developments of Markdown.

Markdown Extra
primarily offers inline HTML and extends the markdown syntax within HTML blocks to include tables, lists of definitions, abbreviations, footnotes, jump labels for headings and attributes such as classes and IDs.
CommonMark
In October 2012, a standardization of Markdown was suggested, which has been published since September 5, 2014 as a separate definition under the name CommonMark (originally: Standard Markdown and Common Markdown).
GitHub Flavored Markdown
is an extension based on CommonMark, which enables rendering to HTML directly on the GitHub web service . Many of the modifications have since been adopted in other projects. It extends the syntax with code blocks, tables, checklists, strikethrough text, extended autolink recognition and references to user profiles, changesets and tickets.
MultiMarkdown (MMD)
additionally enables export to LaTeX , PDF and extends the syntax to include footnotes , tables , glossaries, quotations, metadata (such as title, author, date) and inline HTML.
Pandoc markdown
allows you to transform Markdown documents into several other formats, including LaTeX, XML, ePub and PDF. It also extends Markdown to include syntax for simple and gridded tables, definition lists, automatic references for examples, jump marks for headings, automatic title pages, strikethrough text, superscript and subscript, math mode for all output formats, embedded TeX, captions, footnotes and references with Bibliography according to CSL .
Stack Overflow Flavored Markdown
is used on Stack Overflow and extends the syntax to include tags, spoilers and syntax highlighting for code. There is an open source implementation called MarkdownSharp.
Markdeep
converts markdown documents into HTML pages. Supports the Markdown syntax and integrates diagrams, calendars, mathematical formulas (LaTeX) and external Markdeep documents via extensions. Displays mathematical expressions using MathJax , converts ASCII art diagrams to SVG graphics and generates a table of contents. To use Markdeep, the file extension of the Markdown document must be .md.htmlchanged to and a JavaScript file must be included at the end of the document .
LiaScript
was developed to create interactive teaching content. In addition to animations, automatic speech output, mathematical formulas (with the help of KaTeX ), ASCII-Art diagrams, there is also the possibility of defining various quizzes and surveys using an extended Markdown syntax. JavaScript is natively supported and can be linked to various elements, so code fragments can also be designed to be executable and editable.

Web links

Individual evidence

  1. Aaron Swartz : Markdown. March 19, 2004, accessed September 21, 2019 .
  2. RFC 7763
  3. Michel Fortin: PHP Markdown. .
  4. ^ Python Software Foundation: Markdown. .
  5. John Fraser, Corey Innis, et al. a .: Showdown. .
  6. Markdown on Save at wordpress.org (English)
  7. ACE X Markdown Editor at joomla.org (English)
  8. Extension: MarkdownExtraParser at mediawiki.org (English)
  9. Kirby: CMS without a database. T3N magazine No. 29, November 12, 2012.
  10. ^ Jekyll • Simple, blog-aware, static sites. Retrieved March 25, 2016 .
  11. Top Open Source Static Site Generators. In: staticgen.com. Retrieved March 25, 2016 .
  12. Michel Fortin: PHP Markdown Extra. Retrieved June 16, 2013 .
  13. Jeff Atwood: The Future of Markdown. Coding Horror: Programming and Human Factors. October 25, 2012, accessed June 16, 2013 .
  14. ^ Jeff Atwood: Standard Markdown is now Common Markdown. Coding Horror: Programming and Human Factors. September 5, 2014, accessed September 12, 2014 .
  15. commonmark.org
  16. ^ GitHub Inc .: GitHub Flavored Markdown Spec. April 6, 2019, accessed on May 13, 2020 .
  17. ^ Fletcher Penney: MultiMarkdown. Version 4.1.1 from June 2, 2013. Retrieved June 16, 2013 .
  18. Fletcher Penney et al. a .: MultiMarkdown Syntax Guide. December 25, 2012, accessed May 16, 2013 .
  19. ^ John MacFarlane: Pandoc User's Guide. Retrieved June 16, 2013 .
  20. ^ Stack Exchange Inc .: Markdown help. Retrieved June 16, 2013 .
  21. Jeff Atwood: Markdown Sharp. C # Markdown processor. Version 113 of July 3, 2010. Retrieved June 16, 2013 (English).
  22. Morgan McGuire: Mark Deep. Retrieved September 1, 2019 .
  23. LiaScript. Retrieved April 1, 2020 .