Difference between revisions of "Template:Family tree/doc"

From blackwiki
Jump to navigation Jump to search
imported>Verdy p
imported>Jonesey95
(parent template has been redirected)
 
(49 intermediate revisions by 42 users not shown)
Line 1: Line 1:
<includeonly>{{intricate template}}{{template doc page transcluded}}</includeonly>
+
#REDIRECT [[Template:Tree chart/doc]]
<noinclude>{{Documentation subpage}}</noinclude>
 
<!---PLEASE ADD METADATA TO THE <includeonly> SECTION AT THE BOTTOM OF THIS PAGE
 
 
 
    EDIT TEMPLATE DOCUMENTATION BELOW THIS LINE--->
 
This is a template for rendering simple [[family tree]]s consisting of boxes and connecting lines based on an [[ASCII art]]-like syntax.  The trees are displayed as [[HTML]] tables using [[Cascading Style Sheets|CSS]] attributes, and may contain arbitrary [[wiki markup]] within the boxes.
 
 
 
==Example usage==
 
This code:
 
<pre><nowiki>
 
{{familytree/start}}
 
{{familytree | | | | GMa |~|y|~| GPa | | GMa=Grandma|GPa=Grandpa}}
 
{{familytree | | | | | | | |)|-|-|-|.| }}
 
{{familytree | | | MOM |y| DAD | |DAISY| MOM=Mom|DAD=Dad|DAISY=[[Aunt Daisy]]}}
 
{{familytree | |,|-|-|-|+|-|-|-|.| | | }}
 
{{familytree | JOE | | ME  | | SIS | | | JOE=My brother Joe|ME='''Me!'''|SIS=My little sister}}
 
{{familytree/end}}
 
</nowiki></pre>
 
Produces this:
 
 
 
{{familytree/start}}
 
{{familytree | | | | GMa |~|y|~| GPa | | GMa=Grandma|GPa=Grandpa}}
 
{{familytree | | | | | | | |)|-|-|-|.| }}
 
{{familytree | | | MOM |y| DAD | |DAISY| MOM=Mom|DAD=Dad|DAISY=[[Aunt Daisy]]}}
 
{{familytree | |,|-|-|-|+|-|-|-|.| | | }}
 
{{familytree | JOE | | ME  | | SIS | | | JOE=My brother Joe|ME='''Me!'''|SIS=My little sister}}
 
{{familytree/end}}
 
 
 
== Parameters ==
 
This template produces one row in a family tree table.  The template accepts up to 80 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.
 
 
 
{|style="float:left;margin-left:1em"
 
|+ '''Solid lines:'''
 
|-
 
| <big><tt>,</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|,}}{{familytree/end}}
 
| <big><tt>v</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|v}}{{familytree/end}}
 
| <big><tt>.</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|.}}{{familytree/end}}
 
|-
 
| <big><tt>)</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|)}}{{familytree/end}}
 
| <big><tt>+</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|+}}{{familytree/end}}
 
| <big><tt>(</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|(}}{{familytree/end}}
 
|-
 
| <big><tt>`</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|`}}{{familytree/end}}
 
| <big><tt>^</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|^}}{{familytree/end}}
 
| <big><tt>'</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|'}}{{familytree/end}}
 
|-
 
| <big><tt>-</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|-}}{{familytree/end}}
 
| <big><tt>!</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|!}}{{familytree/end}}
 
| <big><tt> </tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree| }}{{familytree/end}}
 
|}
 
{| style="float:left;margin-left:1em"
 
|+ '''Dashed lines:'''
 
|-
 
| <big><tt>F</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|F}}{{familytree/end}}
 
| <big><tt>V</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|V}}{{familytree/end}}
 
| <big><tt>7</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|7}}{{familytree/end}}
 
|-
 
| <big><tt>D</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|D}}{{familytree/end}}
 
| <big><tt>%</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|%}}{{familytree/end}}
 
| <big><tt>C</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|C}}{{familytree/end}}
 
|-
 
| <big><tt>L</tt></big> ||style="border: 1px solid gray"| {{familytree/start}}{{familytree|L}}{{familytree/end}}
 
| <big><tt>A</tt></big> ||style="border: 1px solid gray"| {{familytree/start}}{{familytree|A}}{{familytree/end}}
 
| <big><tt>J</tt></big> ||style="border: 1px solid gray"| {{familytree/start}}{{familytree|J}}{{familytree/end}}
 
|-
 
| <big><tt>~</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|~}}{{familytree/end}}
 
| <big><tt>:</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|:}}{{familytree/end}}
 
| <big><tt> </tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree| }}{{familytree/end}}
 
|}
 
{|style="float:left;margin-left:1em"
 
|+ '''Mixed (1):'''
 
|-
 
| <big><tt>r</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|r}}{{familytree/end}}
 
| <big><tt>y</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|y}}{{familytree/end}}
 
| <big><tt>_</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|_}}{{familytree/end}}
 
|-
 
| <big><tt>]</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|]}}{{familytree/end}}
 
| <big><tt>#</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|#}}{{familytree/end}}
 
| <big><tt>[</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|[}}{{familytree/end}}
 
|-
 
| <big><tt>\</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|\}}{{familytree/end}}
 
| <big><tt>h</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|h}}{{familytree/end}}
 
| <big><tt>/</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|/}}{{familytree/end}}
 
|-
 
| <big><tt>~</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|~}}{{familytree/end}}
 
| <big><tt>!</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|!}}{{familytree/end}}
 
| <big><tt> </tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree| }}{{familytree/end}}
 
|}
 
{|style="float:left;margin-left:1em"
 
|+ '''Mixed (2):'''
 
|-
 
| <big><tt>&nbsp;</tt></big> ||<!-- missing mixed top-left corner -->
 
| <big><tt>Y</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|Y}}{{familytree/end}}
 
| <big><tt>&nbsp;</tt></big> ||<!-- missing mixed top-right corner -->
 
|-
 
| <big><tt>}</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|}|}}{{familytree/end}}
 
| <big><tt>*</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|*}}{{familytree/end}}
 
| <big><tt>{</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|{|}}{{familytree/end}}
 
|-
 
| <big><tt>&nbsp;</tt></big> ||<!-- missing mixed bottom-left corner -->
 
| <big><tt>t</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|t|}}{{familytree/end}}
 
| <big><tt>&nbsp;</tt></big> ||<!-- missing mixed bottom-right corner -->
 
|-
 
| <big><tt>-</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|-}}{{familytree/end}}
 
| <big><tt>:</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|:}}{{familytree/end}}
 
| <big><tt> </tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree| }}{{familytree/end}}
 
|}
 
{|style="float:left;margin-left:1em"
 
|+ '''Misc.:'''<!-- this subset is an insufficient set or questionable: -->
 
|-
 
| <big><tt>T</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|T}}{{familytree/end}}
 
|-
 
| <big><tt>G</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|G}}{{familytree/end}}
 
| <big><tt>X</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|X}}{{familytree/end}}
 
| <big><tt>K</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|K}}{{familytree/end}}
 
| <big><tt>k</tt></big> ||style="border:1px solid gray"| {{familytree/start}}{{familytree|k}}{{familytree/end}}
 
|}
 
<br clear="left" />
 
 
 
* '''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.
 
 
 
==Style attributes==
 
 
 
The appearance of the boxes may be controlled by the optional template parameters ''border'' and ''boxstyle''.  The former sets the width of the box border in pixels, while the latter can be used to append arbitrary [[Cascading Style Sheets|CSS]] declarations directly to the box style attributes.  For example, the following code:
 
 
 
<pre><nowiki>
 
{{familytree/start}}
 
{{familytree|border=0|boxstyle=background:#dfd;| | FOO |y| BAR | |FOO=Box 1|BAR=Box 2}}
 
{{familytree|border=0|boxstyle=background:#dfd;| | |,|-|^|-|.| | }}
 
{{familytree|border=0|boxstyle=background:#dfd;| | FOO | | BAR | |FOO=Box 3|BAR=Box 4}}
 
{{familytree/end}}
 
</nowiki></pre>
 
 
 
produces a result like this:
 
 
 
{{familytree/start}}
 
{{familytree|border=0|boxstyle=background:#dfd;| | FOO |y| BAR | |FOO=Box 1|BAR=Box 2}}
 
{{familytree|border=0|boxstyle=background:#dfd;| | |,|-|^|-|.| | }}
 
{{familytree|border=0|boxstyle=background:#dfd;| | FOO | | BAR | |FOO=Box 3|BAR=Box 4}}
 
{{familytree/end}}
 
 
 
Style attributes can even be set for individual boxes, as in the example below:
 
 
 
<pre><nowiki>
 
{{familytree/start}}
 
{{familytree| | | | |WHITE| | | | |WHITE=White box}}
 
{{familytree| |,|-|-|'|!|`|-|-|.| }}
 
{{familytree|RED  |~|GREEN|~|BLUE |RED=Red box|GREEN=Green box|BLUE=Blue box
 
|boxstyle_RED  =background-color: #faa;
 
|boxstyle_GREEN=background-color: #afa;
 
|boxstyle_BLUE =background-color: #aaf;
 
}}
 
{{familytree/end}}
 
</nowiki></pre>
 
 
 
which produces the output:
 
 
 
{{familytree/start}}
 
{{familytree| | | | |WHITE| | | | |WHITE=White box}}
 
{{familytree| |,|-|-|'|!|`|-|-|.| }}
 
{{familytree|RED  |~|GREEN|~|BLUE |RED=Red box|GREEN=Green box|BLUE=Blue box
 
|boxstyle_RED  =background-color: #faa;
 
|boxstyle_GREEN=background-color: #afa;
 
|boxstyle_BLUE =background-color: #aaf;
 
}}
 
{{familytree/end}}
 
 
 
'''NOTE:''' When specifying style attributes for individual named boxes, make sure the box names are aligned to the '''left''' side of area reserved for them in the template call (as in "<code>|RED&nbsp;&nbsp;|</code>" instead of "<code>|&nbsp;RED&nbsp;|</code>" in the example above).  Otherwise the template will end up looking for a style parameter with spaces in its name.
 
 
 
The {{tl|familytree/start}} template also accepts an optional ''style'' parameter that can be used to set CSS styles for the entire table.
 
 
 
==Accessibility==
 
{{AccessibilityDispute}}
 
This template has [[Wikipedia:Accessibility|accessibility]] problems for [[screen reader]] users. The relationships between boxes (the lines) will be hidden, effectively reducing the chart to a series of paragraphs in order by row. Charts with each generation on separate rows (rather than in columns) should be a bit more accessible. It is also recommended that you add a <code>summary</code> parameter to the start tag to describe the overall layout of the table. For example:
 
 
 
<code><nowiki>{{familytree/start| summary=Family tree diagram for Barack Obama, connecting 29 individuals in 4 generations.  Generations are arranged in rows, with Barack appearing 3rd on the 3rd such row. The bottom right corner breaks out some additional relationships of his father.}}</nowiki></code>
 
 
 
==See also==
 
* {{tl|chart}} – supports more complex family trees
 
* [[User:GregU/familytree.js|familytree.js]] – tool to easily create or update diagrams using these templates
 
* [[Wikipedia:Family trees]] – other methods
 
 
 
<includeonly>
 
[[Category:Genealogy formatting templates|{{PAGENAME}}]]
 
 
 
[[be:Шаблон:Familytree]]
 
[[br:Patrom:Gwezenn lignez]]
 
[[ca:Ajuda:Crear un arbre genealògic]]
 
[[ca:Plantilla:Arbre genealògic]]
 
[[cs:Šablona:Rodokmen]]
 
[[de:Vorlage:Stammbaum]]
 
[[eo:Ŝablono:Genealogia arbo]]
 
[[es:Plantilla:Árbol genealógico]]
 
[[fa:الگو:شجره‌نامه]]
 
[[fr:Modèle:Arbre généalogique]]
 
[[hr:Predložak:Familytree]]
 
[[hsb:Předłoha:Rodoštom]]
 
[[hy:Կաղապար:Familytree]]
 
[[it:Template:Familytree]]
 
[[ja:Template:Familytree]]
 
[[km:ទំព័រគំរូ:Familytree]]
 
[[ko:틀:가계도]]
 
[[lt:Šablonas:Familytree]]
 
[[ka:თარგი:გენეალოგია]]
 
[[nl:Sjabloon:Stamboom]]
 
[[pl:Szablon:Familytree]]
 
[[pt:Predefinição:Árvore genealógica]]
 
[[ro:Format:ArboreGenealogic]]
 
[[ru:Шаблон:Familytree]]
 
[[simple:Template:Familytree]]
 
[[sr:Шаблон:Родослов]]
 
[[sv:Mall:Släktträd]]
 
[[th:แม่แบบ:Familytree]]
 
[[zh:Template:Familytree]]
 
</includeonly>
 

Latest revision as of 15:07, 21 June 2020