xref: /plugin/commonmark/README.md (revision 04312fe32b38b5cb36762b872b3aa8fd2beee677)
1Dokuwiki Commonmark Plugin
2===========================
3
4## Description
5This is another plugin for parsing Commonmark / Markdown document in Dokuwiki.
6
7While there are many Markdown plugins (for example, [https://www.dokuwiki.org/plugin:markdowku](markdownu), [mdpage](https://www.dokuwiki.org/plugin:mdpage)) available, this plugin processes Markdown text in different approach:
8
91. check that Markdown indicator ('\<!DOCTYPE markdown\>') is included on the document
102. if exists, parses entire document and renders to DW syntax
113. After pre-rendering, passes the result to DW parser and process as usual
12
13## Compatibility
14Commonmark plugin aims for complete compatiblity of Markdown in Dokuwiki. Most Markdown syntax have corresponding DW syntax, so it will work without problem; but in some cases, Markdown syntax do not matches DW specification one-by-one, or vice versa. Here is a list of known ambiguities between Commonmark and Dokuwiki, and its implements in the plugin:
15
16- Since DW do not parses raw HTML without `htmlok` config, [https://spec.commonmark.org/0.30/#html-blocks](HTML blocks) is passed.
17- When adding `html` as info string in [https://spec.commonmark.org/0.30/#fenced-code-blocks](Fenced code blocks), it parse to DW's [https://www.dokuwiki.org/wiki:syntax#embedding_html_and_php](\<HTML\>) block; In case of `nowiki`, `<nowiki>` syntax will be parsed; if `dokuwiki`, raw DW code will be passed.
18
19Commonmark plugin conflits with other markdown-related plugins, including Mdpage.
20
21## Todo
22- add footnote support
23- add table support
24- add strikethrough