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.

Example usage[edit]

This code:

{{familytree/start}}
{{familytree | | | | | GRM |v| GRP | | | | |GRM=[[Grandma]]|GRP=[[Grandpa]]}}
{{familytree | | | | | | | |)|-|-|-|.| | | |}}
{{familytree | | | MOM |v| DAD | |DAI| | | |MOM=[[Mom]]|DAD=[[Dad]]|DAI=[[Daisy|My aunt]]}}
{{familytree | |,|-|-|-|+|-|-|-|.| | | | | |}}
{{familytree | BRO | | ME1 | | SIS |~| BIL |BRO=[[Joe|My brother]]|ME1='''ME'''|SIS=[[Alice|My sister]]|BIL=[[John|My brother-in-law]]}}
{{familytree/end}}

Produces this:

 
 
 
 
Grandma
 
Grandpa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Mom
 
Dad
 
My aunt
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
My brother
 
ME
 
My sister
 
My brother-in-law
 


Parameters[edit]

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.
Solid lines:
,
 
 
 
 
  .
 
 
 
  `
 
 
 
  '
 
 
 
 
^
 
 
 
  v
 
 
 
  (
 
 
 
  )
 
 
 
 
-
 
 
  !
 
 
  +
 
 
 
 
 
 
 
Dashed lines:
F
 
 
 
 
  7
 
 
 
  L
 
 
 
  J
 
 
 
 
A
 
 
 
  V
 
 
 
  C
 
 
 
  D
 
 
 
 
~
 
 
  :
 
 
  %
 
 
 
 
 
 
 
Mixed:
*
 
 
 
 
  }
 
 
 
  {
 
 
 
 
#
 
 
 
 
  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.