summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/forest/forest.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-01-21 00:03:40 +0000
committerKarl Berry <karl@freefriends.org>2013-01-21 00:03:40 +0000
commit57efe333991905d9fd5ba8ef1ee7ce110cdf4b83 (patch)
tree70f364d196bd240690e4cad09da6791d08bf6073 /Master/texmf-dist/tex/latex/forest/forest.sty
parent78e6fe88d0c53daeeebc6f215039f7a363490829 (diff)
forest 1.02 (20jan13)
git-svn-id: svn://tug.org/texlive/trunk@28884 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/forest/forest.sty')
-rw-r--r--Master/texmf-dist/tex/latex/forest/forest.sty64
1 files changed, 35 insertions, 29 deletions
diff --git a/Master/texmf-dist/tex/latex/forest/forest.sty b/Master/texmf-dist/tex/latex/forest/forest.sty
index 26493968160..a0d9b958013 100644
--- a/Master/texmf-dist/tex/latex/forest/forest.sty
+++ b/Master/texmf-dist/tex/latex/forest/forest.sty
@@ -29,7 +29,7 @@
%% This work consists of the files forest.dtx and forest.ins
%% and the derived file forest.sty.
%%
-\ProvidesPackage{forest}[2012/10/31 v1.01 Drawing (linguistic) trees]
+\ProvidesPackage{forest}[2013/01/20 v1.02 Drawing (linguistic) trees]
\RequirePackage{tikz}[2010/10/13]
\usetikzlibrary{shapes}
@@ -2217,27 +2217,19 @@
}
\forestset{
stages/.style={
- before typesetting nodes hook,
- typeset nodes,
- after typesetting nodes hook,
- before packing hook,
- pack,
- after packing hook,
- before computing xy hook,
- compute xy,
- after computing xy hook,
- before drawing tree hook,
- draw tree,
- after drawing tree hook,
+ process keylist=before typesetting nodes,
+ typeset nodes stage,
+ process keylist=before packing,
+ pack stage,
+ process keylist=before computing xy,
+ compute xy stage,
+ process keylist=before drawing tree,
+ draw tree stage,
},
- before typesetting nodes hook/.style={process keylist=before typesetting nodes},
- after typesetting nodes hook/.style={},
- before packing hook/.style={process keylist=before packing},
- after packing hook/.style={},
- before computing xy hook/.style={process keylist=before computing xy},
- after computing xy hook/.style={},
- before drawing tree hook/.style={process keylist=before drawing tree},
- after drawing tree hook/.style={},
+ typeset nodes stage/.style={for root'=typeset nodes},
+ pack stage/.style={for root'=pack},
+ compute xy stage/.style={for root'=compute xy},
+ draw tree stage/.style={for root'=draw tree},
process keylist/.code={\forest@process@hook@keylist{#1}},
declare keylist={given options}{},
declare keylist={before typesetting nodes}{},
@@ -2246,29 +2238,35 @@
declare keylist={before drawing tree}{},
declare keylist={delay}{},
delay/.append code={\forest@havedelayedoptionstrue},
+ delay n/.style 2 args={if={#1==0}{#2}{delay@n={#1}{#2}}},
+ delay@n/.style 2 args={
+ if={#1==1}{delay={#2}}{delay={delay@n/.wrap pgfmath arg={{##1}{#2}}{#1-1}}}
+ },
+ if have delayed/.code 2 args={%
+ \ifforest@havedelayedoptions\pgfkeysalso{#1}\else\pgfkeysalso{#2}\fi
+ },
typeset nodes/.code={%
\forest@drawtree@preservenodeboxes@false
- \forest@node@Foreach{\forest@root}{\forest@node@typeset}},
+ \forest@node@foreach{\forest@node@typeset}},
typeset nodes'/.code={%
\forest@drawtree@preservenodeboxes@true
- \forest@node@Foreach{\forest@root}{\forest@node@typeset}},
+ \forest@node@foreach{\forest@node@typeset}},
typeset node/.code={%
\forest@drawtree@preservenodeboxes@false
\forest@node@typeset
},
- pack/.code={%
- \forest@fornode{\forest@root}{\forest@pack}},
- compute xy/.code={%
- \forest@fornode{\forest@root}{\forest@node@computeabsolutepositions}},
+ pack/.code={\forest@pack},
+ pack'/.code={\forest@pack@onlythisnode},
+ compute xy/.code={\forest@node@computeabsolutepositions},
draw tree box/.store in=\forest@drawtreebox,
draw tree box,
draw tree/.code={%
\forest@drawtree@preservenodeboxes@false
- \forest@fornode{\forest@root}{\forest@node@drawtree}%
+ \forest@node@drawtree
},
draw tree'/.code={%
\forest@drawtree@preservenodeboxes@true
- \forest@fornode{\forest@root}{\forest@node@drawtree}%
+ \forest@node@drawtree
},
}
\newtoks\forest@do@dynamics
@@ -2433,6 +2431,14 @@
\fi
\fi
}
+\def\forest@pack@onlythisnode{%
+ \ifnum\forestove{n children}>0
+ \forest@pack@computetiers
+ \forest@pack@level@nonuniform
+ \forest@pack@aligntiers
+ \forest@pack@sibling@uniform@applyreversed
+ \fi
+}
\def\forest@pack@computegrowthuniformity{%
\forest@node@foreachchild{\forest@pack@computegrowthuniformity}%
\edef\forest@pack@cgu@uniformity{%