From 57efe333991905d9fd5ba8ef1ee7ce110cdf4b83 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 21 Jan 2013 00:03:40 +0000 Subject: forest 1.02 (20jan13) git-svn-id: svn://tug.org/texlive/trunk@28884 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/forest/forest.sty | 64 +++++++++++++++------------ 1 file changed, 35 insertions(+), 29 deletions(-) (limited to 'Master/texmf-dist/tex/latex/forest') 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{% -- cgit v1.2.3