Markdown sucks at mixing indented lists and fenced code blocks.

But that is a corner case. I can work around it without sacrificing too much.

Workaround: Never indent list after ending a fenced code block.

This is an example code (indented by 4 spaces to avoid Markdown breakage):

    - List.

    ```
    fenced code block
    ```

        - This should be deeper indented list, but this becomes a code block.

(Begin output.)

  • List. (Why does Jekyll 3.7.0 insert a p tag here?)
fenced code block
- This should be deeper indented list, but this becomes a code block.

(End output.)

Pandoc Markdown is content with \( \) for delimiting inline mathjax. GFM (GitHub Flavored Markdown) requires \\( \\).

GFM inserts table at stupid places.

Example:

[foo | bar | baz](https://example.com)

Output:

[foo bar baz](https://example.com)

Markdown table sucks.

Problems:

  • Can’t put code block in table.
  • Can’t put multiple paragraphs in table cell.

Of course you can type the raw HTML, but we are using Markdown to avoid typing HTML.

2018-10-31: Don’t resort to raw HTML markup in Markdown.

  • https://emacs.stackexchange.com/questions/33601/how-to-include-rendered-html-in-org-mode
    • It seems that Org changed #+BEGIN_HTML to #+BEGIN_EXPORT html; Pandoc uses #+BEGIN_HTML.