Template:Family tree

{{family tree/step2 |boxstyle={{{boxstyle|}}} |border={{{border|2}}} |row1 ""= |row2 ""= |row1 " "=  |row2 " "= |row1 "0"=  |row2 "0"= |row1 "-"=  |row2 "-"=  |row1 "!"=    |row2 "!"= |row1 ","=     |row2 ","=    <span style="font:1px/1px serif"> |row1 "v"=<td colspan="2" style="border-bottom:1px solid black"> <span style="font:1px/1px serif">  | row2 "v"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "."=<td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 "."=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">  |

row1 ")"=<td rowspan="2" style="border-right:1px solid black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 ")"= <span style="font:1px/1px serif">   |

row1 "+"=<td style="border-right:1px solid black;border-bottom:1px solid black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "+"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "("=<td style="border-right:1px solid black;border-bottom:1px solid black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 "("=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">   |

row1 "`"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "`"= <span style="font:1px/1px serif">  |

row1 "^"=<td style="border-right:1px solid black;border-bottom:1px solid black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "^"= <span style="font:1px/1px serif">  |

row1 "'"=<td style="border-right:1px solid black;border-bottom:1px solid black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   | row2 "'"= <span style="font:1px/1px serif">  |

row1 "~"=<td colspan="2" style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">  | row2 "~"= <span style="font:1px/1px serif">  |

row1 ":"=<td rowspan="2" style="border-right:1px dashed black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 ":"=|

row1 "F"= <span style="font:1px/1px serif">  <td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">   | row2 "F"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "V"=<td colspan="2" style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">  | row2 "V"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "7"=<td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 "7"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">  |

row1 "D"=<td rowspan="2" style="border-right:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">   | row2 "D"= <span style="font:1px/1px serif">  |

row1 "%"=<td style="border-right:1px dashed black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">   | row2 "%"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "C"=<td style="border-right:1px dashed black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 "C"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">  |

row1 "L"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">   | row2 "L"= <span style="font:1px/1px serif">  |

row1 "A"=<td style="border-right:1px dashed black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">   | row2 "A"= <span style="font:1px/1px serif">  |

row1 "J"=<td style="border-right:1px dashed black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   | row2 "J"= <span style="font:1px/1px serif">  |

row1 "r"= <span style="font:1px/1px serif">  <td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">   | row2 "r"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "y"=<td colspan="2" style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">  | row2 "y"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "n"=<td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 "n"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">  |

row1 "]"=<td rowspan="2" style="border-right:1px solid black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">   | row2 "]"= <span style="font:1px/1px serif">  |

row1 "#"=<td style="border-right:1px solid black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">   | row2 "#"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "["=<td style="border-right:1px solid black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 "["=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">  |

row1 "c"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">   | row2 "c"= <span style="font:1px/1px serif">  |

row1 "h"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   | row2 "h"=<td colspan="2" style="border-top:1px dashed black"> <span style="font:1px/1px serif">  |

row1 "j"=<td style="border-right:1px solid black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   | row2 "j"= <span style="font:1px/1px serif">  |

row1 "p"= <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "p"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "u"=<td colspan="2" style="border-bottom:1px solid black"> <span style="font:1px/1px serif">  | row2 "u"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "q"=<td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 "q"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">  |

row1 "}"=<td rowspan="2" style="border-right:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "}"= <span style="font:1px/1px serif">  |

row1 "*"=<td style="border-right:1px dashed black;border-bottom:1px solid black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "*"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "{"=<td style="border-right:1px dashed black;border-bottom:1px solid black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 "{"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">  |

row1 "b"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "b"= <span style="font:1px/1px serif">  |

row1 "t"=<td style="border-right:1px dashed black;border-bottom:1px solid black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "t"= <span style="font:1px/1px serif">  |

row1 "d"=<td style="border-right:1px dashed black;border-bottom:1px solid black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   | row2 "d"= <span style="font:1px/1px serif">  |

row1 "T"=<td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "T"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "U"=<td style="border-right:1px dashed black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "U"= <span style="font:1px/1px serif">  |

row1 "G"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px dashed black"> <span style="font:1px/1px serif">   | row2 "G"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "X"=<td style="border-right:1px dashed black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <td style="border-bottom:1px solid black"> <span style="font:1px/1px serif">   | row2 "X"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">   <span style="font:1px/1px serif">   |

row1 "K"=<td style="border-right:1px dashed black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 "K"=<td style="border-right:1px solid black"> <span style="font:1px/1px serif">  |

row1 "k"=<td style="border-right:1px solid black;border-bottom:1px dashed black"> <span style="font:1px/1px serif">  <span style="font:1px/1px serif">   | row2 "k"=<td style="border-right:1px dashed black"> <span style="font:1px/1px serif">  |

key_1=""|tst_1_=undef|text_1=|boxstyle_1=| key_2=""|tst_2_=undef|text_2=|boxstyle_2=| key_3=""|tst_3_=undef|text_3=|boxstyle_3=| key_4=""|tst_4_=undef|text_4=|boxstyle_4=| key_5=""|tst_5_=undef|text_5=|boxstyle_5=| key_6=""|tst_6_=undef|text_6=|boxstyle_6=| key_7=""|tst_7_=undef|text_7=|boxstyle_7=| key_8=""|tst_8_=undef|text_8=|boxstyle_8=| key_9=""|tst_9_=undef|text_9=|boxstyle_9=| key_10=""|tst_10_=undef|text_10=|boxstyle_10=| key_11=""|tst_11_=undef|text_11=|boxstyle_11=| key_12=""|tst_12_=undef|text_12=|boxstyle_12=| key_13=""|tst_13_=undef|text_13=|boxstyle_13=| key_14=""|tst_14_=undef|text_14=|boxstyle_14=| key_15=""|tst_15_=undef|text_15=|boxstyle_15=| key_16=""|tst_16_=undef|text_16=|boxstyle_16=| key_17=""|tst_17_=undef|text_17=|boxstyle_17=| key_18=""|tst_18_=undef|text_18=|boxstyle_18=| key_19=""|tst_19_=undef|text_19=|boxstyle_19=| key_20=""|tst_20_=undef|text_20=|boxstyle_20=| key_21=""|tst_21_=undef|text_21=|boxstyle_21=| key_22=""|tst_22_=undef|text_22=|boxstyle_22=| key_23=""|tst_23_=undef|text_23=|boxstyle_23=| key_24=""|tst_24_=undef|text_24=|boxstyle_24=| key_25=""|tst_25_=undef|text_25=|boxstyle_25=| key_26=""|tst_26_=undef|text_26=|boxstyle_26=| key_27=""|tst_27_=undef|text_27=|boxstyle_27=| key_28=""|tst_28_=undef|text_28=|boxstyle_28=| key_29=""|tst_29_=undef|text_29=|boxstyle_29=| key_30=""|tst_30_=undef|text_30=|boxstyle_30=| key_31=""|tst_31_=undef|text_31=|boxstyle_31=| key_32=""|tst_32_=undef|text_32=|boxstyle_32=| key_33=""|tst_33_=undef|text_33=|boxstyle_33=| key_34=""|tst_34_=undef|text_34=|boxstyle_34=| key_35=""|tst_35_=undef|text_35=|boxstyle_35=| key_36=""|tst_36_=undef|text_36=|boxstyle_36=| key_37=""|tst_37_=undef|text_37=|boxstyle_37=| key_38=""|tst_38_=undef|text_38=|boxstyle_38=| key_39=""|tst_39_=undef|text_39=|boxstyle_39=| key_40=""|tst_40_=undef|text_40=|boxstyle_40=| key_41=""|tst_41_=undef|text_41=|boxstyle_41=| key_42=""|tst_42_=undef|text_42=|boxstyle_42=| key_43=""|tst_43_=undef|text_43=|boxstyle_43=| key_44=""|tst_44_=undef|text_44=|boxstyle_44=| key_45=""|tst_45_=undef|text_45=|boxstyle_45=| key_46=""|tst_46_=undef|text_46=|boxstyle_46=| key_47=""|tst_47_=undef|text_47=|boxstyle_47=| key_48=""|tst_48_=undef|text_48=|boxstyle_48=| key_49=""|tst_49_=undef|text_49=|boxstyle_49=| key_50=""|tst_50_=undef|text_50=|boxstyle_50=| key_51=""|tst_51_=undef|text_51=|boxstyle_51=| key_52=""|tst_52_=undef|text_52=|boxstyle_52=| key_53=""|tst_53_=undef|text_53=|boxstyle_53=| key_54=""|tst_54_=undef|text_54=|boxstyle_54=| key_55=""|tst_55_=undef|text_55=|boxstyle_55=| key_56=""|tst_56_=undef|text_56=|boxstyle_56=| key_57=""|tst_57_=undef|text_57=|boxstyle_57=| key_58=""|tst_58_=undef|text_58=|boxstyle_58=| key_59=""|tst_59_=undef|text_59=|boxstyle_59=| key_60=""|tst_60_=undef|text_60=|boxstyle_60=| key_61=""|tst_61_=undef|text_61=|boxstyle_61=| key_62=""|tst_62_=undef|text_62=|boxstyle_62=| key_63=""|tst_63_=undef|text_63=|boxstyle_63=| key_64=""|tst_64_=undef|text_64=|boxstyle_64=| key_65=""|tst_65_=undef|text_65=|boxstyle_65=| key_66=""|tst_66_=undef|text_66=|boxstyle_66=| key_67=""|tst_67_=undef|text_67=|boxstyle_67=| key_68=""|tst_68_=undef|text_68=|boxstyle_68=| key_69=""|tst_69_=undef|text_69=|boxstyle_69=| key_70=""|tst_70_=undef|text_70=|boxstyle_70=| key_71=""|tst_71_=undef|text_71=|boxstyle_71=| key_72=""|tst_72_=undef|text_72=|boxstyle_72=| key_73=""|tst_73_=undef|text_73=|boxstyle_73=| key_74=""|tst_74_=undef|text_74=|boxstyle_74=| key_75=""|tst_75_=undef|text_75=|boxstyle_75=| key_76=""|tst_76_=undef|text_76=|boxstyle_76=| key_77=""|tst_77_=undef|text_77=|boxstyle_77=| key_78=""|tst_78_=undef|text_78=|boxstyle_78=| key_79=""|tst_79_=undef|text_79=|boxstyle_79=| key_80=""|tst_80_=undef|text_80=|boxstyle_80=|

undef=}}

Usage
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.

The Family Tree template produces one row in a family tree table. The template accepts up to 80 unnamed variables describing the contents of the table. Each variable correlates to a tile or a box.

Tiles represent the line portions of the tree, and are represented in the template by single letters which resemble the shape of the lines meant to be shown. (Each letter is separated within the template by a "|" pipe).

Here is a list of those letters, next to the shape that each makes. Note that no input is equal to a blank tile.

Boxes can contain wiki markup, and are added by using named parameters stuck on the end of each line. Note that a box is three tiles wide, and as such to arrange the boxes in a specific way, you will have to keep track of the number of tiles between each box. Think of it like a grid, where tiles are squares on that grid, and each block constitutes three of them.

For example:

Returns this:

Remember that the individual lines in the template (like those in the example above) are preceded and closed by the templates at the beginning and.

Example
This code:

<pre style="overflow:auto;">

Returns this: