Use files containing markdown tables to store tabular data. Names for these data files should follow the
pattern *.table.md and use the text/markdown MIME type so that they can be recognized as markdown files.
- Markdown tables use
|as a seperator which is less likely to show up in data than a,or;and so escaping and quote-wrapping can be avoided. - The
|separator also mimics the vertical line of a table so that a raw data file looks more like a table. - By using markdown, the data file gets nice rendering in any tool that already supports markdown rendering.
- Columns can designate an alignment for when the file is viewed as rendered markdown.
| Name | Hex |
| :---- | :-----: |
| White | #FFFFFF |
| Black | #000000 |
| Red | #FF0000 |
| Green | #00FF00 |
| Blue | #0000FF || Name | Level | Type | Source |
| :------------------------------ | :---: | :----------- | :---------------------------------------------- |
| Uthelyn the Mad | 8 | Skirmisher | Monster Vault: Threats to the Nentir Vale, p.17 |
| Adrian "Iceheart" Reginold | 8 | Controler | Monster Vault: Threats to the Nentir Vale, p.18 |
| Madras Kalgore, The Poison Fist | 24 | Elite Lurker | Draconomicon: Chromatic Dragons, p.247 |A quick implementation I've been using in a hobby project is included in this repo. It includes a simple console app that can tidy up data files by adjusting column widths or display a certain row from a table. It is not designed or cleaned up for general use, so I'm including it just as an example of the idea.
- To display a whole table:
MarkdownDataTool read --file <path to file> - To display a row from a table:
MarkdownDataTool read --file <path to file> --key <value> - To clean up a file:
MarkdownDataTool tidy --file <path to file>