Files
pandoc/test/command/grid-table-indented.md
Johan Larsson 41f829c43d Markdown reader: allow grid tables to be indented. (#11671)
Like the other table syntaxes (pipe, simple, and multiline tables) and
block-level constructs generally, a grid table may now be indented by up
to three spaces and still be recognized as a table.  Previously the
grid-table parser required the table to begin at the left margin, so an
indented grid table was parsed as a paragraph.

The leading indentation is stripped uniformly from each line before the
table is parsed, so an indented grid table produces the same AST as its
non-indented equivalent.

Adds a command test.
2026-05-28 00:07:29 +02:00

66 lines
953 B
Markdown

Like other block-level constructs, grid tables may be indented by up to
three spaces and are still recognized as tables.
```
% pandoc -f markdown -t html
+---+---+
| a | b |
+===+===+
| 1 | 2 |
+---+---+
^D
<table style="width:11%;">
<colgroup>
<col style="width: 5%" />
<col style="width: 5%" />
</colgroup>
<thead>
<tr>
<th>a</th>
<th>b</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>2</td>
</tr>
</tbody>
</table>
```
A headerless indented grid table is recognized too.
```
% pandoc -f markdown -t html
+------+------+
| foo | bar |
+------+------+
^D
<table style="width:19%;">
<colgroup>
<col style="width: 9%" />
<col style="width: 9%" />
</colgroup>
<tbody>
<tr>
<td>foo</td>
<td>bar</td>
</tr>
</tbody>
</table>
```
A grid table indented four spaces is a code block, not a table.
```
% pandoc -f markdown -t html
+---+---+
| a | b |
+---+---+
^D
<pre><code>+---+---+
| a | b |
+---+---+</code></pre>
```