jupyter-book / myst-spec

MyST is designed to create publication-quality, computational documents written entirely in Markdown.
https://mystmd.org/spec
MIT License
14 stars 6 forks source link

`table` node spec changes / enhancements #41

Open fwkoch opened 2 years ago

fwkoch commented 2 years ago

The mdast table specification is very simplistic and too limited for publication-quality tables. While the goal need not be to support every edge case supported by html tables, there are a few small improvements that could help a lot.

mdast spec

See https://github.com/syntax-tree/mdast#table and https://github.com/syntax-tree/mdast-util-gfm-table

This specification assumes (1) first row of the table is header, everything else is standard, (2) rows and columns all have equal numbers of cells (no spans), and (3) cell alignment is consistent for the column

current myst-spec

See https://executablebooks.github.io/myst-spec/features/tables.html#tables

There are already a few changes to tables in myst-spec to allow more flexibility, with some similarities to HTML:

Proposed changes