Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/vladimiralexiev/pandoc-list-extensions

List pandoc extensions per format
https://github.com/vladimiralexiev/pandoc-list-extensions

pandoc pandoc-extensions pandoc-formats

Last synced: about 1 month ago
JSON representation

List pandoc extensions per format

Awesome Lists containing this project

README

        

# Listing Pandoc Extensions per Format

pandoc is the most universal document format convertor, in particular between plain text markup formats.
As of 2023-09, pandoc 3.1.7 supports 43 input formats and 57 output formats.
pandoc also has 73 extensions, which provide extra features and conveniences.

Extensions are turned on with `+` and off with `-`.
For example, I like several `gfm` (Github-flavored markdown) features, and dislike `smart` (which turns normal quotes and dashes into "smart" ones).
Since `gfm` doesn't support `citations` that I also need

```
pandoc --from=markdown+pipe_tables+autolink_bare_uris+lists_without_preceding_blankline+citations-smart
```
Note: I think it's better to put this (and all other formatting instructions) in `defaults.yaml`:
```
from: markdown+pipe_tables+autolink_bare_uris+lists_without_preceding_blankline+citations-smart
```
and then invoke pandoc with much simpler arguments:
```
pandoc --defaults=defaults
```

pandoc has several commands to introspect (discover) all these features:
```
pandoc --list-input-formats
pandoc --list-output-formats
pandoc --list-extensions
pandoc --list-extensions=FORMAT
```

This script uses the commands to produce a table of all formats (across) and extensions (down):
- Each format shows whether it's available for input (`i`), output (`o`) or both (`io`)
- Each extension shows whether it's enabled by default (`+`), disabled by default (`-`), or not available (`n`).

## Extensions for All Formats

```
perl pandoc-list-extensions.pl > pandoc-extensions.md
```

This makes a very wide table rich with information:

| (format) | biblatex | bibtex | commonmark | commonmark_x | creole | csljson | csv | docbook | docx | dokuwiki | endnotexml | epub | fb2 | gfm | haddock | html | ipynb | jats | jira | json | latex | man | markdown | markdown_github | markdown_mmd | markdown_phpextra | markdown_strict | mediawiki | muse | native | odt | opml | org | ris | rst | rtf | t2t | textile | tikiwiki | tsv | twiki | typst | vimwiki |
|-----------------------------------|----------|--------|------------|--------------|--------|---------|-----|---------|------|----------|------------|------|-----|-----|---------|------|-------|------|------|------|-------|-----|----------|-----------------|--------------|-------------------|-----------------|-----------|------|--------|-----|------|-----|-----|-----|-----|-----|---------|----------|-----|-------|-------|---------|
| (direction) | io | io | io | io | i | io | i | io | io | io | i | io | io | io | io | io | io | io | io | io | io | io | io | io | io | io | io | io | io | io | io | io | io | i | io | io | i | io | i | i | i | io | i |
| abbreviations | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | - | + | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| all_symbols_escapable | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | + | n | n | n | n | n | + | + | + | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| angle_brackets_escapable | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| ascii_identifiers | n | n | - | - | n | n | n | n | - | - | n | - | n | - | n | - | - | n | n | n | - | n | - | - | - | - | - | - | - | n | - | - | - | n | - | n | n | - | - | n | - | n | - |
| auto_identifiers | n | n | n | n | n | n | n | n | + | + | n | - | n | n | n | + | + | + | n | n | + | n | + | + | + | - | - | + | + | n | + | + | + | n | + | n | n | + | + | n | + | n | + |
| autolink_bare_uris | n | n | - | - | n | n | n | n | n | n | n | n | n | + | n | n | + | n | n | n | n | n | - | + | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| backtick_code_blocks | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | + | n | n | n | n | n | + | + | + | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| blank_before_blockquote | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| blank_before_header | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| bracketed_spans | n | n | - | + | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| citations | n | n | n | n | n | n | n | n | - | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | + | n | n | n | n | n | n | n | n | + | n |
| compact_definition_lists | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| definition_lists | n | n | - | + | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | + | - | + | + | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| east_asian_line_breaks | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
| emoji | n | n | - | + | n | n | n | n | n | n | n | n | n | + | n | n | - | n | n | n | n | n | - | + | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| escaped_line_breaks | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| example_lists | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| fancy_lists | n | n | - | + | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | - | n | n | n | n | n | n | n | n | n | n |
| fenced_code_attributes | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| fenced_code_blocks | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | + | n | n | n | n | n | + | + | - | + | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| fenced_divs | n | n | - | + | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| footnotes | n | n | - | + | n | n | n | n | n | n | n | n | n | + | n | n | - | n | n | n | n | n | + | - | + | + | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| four_space_rule | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| gfm_auto_identifiers | n | n | - | + | n | n | n | n | - | - | n | - | n | + | n | - | + | n | n | n | - | n | - | + | - | - | - | - | - | n | - | - | - | n | - | n | n | - | - | n | - | n | - |
| grid_tables | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| gutenberg | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| hard_line_breaks | n | n | - | - | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| header_attributes | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | + | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| ignore_line_breaks | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| implicit_figures | n | n | - | - | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | + | - | + | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| implicit_header_references | n | n | - | + | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | + | - | + | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| inline_code_attributes | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| inline_notes | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| intraword_underscores | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | + | n | n | n | n | n | + | + | + | + | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| latex_macros | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | + | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| line_blocks | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | + | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| link_attributes | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | + | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| lists_without_preceding_blankline | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | + | n | n | n | n | n | - | + | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| literate_haskell | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | - | - | n | n | n | - | n | - | - | - | - | - | n | n | n | n | - | n | n | - | n | n | n | n | n | n | n | n |
| mark | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| markdown_attribute | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | + | + | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| markdown_in_html_blocks | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| mmd_header_identifiers | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | + | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| mmd_link_attributes | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | + | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| mmd_title_block | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | + | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| multiline_tables | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| native_divs | n | n | n | n | n | n | n | n | n | n | n | + | n | n | n | + | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| native_spans | n | n | n | n | n | n | n | n | n | n | n | + | n | n | n | + | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| old_dashes | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | + | n | n | n | n | n |
| pandoc_title_block | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| pipe_tables | n | n | - | + | n | n | n | n | n | n | n | n | n | + | n | n | + | n | n | n | n | n | + | + | + | + | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| raw_attribute | n | n | - | + | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | + | - | + | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| raw_html | n | n | + | + | n | n | n | n | n | n | n | + | n | + | n | - | + | n | n | n | n | n | + | + | + | + | + | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| raw_tex | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | - | - | n | n | n | - | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | - | n | n | n | n | n |
| rebase_relative_paths | n | n | - | - | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| short_subsuperscripts | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | + | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| shortcut_reference_links | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | + | n | n | n | n | n | + | + | + | + | + | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| simple_tables | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| smart | n | n | - | + | n | n | n | n | n | n | n | - | n | - | n | - | - | n | n | n | + | n | + | - | - | - | - | - | n | n | n | + | - | n | - | n | n | + | n | n | - | n | n |
| space_in_atx_header | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | + | n | n | n | n | n | + | + | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| spaced_reference_links | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | - | - | + | + | + | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| startnum | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| strikeout | n | n | - | + | n | n | n | n | n | n | n | n | n | + | n | n | + | n | n | n | n | n | + | + | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| subscript | n | n | - | + | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | + | - | + | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| superscript | n | n | - | + | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | + | - | + | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| task_lists | n | n | - | + | n | n | n | n | n | n | n | - | n | + | n | - | + | n | n | n | - | n | + | + | - | - | - | n | n | n | n | + | + | n | n | n | n | n | n | n | n | n | n |
| table_captions | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| tex_math_dollars | n | n | - | + | n | n | n | n | n | - | n | - | n | + | n | - | + | n | n | n | n | n | + | - | + | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |
| tex_math_double_backslash | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | - | - | n | n | n | n | n | - | - | + | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| tex_math_single_backslash | n | n | n | n | n | n | n | n | n | n | n | - | n | n | n | - | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| wikilinks_title_after_pipe | n | n | - | - | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| wikilinks_title_before_pipe | n | n | - | - | n | n | n | n | n | n | n | n | n | - | n | n | - | n | n | n | n | n | - | - | - | - | - | n | n | n | n | - | n | n | n | n | n | n | n | n | n | n | n |
| yaml_metadata_block | n | n | - | + | n | n | n | n | n | n | n | n | n | + | n | n | - | n | n | n | n | n | + | - | - | - | - | n | n | n | n | + | n | n | n | n | n | n | n | n | n | n | n |

## Extensions for Selected Formats

You can also specify an optional comma-separated list of formats to limit to:

```
perl pandoc-list-extensions.pl markdown,markdown_strict,gfm,markdown_github > pandoc-extensions-markdown.md
```

| (format) | gfm | markdown | markdown_github | markdown_strict |
|-----------------------------------|-----|----------|-----------------|-----------------|
| (direction) | io | io | io | io |
| abbreviations | n | - | - | - |
| all_symbols_escapable | n | + | + | - |
| angle_brackets_escapable | n | - | - | - |
| ascii_identifiers | - | - | - | - |
| auto_identifiers | n | + | + | - |
| autolink_bare_uris | + | - | + | - |
| backtick_code_blocks | n | + | + | - |
| blank_before_blockquote | n | + | - | - |
| blank_before_header | n | + | - | - |
| bracketed_spans | - | + | - | - |
| citations | n | + | - | - |
| compact_definition_lists | n | - | - | - |
| definition_lists | - | + | - | - |
| east_asian_line_breaks | - | - | - | - |
| emoji | + | - | + | - |
| escaped_line_breaks | n | + | - | - |
| example_lists | n | + | - | - |
| fancy_lists | - | + | - | - |
| fenced_code_attributes | n | + | - | - |
| fenced_code_blocks | n | + | + | - |
| fenced_divs | - | + | - | - |
| footnotes | + | + | - | - |
| four_space_rule | n | - | - | - |
| gfm_auto_identifiers | + | - | + | - |
| grid_tables | n | + | - | - |
| gutenberg | n | - | - | - |
| hard_line_breaks | - | - | - | - |
| header_attributes | n | + | - | - |
| ignore_line_breaks | n | - | - | - |
| implicit_figures | - | + | - | - |
| implicit_header_references | - | + | - | - |
| inline_code_attributes | n | + | - | - |
| inline_notes | n | + | - | - |
| intraword_underscores | n | + | + | - |
| latex_macros | n | + | - | - |
| line_blocks | n | + | - | - |
| link_attributes | n | + | - | - |
| lists_without_preceding_blankline | n | - | + | - |
| literate_haskell | n | - | - | - |
| mark | n | - | - | - |
| markdown_attribute | n | - | - | - |
| markdown_in_html_blocks | n | + | - | - |
| mmd_header_identifiers | n | - | - | - |
| mmd_link_attributes | n | - | - | - |
| mmd_title_block | n | - | - | - |
| multiline_tables | n | + | - | - |
| native_divs | n | + | - | - |
| native_spans | n | + | - | - |
| old_dashes | n | - | - | - |
| pandoc_title_block | n | + | - | - |
| pipe_tables | + | + | + | - |
| raw_attribute | - | + | - | - |
| raw_html | + | + | + | + |
| raw_tex | n | + | - | - |
| rebase_relative_paths | - | - | - | - |
| short_subsuperscripts | n | - | - | - |
| shortcut_reference_links | n | + | + | + |
| simple_tables | n | + | - | - |
| smart | - | + | - | - |
| space_in_atx_header | n | + | + | - |
| spaced_reference_links | n | - | - | + |
| startnum | n | + | - | - |
| strikeout | + | + | + | - |
| subscript | - | + | - | - |
| superscript | - | + | - | - |
| task_lists | + | + | + | - |
| table_captions | n | + | - | - |
| tex_math_dollars | + | + | - | - |
| tex_math_double_backslash | n | - | - | - |
| tex_math_single_backslash | n | - | - | - |
| wikilinks_title_after_pipe | - | - | - | - |
| wikilinks_title_before_pipe | - | - | - | - |
| yaml_metadata_block | + | + | - | - |