Skip to content

HedgeDoc Flavored Markdown

HedgeDoc mostly follows the CommonMark standard. It shares some extensions with the GFM standard, but for historical reasons HedgeDoc does support not exactly GFM, but a bit more in places (and a bit less in other places).

These tables will tell you what exactly we support in HedgeDoc 1.x (HFM 1) and will support in HedgeDoc 2 (HFM 2).

Please keep in mind that HedgeDoc 2 is still in development and not functional yet.

Typography

Feature HFM 1 HFM 2 CommonMark GFM
bold ☑ ☑ ☑ ☑
italic ☑ ☑ ☑ ☑
underline ☑ ☑ (☑ with <ins>) (☑ with <ins>)
strikethrough ☑ ☑ (☑ with <del>) ☑
subscript ☑ ☑ (☑ with <sub>) (☑ with <sub>)
superscript ☑ ☑ (☑ with <sup>) (☑ with <sup>)
marked ☑ ☑ (☑ with <mark>) (☑ with <mark>)

Extended typography features

Feature HFM 1 HFM 2 CommonMark GFM
heading ☑ ☑ ☑ ☑
inline code ☑ ☑ ☑ ☑
indented code blocks ☑ ☑ ☑ ☑
code block with language1 ☑ ☑ ☑ ☑
code block with extra features2 ☑ ☑
block quote ☑ ☑ ☑ ☑
name tag ([name=...]) (☑)3 ☑
time tag ([time=...]) (☑)3 ☑
color tag ([color=...]) (☑)3 ☑
unorderd list ☑ ☑ ☑ ☑
ordered list ☑ ☑ ☑ ☑
task list ☑ ☑ ☑
defition list ☑ ☑
emoji Unicode 6.1 Unicode 13
ForkAwesome ☑ with <i class='fa'> ☑ with shortcodes
LaTeX ☑4 ☑5
Feature HFM 1 HFM 2 CommonMark GFM
link ☑ ☑ ☑ ☑
link reference ☑ ☑ ☑ ☑
link title ☑ ☑ ☑ ☑
autolink with <> ☑ ☑ ☑ ☑
autolink without <> ☑ ☑ ☑
footnotes ☑ ☑
image ☑ ☑ ☑ ☑
image with given size ☑ ☑ (☑ with <img>) (☑ with <img>)
table of contents ☑ ☑

Structural elements

Feature HFM 1 HFM 2 CommonMark GFM
table ☑ ☑ (☑ with <table>) ☑
horizontal line ☑ ☑ ☑ ☑
collapsable block (☑ with <details>) ☑ (☑ with <details>) (☑ with <details>)
Alerts ☑ ☑

Embeddings

HFM1 included support for certain embeddings of external content. These were defined in markdown by the uncommon {%keyword parameter %} syntax.

Instead of this uncommon syntax, HFM2 uses just plain links to external content and creates embeddings for supported providers.

Feature HFM 1 HFM 2 CommonMark GFM
PDF ({%pdf ... %}) ☑ removed
YouTube ({%youtube ... %}) ☑ with plain link6
Vimeo ({%vimeo ... %}) ☑ with plain link6
Slideshare ({%slideshare ... %}) ☑ removed
Speakerdeck ({%speakerdeck ... %}) ☑ removed
GitHub Gist ({%gist ... %}) ☑ with plain link6

HTML

Besides the basic HTML typography elements (<p>, <a>, <b>, <ins>, <del>) the following more special HTML elements are supported by some specification.

Feature HedgeDocMark 1 HedgeDocMark 2 CommonMark GFM
<title> ☑
<textarea> ☑ ☑
<style> ☑ ☑ ☑
<xmp> ☑
<iframe> ☑ ☑ ☑
<noembed> ☑ ☑
<noframes> ☑ ☑
<script> ☑
<plaintext> ☑ ☑

  1. Code-blocks with a given language are rendered with syntax-highlighting for the code. 

  2. Several special "language" keywords can be used for rendering diagrams, charts, etc. 

  3. Use of these tags is only supported within blockquotes or (un)ordered lists. 

  4. LaTeX is rendered with MathJax

  5. LaTeX is rendered with KaTeX

  6. The special syntax is deprecated but will continue to work. However a plain link to the content will generate the same embedding and is preferred.