Add commonmark_x output format...

commonmark with a number of useful extensions (more than gfm).
This commit is contained in:
John MacFarlane 2020-05-05 23:01:50 -07:00
parent 3a22fbd11b
commit 0aed9dd589
5 changed files with 36 additions and 3 deletions

View file

@ -226,6 +226,7 @@ header when requesting a document from a URL:
::: {#input-formats}
- `commonmark` ([CommonMark] Markdown)
- `commonmark_x` ([CommonMark] Markdown with extensions)
- `creole` ([Creole 1.0])
- `csv` ([CSV] table)
- `docbook` ([DocBook])
@ -277,6 +278,7 @@ header when requesting a document from a URL:
- `asciidoc` ([AsciiDoc]) or `asciidoctor` ([AsciiDoctor])
- `beamer` ([LaTeX beamer][`beamer`] slide show)
- `commonmark` ([CommonMark] Markdown)
- `commonmark_x` ([CommonMark] Markdown with extensions)
- `context` ([ConTeXt])
- `docbook` or `docbook4` ([DocBook] 4)
- `docbook5` (DocBook 5)

View file

@ -338,6 +338,29 @@ getDefaultExtensions "plain" = plainExtensions
getDefaultExtensions "gfm" = githubMarkdownExtensions
getDefaultExtensions "commonmark" = extensionsFromList
[Ext_raw_html]
getDefaultExtensions "commonmark_x" = extensionsFromList
[ Ext_pipe_tables
, Ext_raw_html
, Ext_auto_identifiers
, Ext_strikeout
, Ext_task_lists
, Ext_emoji
, Ext_pipe_tables
, Ext_raw_html
, Ext_raw_tex -- only supported in writer (for math)
, Ext_smart
, Ext_tex_math_dollars
, Ext_superscript
, Ext_subscript
, Ext_definition_lists
, Ext_footnotes
, Ext_fancy_lists
, Ext_fenced_divs
, Ext_bracketed_spans
, Ext_raw_attribute
, Ext_implicit_header_references
, Ext_attributes
]
getDefaultExtensions "org" = extensionsFromList
[Ext_citations,
Ext_auto_identifiers]
@ -433,10 +456,16 @@ getAllExtensions f = universalExtensions <> getAll f
[ Ext_amuse ]
getAll "asciidoc" = autoIdExtensions
getAll "plain" = allMarkdownExtensions
getAll "gfm" = githubMarkdownExtensions <>
getAll "gfm" = getAll "commonmark"
getAll "commonmark" =
autoIdExtensions <>
extensionsFromList
[ Ext_raw_html
[ Ext_pipe_tables
, Ext_autolink_bare_uris
, Ext_strikeout
, Ext_task_lists
, Ext_emoji
, Ext_raw_html
, Ext_raw_tex -- only supported in writer (for math)
, Ext_implicit_figures
, Ext_hard_line_breaks
@ -453,7 +482,6 @@ getAllExtensions f = universalExtensions <> getAll f
, Ext_implicit_header_references
, Ext_attributes
]
getAll "commonmark" = getAll "gfm"
getAll "org" = autoIdExtensions <>
extensionsFromList
[ Ext_citations

View file

@ -111,6 +111,7 @@ readers = [ ("native" , TextReader readNative)
,("markdown_github" , TextReader readMarkdown)
,("markdown_mmd", TextReader readMarkdown)
,("commonmark" , TextReader readCommonMark)
,("commonmark_x" , TextReader readCommonMark)
,("creole" , TextReader readCreole)
,("dokuwiki" , TextReader readDokuWiki)
,("gfm" , TextReader readCommonMark)

View file

@ -97,6 +97,7 @@ getDefaultTemplate writer = do
"markdown_mmd" -> getDefaultTemplate "markdown"
"markdown_phpextra" -> getDefaultTemplate "markdown"
"gfm" -> getDefaultTemplate "commonmark"
"commonmark_x" -> getDefaultTemplate "commonmark"
_ -> do
let fname = "templates" </> "default" <.> T.unpack format
UTF8.toText <$> readDataFile fname

View file

@ -178,6 +178,7 @@ writers = [
,("asciidoctor" , TextWriter writeAsciiDoctor)
,("haddock" , TextWriter writeHaddock)
,("commonmark" , TextWriter writeCommonMark)
,("commonmark_x" , TextWriter writeCommonMark)
,("gfm" , TextWriter writeCommonMark)
,("tei" , TextWriter writeTEI)
,("muse" , TextWriter writeMuse)