NAME
Markdent::Dialect::Theory - Markdown extensions proposed by David Wheeler (aka Theory)
SYNOPSIS
use Markdent::Parser;my $parser = Markdent::Parser->new( dialects => 'Theory', handler => ... );
DESCRIPTION
The Theory roles add parsing for Markdown extensions proposed by David Wheeler (aka Theory). See <http://justatheory.com/computers/markup/markdown-table-rfc.html> and <http://justatheory.com/computers/markup/modest-markdown-proposal.html> for details.
DEVIATIONS
The dialect differs from David Wheeler's proposals in a few ways. Most of these deviations were discussed with David Wheeler and included with his approval.
- •
-
The header's "marker" row can use "+====+" as well as "+----+":
| Header 1 | Header 2 |+==========+==========+| Body 1 | Body 2 |
- •
-
The table does not require a header:
| Body 1 | Body 2 || Body 3 | Body 4 |
- •
-
You can include a header marker at the beginning and/or end of the table. This matches how MySQL outputs tables from its CLI tool.
+------+-------------+------------------------------+--------+| id | name | description | price |+------+-------------+------------------------------+--------+| 1 | gizmo | Takes care of the doohickies | 1.99 || 2 | doodad | Collects *gizmos* | 23.80 || 10 | dojigger | Foo | 102.98 || 1024 | thingamabob | Self-explanatory, no? | 0.99 |+------+-------------+------------------------------+--------+
- •
-
Currently it just does tables, not definition lists. This will be fixed in a future release.
- •
-
Table continuation lines are expected to have the same number of cells as the line being continued. In other words, this doesn't work:
| cell1 | cell2 |: continuesInstead, you must write this:
| cell1 | cell2 |: : continues :This is not an approved deviation, and may be corrected in a future release if I can figure out how to do so (patches welcome).
BUGS
See Markdent for bug reporting details.
AUTHOR
Dave Rolsky, <[email protected]>
COPYRIGHT & LICENSE
Copyright 2009-2012 Dave Rolsky, All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.