User:Zocky/Table syntax

A simple syntax for simple tables
Here goes:

1) If a line starts and ends with a pipe, it's a table row. Cells are separated by pipes

 |a1|b1|c1| |a2|b2|c2|  displays

'''2) empty lines separate tables  |a1|b1|c1|

|a2|b2|c2|  displays

3) If a cell ends with more than one pipe, it's a column span:  |a1||c1| |a2|b2|c2| |a3|b3|| |a4| |c4|  displays

4) If a line starts with more than one pipe, it's continuing rowspans from above:

 |a1|b1|c1| |||c2| ||b3|c3| |||c4|  displays

5) treat  |a1 ||b1 |||c1|d1|e1| 

same as

|a1|b1|c1|d1|e1|

This means that

 |mammalia ||carnivora |||canis ||||dog|house|woofs| ||||wolf|woods|yelps| |||felis ||||cat|house|meows| ||||lynx|woods|hisses| ||rodenta |||ratus ||||brown rat|sewer|squeaks| ||||black rat|middle ages|plagues|  produces

5) Headings are allowed, and are treated as header cells:

 |==Nowheria==|| |===Capital===|Backendsville| |===Surface area===|small| |===People===|many|  displays

Caveat

 * Only one paragraph per cell.
 * Row spans can be specified only for leftmost cells in the table

I don't think either is very important - most tables don't need multiple paragraphs per cell and row spans are much more useful on the left side than anywhere else. If any of it is needed, there's to fall back on.

Things to consider:
<tt> |left | center | right| </tt>
 * Use spacing to specify alignment.


 * Caption row, including alignment for the table.
 * maybe make it should look like section titles?

<tt>
 * =caption=|
 * a1|b1|c1|
 * a2|b2|c2|

</tt>