AsciiDoc Compatibility Matrix - gmarpons/asciidoc-hs Wiki

🚨 github-wiki-see.page does not render asciidoc. Source for crawling below. Please visit the Original URL! 🚨


:toc: macro

:full: FULL
:partial: PARTIAL
:none: NONE
:dontknow: ??
:l2: {nbsp}{nbsp}
:l3: {nbsp}{nbsp}{nbsp}{nbsp}{nbsp}

The list of features is taken from the table of contents of https://docs.asciidoctor.org/asciidoc/latest/[the documentation for Asciidoctor].

When a release or pre-release of an official AsciiDoc Specification appears, this page will be adapted to reflect the structure and contents of the standard.

toc::[]

== Document processing

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| Document processing
| {partial}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/document-structure/#encodings-and-asciidoc-files[Encodings]
| {partial}
|

e| {l3} UTF-8 encoding
| {full}
|

e| {l3} UTF-16 encoding with BOM
| {dontknow}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/normalization/[Normalization]
| {dontknow}
|

|===

== Blocks

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| https://docs.asciidoctor.org/asciidoc/latest/blocks/[Blocks]
| {partial}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/build-basic-block/[Basic blocks]
| {partial}
| Not all block types are supported, yet.

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/blocks/build-basic-block/#delimited-blocks[Delimited blocks]
| {partial}
| Not all block types are supported, yet.

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/blocks/build-basic-block/#build-a-block-using-a-block-style-attribute[Build a block using a block style attribute]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/add-title/[Add a title to a block]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/blocks/add-title/#add-a-title-to-a-delimited-block[Add a title to a delimited block]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/blocks/add-title/#add-a-title-to-a-block-with-attributes[Add a title to a block with attributes]
| {full}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/assign-id/[Assign an ID to a block]
| {partial}
| No https://github.com/gmarpons/asciidoc-hs/issues/23[repeated ID checking], yet.

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/styles/[Block Style Attribute]
| {partial}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/nest/[Nesting blocks]
| {full}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/masquerade/[Masquerading blocks]
| {dontknow}
|

|===

== Document attributes

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/attributes/document-attributes/[Document attributes]
| {none}
|

|===

== Element attributes

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| https://docs.asciidoctor.org/asciidoc/latest/attributes/element-attributes/[Element attributes (attribute lists)]
| {partial}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/attributes/positional-and-named-attributes/[Positional and named attributes]
| {partial}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/positional-and-named-attributes/#positional[Positional attribute]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/positional-and-named-attributes/#named[Named attribute]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/positional-and-named-attributes/#substitutions[Substitutions]
| {dontknow}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/positional-and-named-attributes/#attribute-list-parsing[Attribute list parsing]
| {partial}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/attributes/ids/[ID attribute]
| {partial}
| No https://github.com/gmarpons/asciidoc-hs/issues/23[repeated ID checking], yet.

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/ids/#block-assignment[Block assignment]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/ids/#inline-assignment[Inline assignment]
| {dontknow}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/ids/#anchor[Use ID as an anchor]
| {dontknow}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/attributes/options/[Options attribute]
| {full}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/attributes/roles/[Role attribute]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/roles/#assign-roles-to-blocks[Assign roles to blocks]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/roles/#shorthand-role-syntax-for-blocks[Shorthand role syntax for blocks]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/roles/#formal-role-syntax-for-blocks[Formal role syntax for blocks]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/attributes/roles/#assign-roles-to-formatted-inline-elements[Assign roles to formatted inline elements]
| {full}
|

|===

== Document header

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/document/header/[Document header]
| {none}
|

|===

== Document types

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/document/doctypes/[Document types]
| {none}
|

|===

== Sections

[%header, cols="50%,~,~", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| Sections
| {partial}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/sections/titles-and-levels/[Section titles and levels]
| {partial}
| Section scope and nesting https://github.com/gmarpons/asciidoc-hs/issues/25[not computed], yet.

e| {l3} Markdown syntax (`#`)
| {none}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/sections/title-links/[Activate section title links]
| {none}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/sections/discrete-headings/[Discrete headings]
| {full}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/sections/ids/[Autogenerated section IDs]
| {none}
| Should be easy through https://pandoc.org/MANUAL.html#extension-auto_identifiers[Pandoc], once `asciidoc-hs` is integrated as an official Reader.

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/sections/id-prefix-and-separator/[Change the ID prefix and separator]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/sections/custom-ids/[Assign custom IDs and reference text]
| {partial}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/sections/custom-ids/#assign-additional-ids[Assign additional IDs]
| {dontknow}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/sections/numbers/[Section numbers]
| {partial}
| Through Pandoc's `--number-sections` and `unnumbered` class.

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/sections/numbers/#numlevels[Specify the section levels that are numbered]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/sections/styles/[Section styles for articles and books]
| {none}
|

|===

== Paragraphs

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| https://docs.asciidoctor.org/asciidoc/latest/blocks/paragraphs/[Paragraphs]
| {partial}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/hard-line-breaks/[Hard line breaks]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/preamble-and-lead/[Preamble and lead style]
| {partial}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/blocks/preamble-and-lead/#preamble-style[Preamble]
| {none}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/blocks/preamble-and-lead/#lead-role[Lead role]
| {full}
// TODO. Check
| If CSS has the `lead` class defined (for example the Asciidoctor's default CSS).

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/paragraph-alignment/[Paragraph alignment]
| {dontknow}
|

|===

== Breaks

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| https://docs.asciidoctor.org/asciidoc/latest/blocks/breaks/[Breaks]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/breaks/#thematic-breaks[Thematic breaks]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/breaks/#page-breaks[Page breaks]
| {none}
|

|===

== Text formatting and punctuation

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| https://docs.asciidoctor.org/asciidoc/latest/text/[Text formatting and punctuation]
| {partial}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/text/#constrained[Constrained formatting]
| {full}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/text/#unconstrained[Unconstrained formatting]
| {full}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/text/bold/[Bold]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/text/bold/#mixing-bold-with-other-formatting[Mixing bold with other formatting]
| {full}
| No need of a specific order.

| {l2} https://docs.asciidoctor.org/asciidoc/latest/text/italic/[Italic]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/text/italic/#mixing-italic-with-other-formatting[Mixing bold with other formatting]
| {full}
| No need of a specific order.

| {l2} https://docs.asciidoctor.org/asciidoc/latest/text/monospace/[Monospace]
| {partial}
| Support for HTML output through class `.monospace`.
Pandoc does not support nested formatting inside `<code>` elements.

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/text/monospace/#mixed-formatting[Mixed formatting]
| {partial}
| No need of a specific order if output is HTML.

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/text/monospace/#literal-monospace[Literal monospace]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/text/highlight/[Highlight]
| {full}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/text/quotation-marks-and-apostrophes/[Quotation marks and apostrophes]
| {none}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/text/quotation-marks-and-apostrophes/#single-and-double-quotation-mark-syntax[Single and double quotation mark syntax]
| {none}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/text/quotation-marks-and-apostrophes/#apostrophe-syntax[Apostrophe syntax]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/text/subscript-and-superscript/[Subscript and superscript]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/text/custom-inline-styles/[Custom inline styles]
| {full}
| Styles need to be supported by CSS.

|===

== Lists

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| Lists
| {partial}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/lists/unordered/[Unordered lists]
| {partial}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/lists/unordered/#basic-unordered-list[Basic unordered list]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/lists/unordered/#nested-unordered-list[Nested unordered list]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/lists/unordered/#markers[Custom markers]
| {none}
|

| {l2} Separating lists
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/lists/ordered/[Ordered lists]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/lists/checklist/[Checklists]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/lists/continuation/[List continuation]
| {partial}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/lists/continuation/#indented-lines[Indented lines]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/lists/continuation/#list-continuation[List continuation syntax (`+`)]
| {full}
|

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/lists/continuation/#dropping-the-principal-text[Dropping the principal text]
| {none}
| Attribute substitution is not implemented, yet.

e| {l3} https://docs.asciidoctor.org/asciidoc/latest/lists/continuation/#attaching-to-an-ancestor-list[Attaching to an ancestor list]
| {none}
|

|===

== Description lists

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/lists/description/[Description lists]
| {none}
|

|===

== Links

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/macros/links/[Links]
| {none}
|

|===

== Cross references

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/macros/xref/[Cross references]
| {none}
|

|===

== Footnotes

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/macros/footnote/[Footnotes]
| {none}
|

|===

== Images

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/macros/images/[Images]
| {none}
|

|===

== Audio and video

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/macros/audio-and-video/[Audio and video]
| {none}
|

|===

== Icons

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/macros/icons/[Icons]
| {none}
|

|===

== Keyboard macro

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/macros/keyboard-macro/[Keyboard macro]
| {none}
|

|===

== Button and menu UI macros

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/macros/ui-macros/[Button and menu UI macros]
| {none}
|

|===

== Admonitions

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/blocks/admonitions/[Admonitions]
| {none}
|

|===

== Sidebars

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| https://docs.asciidoctor.org/asciidoc/latest/blocks/sidebars/[Sidebars]
| {partial}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/sidebars/#sidebar-style-syntax[Sidebar style syntax]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/sidebars/#delimited-sidebar-syntax[Delimited sidebar syntax]
| {full}
|

|===

== Example blocks

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| https://docs.asciidoctor.org/asciidoc/latest/blocks/example-blocks/[Example blocks]
| {partial}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/example-blocks/#example-style-syntax[Example style syntax]
| {none}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/blocks/example-blocks/#delimited[Delimited examle syntax]
| {full}
|

|===

== Blockquotes

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/blocks/blockquotes/[Blockquotes]
| {none}
|

|===

== Verses

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/blocks/verses/[Verses]
| {none}
|

|===

== Verbatim and source blocks

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| Verbatim and source blocks
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/verbatim/source-blocks/[Source blocks]
| {none}
|

// e| {l3} https://docs.asciidoctor.org/asciidoc/latest/verbatim/source-blocks/#using-include-directives-in-source-blocks[Using include directives in source blocks]
// | {none}
// |

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/verbatim/listing-blocks/[Listing blocks]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/verbatim/literal-blocks/[Literal blocks]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/verbatim/callouts/[Callouts]
| {none}
|

|===

== Tables

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/tables/build-a-basic-table/[Tables]
| {none}
|

|===

== Equations and formulas

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/stem/stem/[Equations and formulas]
| {none}
|

|===

== Counters

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/attributes/counters/[Counters]
| {none}
|

|===

== Open blocks

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/blocks/open-blocks/[Open blocks]
| {none}
|

|===

== Comments

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| https://docs.asciidoctor.org/asciidoc/latest/comments/[Comments]
| {full}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/comments/#comment-lines[Comment lines]
| {full}
|

| {l2} https://docs.asciidoctor.org/asciidoc/latest/comments/#comment-blocks[Comment blocks]
| {full}
|

|===

== Automatic table of contents

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/toc/[Automatic table of contents]
| {none}
|

|===

== Includes

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/directives/include/[Includes]
| {none}
|

|===

== Conditionals

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

// TODO. Subsections
s| https://docs.asciidoctor.org/asciidoc/latest/directives/conditionals/[Conditionals]
| {none}
|

|===

== Substitutions

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| https://docs.asciidoctor.org/asciidoc/latest/subs/substitutions/[Substitutions]
| {partial}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/subs/special-characters/[Special characters]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/subs/quotes/[Quotes]
| {partial}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/subs/attributes/[Attribute references]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/subs/replacements/[Character replacements]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/subs/macros/[Macros]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/subs/post-replacements/[Post replacements]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/subs/apply-subs-to-blocks/[Customize the substitutions applied to blocks]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/subs/apply-subs-to-text/[Customize the substitutions applied to text]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/subs/prevent/[Escape and prevent substitutions]
| {none}
|

|===

== Passthroughs

[%header, cols="~,~,35", frame=none, grid=none, stripe=odd]
|===
| Feature | Support | Notes

s| Passthroughs
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/pass/pass-macro/[Inline passthroughs]
| {none}
|

// TODO. Subsections
| {l2} https://docs.asciidoctor.org/asciidoc/latest/pass/pass-block/[Passthrough blocks]
| {none}
|

|===