Template:Familytree
This is a template for rendering simple family trees consisting of boxes and connecting lines based on an ASCII art-like syntax. The trees are displayed as HTML tables using CSS attributes, and may contain arbitrary wiki markup within the boxes.
[edit] Example usage
This code:
{{familytree/start}} {{familytree | | | | GRM |~|y|~| GRP | | GRM=[[Grandma]]|GRP=[[Grandpa]]}} {{familytree | | | | | | | |)|-|-|-|.| }} {{familytree | | | MOM |y| DAD | |DAI| MOM=[[Mom]]|DAD=[[Dad]]|DAI=[[Daisy|Aunt]]}} {{familytree | |,|-|-|-|+|-|-|-|.| | | }} {{familytree | JOE | | ME | | SIS | | | JOE=[[My elder brother]]|ME='''ME'''|SIS=[[My little sister]]}} {{familytree/end}}
Produces this:
Grandma | Grandpa | ||||||||||||||||||||||||
Mom | Dad | Aunt | |||||||||||||||||||||||
My elder brother | ME | My little sister | |||||||||||||||||||||||
[edit] Parameters
This template produces one row in a family tree table. The template accepts up to 99 unnamed parameters describing the contents of the table. Each parameter specifies a tile or a box.
- Tiles are line drawing symbols consisting of horizontal and vertical lines and various corners and crossings thereof. Tiles are specified using single-character symbols that more or less approximate the shape of the tile in appearance. A special case of a tile is the empty tile, specified by a single space character. A table of supported tiles is given below.
, | |
. | |
` | |
' | |
|||||||||||||||||||
^ | |
v | |
( | |
) | |
|||||||||||||||||||
- | |
! | |
+ | |
|
F | |
7 | |
L | |
J | |
|||||||||||||||||||
A | |
V | |
C | |
D | |
|||||||||||||||||||
~ | |
: | |
% | |
|
* | |
} | |
{ | |
|||||||||||||||||
# | |
y | |
h | |
|||||||||||||||||
] | |
[ | |
- Boxes can contain arbitrary wiki markup. The contents of boxes are specified using additional named parameters appended to the template call. Each box is three tiles wide and normally has a 2 pixels wide black border. Boxes can have any name that is a valid template parameter name, although single character names should be avoided to prevent conflicts with tile symbols.