10 KiB
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 |
Links & Images
| 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> |
☑️ | ☑️ |
-
Code-blocks with a given language are rendered with syntax-highlighting for the code. ↩︎
-
Several special "language" keywords can be used for rendering diagrams, charts, etc. ↩︎
-
Use of these tags is only supported within blockquotes or (un)ordered lists. ↩︎
-
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. ↩︎