hedgedoc/docs/content/references/hfm.md
Tilman Vatteroth 4a0b00d0a6
Replace Unicode character with emoji shortcode
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2021-04-03 21:14:53 +02:00

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
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. ↩︎