Skip to content
Connor P. Jackson edited this page Mar 18, 2023 · 31 revisions

Pandoc doesn't have a strict roadmap but this page should serve as an overview about major changes to pandoc that are under consideration.

AST changes

Filters/JSON

  • changing JSON serialization format to be more human-readable, less Haskell-ADT-oriented, see this comment

YAML/command-line metadata handling

Pandoc's Markdown Transition to CommonMark

John has indicated that the default input reader for pandoc will eventually transition from markdown to commonmark_x. One important step along that path will be implementing a sufficient set of markdown extensions in CommonMark. The table below lists the extensions that are available to the markdown reader (plus a couple new extensions exclusive to CommonMark) and reports on their status in the commonmark reader. Extensions have one of a few possible statuses:

  • Available: implemented as an extension to CommonMark
  • Core CommonMark: implemented in the core spec, cannot be disabled
  • Incompatible with CommonMark: violates the spec, will never be implemented
  • Planned: likely to be implemented as extensions at some future date
  • Unlikely to be implemented: the feature will not be supported under commonmark, for a variety of reasons
  • Not Currently Implemented: may or may not be supported under commonmark—to be determined
  • Abandoned in favor of…/subsumed by…: Extension behavior implemented in a different extension or in core syntax
Pandoc's Markdown Extensions Status in commonmark
abbreviations not currently implemented
all_symbols_escapable core commonmark
angle_brackets_escapable core commonmark
ascii_identifiers available
attributes available
auto_identifiers abandoned in favor of gfm_auto_identifiers
autolink_bare_uris available
backtick_code_blocks core commonmark
blank_before_blockquote incompatible with commonmark
blank_before_header incompatible with commonmark
bracketed_spans available
citations planned
compact_definition_lists unlikely to be implemented
definition_lists available
east_asian_line_breaks available
emoji available
escaped_line_breaks core commonmark
example_lists planned
fancy_lists available
fenced_code_attributes subsumed by attributes extension
fenced_code_blocks core commonmark
fenced_divs available
footnotes available
four_space_rule incompatible with commonmark
gfm_auto_identifiers available
grid_tables planned
gutenberg not currently implemented
hard_line_breaks available
header_attributes subsumed by attributes extension
ignore_line_breaks not currently implemented
implicit_figures available
implicit_header_references available
inline_code_attributes subsumed by attributes extension
inline_notes planned
intraword_underscores core commonmark
latex_macros not currently implemented
line_blocks planned
link_attributes subsumed by attributes extension
lists_without_preceding_blankline core commonmark
literate_haskell not currently implemented
mark not currently implemented
markdown_attribute unlikely to be implemented
markdown_in_html_blocks abandoned in favor of core commonmark syntax
mmd_header_identifiers not currently implemented
mmd_link_attributes not currently implemented
mmd_title_block not currently implemented
multiline_tables planned
native_divs unlikely to be implemented
native_spans unlikely to be implemented
old_dashes unlikely to be implemented
pandoc_title_block not currently implemented
pipe_tables available
raw_attribute available
raw_html available
raw_tex incompatible with commonmark
rebase_relative_paths available
short_subsuperscript Unlikely to be implemented
shortcut_reference_links core commonmark
simple_tables planned
smart available
sourcepos available
space_in_atx_header core commonmark
spaced_reference_links incompatible with commonmark
startnum core commonmark
strikeout available
subscript available
superscript available
table_captions planned
task_lists available
tex_math_dollars available
tex_math_double_backslash not currently implemented
tex_math_single_backslash incompatible with commonmark
wikilinks_title_after_pipe available
wikilinks_title_before_pipe available
yaml_metadata_block available

A brief description of John's reasoning for the extensions, see this thread in Pandoc-discuss.

Other