List of Extension in Markdown

Commonmark

Tries to implement all possible elements, while being unambiguous. Notably, CommonMark not yet includes a specification for footnotes.

1. GFM

Github Flavored Markdown

This is a variety of Markdown invented by the hosting platform GitHub and is today one of the most common dialects.

Tables (extension)

foo

bar

baz

bim

Markdown syntax:

HTML code:

<table>
<thead>
<tr>
<th>foo</th>
<th>bar</th>
</tr>
</thead>
<tbody>
<tr>
<td>baz</td>
<td>bim</td>
</tr>
</tbody>
</table>

Task list items (extension)

Markdown syntax:

HTML code:

<ul>
<li><input checked="" disabled="" type="checkbox"> foo
<ul>
<li><input disabled="" type="checkbox"> bar</li>
<li><input checked="" disabled="" type="checkbox"> baz</li>
</ul>
</li>
<li><input disabled="" type="checkbox"> bim</li>
</ul>

Strikethrough (extension)

Hi Hello, world!

Markdown syntax:

HTML code:

<p><del>Hi</del> Hello, world!</p>

www.commonmark.org foo@bar.baz

Markdown syntax:

HTML code:

<p><a href="https://www.commonmark.org">www.commonmark.org</a></p>
<p><a href="mailto:foo@bar.baz">foo@bar.baz</a></p>

Disallowed some Raw HTML (extension)

  • GFM enables the tagfilter extension, where the following HTML tags will be filtered when rendering HTML output: <title> <textarea> <style> <xmp> <iframe> <noembed> <noframes> <script> <plaintext>

  • All other HTML tags are left untouched

2. Markdown-it

Markdown-it Github

Typographic replacements

(c) (C) (r) (R) (tm) (TM) (p) (P) +-

test.. test... test..... test?..... test!....

!!!!!! ???? ,, -- ---

"Smartypants, double quotes" and 'single quotes'

Strikethrough

Strikethrough

Syntax highlighting

var foo = function (bar) {
  return bar++;
};

console.log(foo(5));

Tables

Option

Description

data

path to data files to supply the data that will be passed into templates.

engine

engine to be used for processing templates. Handlebars is the default.

ext

extension to be used for dest files.

Emojies (plugin)

Emojies

Classic markup: :wink: :crush: :cry: :tear: :laughing: :yum:

Shortcuts (emoticons): :-) :-( 8-) ;)

see how to change output with twemoji.

Superscript/Subscript (plugin)

Subscript / Superscript

  • 19^th^

  • H~2~O

Underscore/inserted text (plugin)

\

++Inserted text++

Marked/highlight text (plugin)

\

==Marked text==

Footnotes (plugin)

Footnotes

Footnote 1 link.

Footnote 2 link.

Inline footnote^[Text of inline footnote] definition.

Duplicated footnote reference.

and multiple paragraphs.

Definition Lists (Plugin)

Definition lists

Term 1

: Definition 1 with lazy continuation.

Term 2 with inline markup

: Definition 2

    { some code, part of Definition 2 }

Third paragraph of definition 2.

Compact style:

Term 1 ~ Definition 1

Term 2 ~ Definition 2a ~ Definition 2b

Abbreviations (plugin)

Abbreviations

This is HTML abbreviation example.

It converts "HTML", but keep intact partial entries like "xxxHTMLyyy" and so on.

*[HTML]: Hyper Text Markup Language

Custom Container/Warning (plugin)

Custom containers

::: warning here be dragons :::

www.google.com

mail@google.com

3. MultiMarkdown

MultiMarkdown Github

Abbreviations (or Acronyms)

Markdown syntax:

[>MMD] is an abbreviation.  So is [>(MD) Markdown].

HTML code:

Citations

Markdown syntax:

This is a statement that should be attributed to
its source[p. 23][#Doe:2006].

And following is the description of the reference to be
used in the bibliography.

[#Doe:2006]: John Doe. *Some Big Fancy Book*.  Vanity Press, 2006.

HTML code:

CriticMarkup

CriticMarkup is a way for authors and editors to track changes to documents in plain text. As with Markdown, small groups of distinctive characters allow you to highlight insertions, deletions, substitutions and comments, all without the overhead of heavy, proprietary office suites. https://criticmarkup.com/

Definition List

Markdown syntax:

Apple
:    Pomaceous fruit of plants of the genus Malus in 
    the family Rosaceae.
:    An american computer company.

Orange
:    The fruit of an evergreen tree of the genus Citrus.

HTML code:

Cross-References

Markdown syntax:

I added the ability to interpret [Some Text][] as a cross-link, if a header named “Some Text” exists.

HTML code:

Escaped newlines

Markdown syntax:

This is a line.\
This is a new line

HTML code:

Fenced Code Blocks

Markdown syntax:

```perl
# Demonstrate Syntax Highlighting if you link to highlight.js #
# https://softwaremaniacs.org/soft/highlight/en/
print "Hello, world!\n";
$a = 0;
while ($a < 10) {
print "$a...\n";
$a++;
}
HTML code:
```html

File Transclusion

File transclusion is the ability to tell MultiMarkdown to insert the contents of another file inside the current file being processed. Markdown syntax:

This is some text.

{{some_other_file.txt}}

Another paragraph

HTML code:

Footnotes

Markdown syntax:

Here is some text containing a footnote.[^somesamplefootnote]

[^somesamplefootnote]: Here is the text of the footnote itself.

HTML code:

Glossaries

Markdown syntax:

[?(glossary) The glossary collects information about important
terms used in your document] is a glossary term.

[?glossary] is also a glossary term.

[?glossary]: The glossary collects information about important
terms used in your document

HTML code:

Images Extension

MultiMarkdown also adds a few additional features. If an image is the only thing in a paragraph, it is treated as a block level element

Markdown syntax:

This image (![Alt text](/path/to/img.jpg))
is different than the following image:

![Alt text](/path/to/img.jpg)

HTML code:

<p>This image (<img src="/path/to/img.jpg" alt="Alt text" />)
is different than the following image:</p>

<figure>
<img src="/path/to/img.jpg" alt="Alt text" />
<figcaption>Alt text</figcaption>
</figure>

Markdown syntax:

This is a formatted ![image][] and a [link][] with attributes.

[image]: https://path.to/image "Image title" width=40px height=400px
[link]:  https://path.to/link.html "Some Link" class=external
         style="border: solid black 1px;"

Colored [link](https://example.net "Title" style="color:red")

HTML code:

Math

Subscript Superscript

Markdown syntax:

y^(a+b)^
x~y,z~

HTML code:

Metadata

It is possible to include special metadata at the top of a MultiMarkdown document, such as title, author, etc. This information can then be used to control how MultiMarkdown processes the document, or can be used in certain output formats in special ways.

Raw Source

Code spans and code blocks can be flagged as representing raw source Markdown syntax:

foo `*bar*`{=html}

```{=latex}
*foo*
HTML code:
```html

Smart Typography

MultiMarkdown converts:

  • Straight quotes (" and ') into “curly” quotes

  • Backticks-style quotes (``this'') into “curly” quotes

  • Dashes (-- and ---) into en- and em- dashes

  • Three dots (...) become an ellipsis

Table of Contents

Markdown syntax:

{{TOC}}
{{TOC:2-3}}

HTML code:

Tables

Markdown syntax:

|             |          Grouping           ||
First Header  | Second Header | Third Header |
 ------------ | :-----------: | -----------: |
Content       |          *Long Cell*        ||
Content       |   **Cell**    |         Cell |

New section   |     More      |         Data |
And more      | With an escaped '\|'         ||  
[Prototype table]

HTML code:

4. PHP Markdown

PHP Markdown Extra

5. Markdig

Markdig Github

6. Pandoc

Pandoc Manual Pandoc Markdown is a superset of GitHub flavoured Markdown and adds support for even more elements.

7. Kramdown

Kramdown

8. Showdown

Showdown

9. Taiga

Taiga

Last updated