From 21f156d43baddf64397e42f3309c095c6f0ee0c0 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Sat, 17 Nov 2007 21:43:34 +0000 Subject: update pst-jtree from ctan git-svn-id: svn://tug.org/texlive/trunk@5496 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/generic/pst-jtree/README | 29 +- .../doc/generic/pst-jtree/pst-jtree-doc.pdf | Bin 256638 -> 257400 bytes .../doc/generic/pst-jtree/pst-jtree-examples.pdf | Bin 0 -> 65181 bytes .../doc/generic/pst-jtree/pst-jtree-examples.tex | 624 +++++++++++++++++++++ .../texmf-dist/tex/generic/pst-jtree/pst-jtree.tex | 4 +- .../texmf-dist/tex/latex/pst-jtree/pst-jtree.sty | 3 +- 6 files changed, 647 insertions(+), 13 deletions(-) create mode 100644 Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-examples.pdf create mode 100644 Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-examples.tex diff --git a/Master/texmf-dist/doc/generic/pst-jtree/README b/Master/texmf-dist/doc/generic/pst-jtree/README index 73912fd6c3e..38643c460cc 100644 --- a/Master/texmf-dist/doc/generic/pst-jtree/README +++ b/Master/texmf-dist/doc/generic/pst-jtree/README @@ -1,14 +1,25 @@ -The jTree package is an extension of PSTricks which is intended -to be used by linguists to typeset complex trees. It consists of -three files: pst-jtree.tex, pst-jtree.sty, and pst-jtree-doc.pdf -and requires the PSTricks package and the XKeyVal package. -jTree is a direct descendent of pst-jftree, but there are major -changes: a new tree description language is introduced and the -xkeyval package is used to handle parameters. pst-jftree will no -longer be maintained and will be placed in the /obsolete -subdirectory under PSTricks in CTAN. +The pst-jtree package is based on PSTricks and is intended to be +used by linguists to typeset complex trees. The core files are 1) +pst-jtree.tex, the Tex macro file, 2) pst-jtree.sty, a LaTex +wrapper which calls pst-jtree.tex, and 3) pst-jtree-doc.pdf, the +documentation. The complete Tex source for the documentation is +in the file pst-jtree-doc-source.zip. + +The file pst-jtree-examples.tex is a LaTex file which contains +all the complex examples in the documentation, as well as many of +the simpler ones. It very simply formatted (no packages other +than pstricks, pst-xkey, and pst-jtree are used) in order to +facilitate user experimentation with pst-jtree typesetting. +Provided that PSTricks and PST-XKey are installed, users should +be able to run this file with little difficulty if PST-jTree is +installed or simply if pst-jtree.tex and pst-jtree.sty are in the +same directory that pst-jtree-examples.tex is in. +pst-jtree-examples.pdf shows what the source produces. +For those interested in tree formatting but not LaTex, +pst-jtree-examples.tex can be very simply converted into a Tex +file. This material is subject to the LaTeX Project Public License. See http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html diff --git a/Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-doc.pdf b/Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-doc.pdf index 474aceee9ab..118815005a4 100644 Binary files a/Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-doc.pdf and b/Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-doc.pdf differ diff --git a/Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-examples.pdf b/Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-examples.pdf new file mode 100644 index 00000000000..9bb9449e24c Binary files /dev/null and b/Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-examples.pdf differ diff --git a/Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-examples.tex b/Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-examples.tex new file mode 100644 index 00000000000..d6fe1ece20a --- /dev/null +++ b/Master/texmf-dist/doc/generic/pst-jtree/pst-jtree-examples.tex @@ -0,0 +1,624 @@ + +\documentclass[12pt]{article} +\usepackage{pstricks,pst-xkey,pst-jtree} + +\rightskip=0pt plus 2em + +\newdimen\dimpuba +\newdimen\dimpubb +\newdimen\dimpubc +\newdimen\dimpubd +\newcount\exno +\exno=0 + +\def\ex{% + \vskip2.5em + \allowbreak\noindent + \global\advance\exno by 1 + \bgroup + \parindent=0pt + \rightskip=0pt minus 3em % allow overwide displays if necessary + (\the\exno)\quad +} +\def\xe{\par\egroup} + +\begin{document} +\psset{nodesepA=.8ex,nodesepB=.4ex} + +\centerline{\huge Examples} + +\vskip1.5em + +\noindent The source file for this pdf file is {\it +pst-jtree-examples.tex}. It is very simply formatted (no packages +other than pstricks, pst-xkey, and pst-jtree are used) in order +to facilitate user experimentation with pst-jtree typesetting. +Provided that PSTricks and PST-XKey are installed, users should +be able to run this file with little difficulty if PST-jTree is +installed or simply if \hbox{\it pst-jtree.tex\/} and \hbox{\it +pst-jtree.sty\/} are in the same directory that \hbox{\it +pst-jtree-examples.tex\/} is in. \hbox{\it +pst-jtree-examples.pdf\/} shows what the source produces. For +those interested in Tex tree formatting, but not LaTex, \hbox{\it +pst-jtree-examples.tex\/} can be very simply converted into a +Tex file. + +All of the complex examples in the documentation file {\it +pst-jtree-doc.pdf\/} are given here, as well as many of the +simpler ones. They appear in the same order that they appear in +the documentation. But the numbering is sequential and differs from +the numbering in the documentation. + +\ex +\jtree[xunit=2.2em,yunit=1em] +\def\:{:[scaleby=2.3]}% +\! = \:!a :{is} {rotten}. +\!a = :{the} :{cheese} :{that } \:!b :{ate} {\it t}. +\!b = :{the} :{rat} :{that } :{John \ } :{killed} {\it t}. +\endjtree +\xe + +\ex +\jtree +\! = {a} + :{b} {c} + :{d} {e} + :{f} {g} + :{h} {i}. +\endjtree +\xe + +\ex +\jtree +\! = :{a} :{b} :{c} :{d} {e}. +\endjtree +\xe + +\ex +\jtree +\defbranch(1)(-.5) +\! = {a} + :{b} {c} + :{d} {e} + :{f} {g}. +\endjtree +\xe + +\ex +\jtree[xunit=2.5em,yunit=1em] +\defbranch(2.3)(1) +\! = !a ^ :{is} {rotten}. +\!a = :{the} :{cheese} :{that} + !b ^ :{ate} {\it t}. +\!b = :{the} :{rat} :{that} + !c ^ :{killed} {\it t}. +\!c = :{the} :{cat} :{that} :{John} :{owned} {\it t}. +\endjtree +\xe + +\ex +\jtree[xunit=3em,yunit=3em] +\! = [scaleby=2 1, + arrows=->]{a} + ^[linewidth=2pt]{b} + ^[scaleby=1 2, + linestyle=dashed]{c} + ^[scaleby=1.5 1, + linestyle=dotted,linewidth=1pt]{d} + ^[scaleby=2 .5,doubleline=true]{e}. +\endjtree +\xe + +\ex +\def\GO#1#2#3{$\rm GO\bigl({#1},[_{Path}\, + FROM({#2}),TO({#3})]\bigr)$}% +\jtree[xunit=3em,yunit=1em] +\defstuff[a]{\multiline + \it The cup slid from John to Mary\cr + \GO{\bf cup}{\bf John}{\bf Mary}\cr + IP\endmultiline} +\defstuff[b]{\multiline + \it The cup\cr + \bf cup\cr + NP\endmultiline} +\defstuff[c]{\multiline + \it slid from John to Mary\cr + \GO{\mit x}{\bf John}{\bf Mary}\cr + IP\endmultiline} +\defstuff[d]{\multiline + \it The\cr + $\perp$\cr + \quad N$\rm _{SPEC}$\endmultiline} +\defstuff[e]{\multiline + \it cup\cr + \bf cup\cr + N\endmultiline} +\def\Fracture{{\omit\psframebox[boxsep=.4ex] + {Fracture$\vphantom j$}}}% +\! = {\stuff[a]} + \Fracture + :\jtbig{\stuff[b]}!a \jtbig{\stuff[c]} + \Fracture + :{$\vdots$} {$\vdots$}. +\!a = \Fracture + :{\stuff[d]} {\stuff[e]}. +\endjtree +\xe + +\ex % Dowty +\jtree[xunit=4em,yunit=2em,everylabel=\strut\it] +\! = {John walks from Boston to Detroit\rm, t, 4} + :{John\rm, T} {walk from Boston + to Detroit\rm, IV,7}[labeloffset=1.5em] + :\jtlong{walk from Boston\rm, IV,7}!a + {to Detroit\rm, IV/IV, 5} + :[scaleby=.8]{to\rm, IAV/T}() [scaleby=.8]{Detroit\rm, T}. +\!a = :{walk\rm, IV} {from Boston\rm, IV/IV, 5} + :{from\rm, IAV/T} {Boston\rm, T}. +\endjtree +\xe + +\ex % Nunes +\jtree[xunit=3em,yunit=1.4em] +\def\what{[which claim]$_k$}% +\! = {CP$_1$} + [scaleby=1.7]{CP$_2$}!a ^[scaleby=2.5]{C$'$} + :{$\rm was+Q$} {TP} + [scaleby=1.6,triratio=.4] + {he$_i$ willing to discuss \what}. +\!a = :{\what} {CP$_2$} + [scaleby=1.6,triratio=.6] + {that John$_i$ made \what}. +\endjtree +\xe + +\ex % Andrews +\jtree[xunit=2.2em,yunit=.7em] +\def\\{[labelgapb=-.5ex]}% +\! = {S} + :({NP}\\{that book}@A1 ) \jtwide{S/NP} + :({NP}\\{I}) {VP/NP} + :({V}\\{want}) {VP/NP} + :{\it to} {VP/NP} + ({V}\\{ask}) ^({NP}\\{Mary}) ^{VP/NP} + :{\it to} {VP/NP} + ({V}\\{tell}) ^({NP}\\{Tom}) ^{VP/NP} + :{\it to} {VP/NP} + :({V}\\{read}) {NP/NP}\\{e}@A2 . +\nccurve[angleA=210,angleB=-90]{->}{A2}{A1} +\endjtree +\xe + +\ex % Andrews (second version) +\jtree[xunit=2.2em,yunit=.7em] +\def\\{}% +\! = {S} + :({NP}{that book}@A1 ) \jtwide{S/NP} + :({NP}\\{I}) {VP/NP} + :({V}\\{want}) {VP/NP} + :{\it to} {VP/NP} + ({V}\\{ask}) ^({NP}\\{Mary}) ^{VP/NP} + :{\it to} {VP/NP} + ({V}\\{tell}) ^({NP}\\{Tom}) ^{VP/NP} + :{\it to} {VP/NP} + :({V}\\{read}) {NP/NP}\\{e}@A2 . +\nccurve[angleA=210,angleB=-90]{->}{A2}{A1} +\endjtree +\xe + +\ex % Merchant +a.\quad +% +\jtree[xunit=2.6em,yunit=1em] +\def\\{[labelgapb=-1.2ex]}% +\everymath={\rm}% +\! = {CP} + :({XP}\\{$\scriptstyle [wh]$}@A1 ) {$C'$} + :({$C^0$}\\{$\scriptstyle [wh,Q]$}) {$\langle\, TP\,\rangle$} + {\dots\quad\rnode[b]{A2}{\it t}\quad\dots}. +\nccurve[angleA=-150,angleB=-90,ncurv=1]{->}{A2}{A1} +\endjtree +% +\hfil +b.\quad +\jtree[xunit=2.6em,yunit=1em] +\def\\{[labelgapb=-1.2ex]}% +\everymath={\rm}% +\! = {CP} + :({XP}\\{$\scriptstyle [wh]$}@A1 ) {$C'$} + :({$C^0$}\\{$\scriptstyle [wh,Q]$}) {$\langle\, TP\,\rangle$} + {\dots\quad\rnode[b]{A2}{\it t}\quad \dots}. + \ncbar[angleA=-90,angleB=-90,armA=1em, + armB=1em,linearc=.6ex]{->}{A2}{A1} +\endjtree +\xe + +\ex % Chung, first example +a.\quad +% +\jtree[xunit=2.6em,yunit=1em] +\def\\{[labelgapb=-1.2ex]}% +\everymath={\rm}% +\! = {CP} + :({XP}\\{$\scriptstyle [wh]$}@A1 ) {$C'$} + :({$C^0$}\\{$\scriptstyle [wh,Q]$}) {$\langle\, TP\,\rangle$} + {\dots\quad\rnode[b]{A2}{\it t}\quad\dots}. +\nccurve[angleA=-150,angleB=-90,ncurv=1]{->}{A2}{A1} +\endjtree +% +\hfil +b.\quad +\jtree[xunit=2.6em,yunit=1em] +\def\\{[labelgapb=-1.2ex]}% +\everymath={\rm}% +\! = {CP} + :({XP}\\{$\scriptstyle [wh]$}@A1 ) {$C'$} + :({$C^0$}\\{$\scriptstyle [wh,Q]$}) {$\langle\, TP\,\rangle$} + {\dots\quad\rnode[b]{A2}{\it t}\quad \dots}. + \ncbar[angleA=-90,angleB=-90,armA=1em, + armB=1em,linearc=.6ex]{->}{A2}{A1} +\endjtree +\xe + +\ex % Chung, second example +\jtree[xunit=2em,yunit=1.4em,labelgapb=0,triratio=0, + arrowscale=1.6 1] +\deftriangle(1.8)(1)(-.5) +\defbranch(1)(-.5) +\! = {CP} + :{\sc WH}@A {C$'$} + {\rlap{V}}@AA ^[triratio=.55]{CP} + :{\it t}@B {C$'$} + {\rlap{V}}@BB ^[triratio=.55]{CP} + :{\it t}@C {C$'$} + {\rlap{V}}@CC . +\psset{linewidth=1pt,ncurvB=1.1,nodesepA=0,nodesepB=.7ex, + angleA=-90,angleB=180,offsetA=.5ex} +\nccurve{A}{AA} +\nccurve{B}{BB} +\nccurve{C}{CC} +\psset{offsetA=-.5ex,arrows=->} +\nccurve{A}{AA} +\nccurve{B}{BB} +\nccurve{C}{CC} +\endjtree +\xe + +\ex % Caponigo and Schutze +\jtree[xunit=5em,yunit=2em] +\! = {IP} + {\triline{sono stati\hfil}} ^[triratio=.95]{FP} + :{F$_{\rlap{$\scriptstyle\rm [+strong]$}}$}!a + {Voice$_{\rlap{$\scriptstyle\rm Pass$}}$} + :{Voice\rlap{$_{\rm Pass}$}}@A2 {$\rm Agr_OP$} + :{DP}!b {${\rm Agr_O}'$} + :[scaleby=.8 1]{$\rm Agr_O$}@A3 [scaleby=.8 1]{VP} + [scaleby=.4 .7] + {\rnode{A5}{$t_i$}\hskip1ex \rnode{A6}{$t_m$}}. +\!a = {arrestati$_i$}@A1 . +\!b = {alcuni uomini$_m$}@A4 . +\psset{arrows=->} +\nccurve[angleA=225,angleB=-45]{A2}{A1} +\nccurve[angleA=200,angleB=-90,ncurv=1.5]{A3}{A2} +\nccurve[angleA=-130,angleB=-70]{A5}{A3} +\nccurve[angleA=-130,angleB=-70,linestyle=dashed]{A6}{A4} +\endjtree +\xe + +\ex % Uriagereka +\jtree[xunit=1.8em,yunit=.9em] +\def\*{\xleaders\hbox{\kern1pt.\kern1pt}\hfil}% +\deftriangle(1.3)(1)(-1/2) +\! = {F$'$} + {F}!a + ^{\hbox to 2em{\*}}{$\rm Agr_O P$} + {DP\rlap{\rnode{B2}{$\;\equiv\;$}\it me}}@B1 + ^{$\rm Agr_O P$} + ^{$\rm {Agr_O}'$} + {$\rm Agr_O$}!b ^{AsP} + {\triline + {\* \rnode[b]{D1}{t} \* DP \* \rnode[b]{D2}{t} \*}} + [scaleby=.8 1.3]{\triline{\* \rnode[b]{E1}{\it a} \*}}. +\!a = :{F}!a1 @A1 . +\!a1 = :{F}!a2 @A2 . +\!a2 = :{V}@A3 {F}. +\psset{scaleby=.5 1} +\!b = :{V}@C1 {$\emptyset$}. +\psset{arrows=->} +\ncarc[arcangle=50]{C1}{A3} +\ncarc[arcangle=50]{B1}{A2:t} +\ncarc[arcangle=50]{D1}{C1} +\nccurve[angleA=-75,angleB=-90,ncurv=1.2,nodesepB=1ex]{D2}{B2} +\nccurve[angleA=-145,angleB=-100,ncurv=1]{E1}{A1:t} +\endjtree +\xe + +\ex % Richards +\jtree[xunit=1.5em,yunit=1.1em,labelgap=0] +\def\A#1{\pnode(0,.3){A#1}}% +\def\B#1{\pnode(0,-.3){B#1}}% +\! = :{car} {\omit\A1} + :({\omit\A0}{Op}) + :{that} + :{I} + :{T} + :{know} {\omit\B1} + :({\omit\B0}{who}) + :{C} + :{Pro} + :{to}() \jtjot + :{persuade}() \jtjot + :{V} {\omit\A2} + :\jtlong{\omit\A4}!a + :{Pro} + :{to} + :{talk} {\omit\B2} + :\jtlong{\omit\B3}!b + :{V} + :{about}() {\omit\A3}{\it t}. +\!a = :{owners}() \jtjot + :{of} {\omit\A5}{\it t}. +\!b = :{to} {\omit\B4}{\it t}. +\psset{linestyle=dashed,linewidth=.3ex,linecolor=blue,nodesep=0} +\def\fudge{.5}% +\ncline[nodesepA=-\fudge]{A0}{A1} +\ncline[nodesepB=-\fudge]{A1}{A3} +\ncline{A2}{A4} +\ncline[nodesepB=-\fudge]{A4}{A5} +\psset{linestyle=dotted,linewidth=.5ex,linecolor=red} +\ncline[nodesepA=\fudge]{B0}{B1} +\ncline{B1}{B2} +\ncline{B2}{B3} +\ncline[nodesepB=\fudge]{B3}{B4} +\endjtree +\xe + +\ex % Zubizaretta +\jtree[xunit=2.5em,yunit=2em] +\def\ovalstuff{\vtop{\hbox{arg$^3$}% + \hbox to 4em{(\thinspace \leaders\hrule\hfil\ NP)}}}% +\! = {V}@B1 + {face}({arg$^1$}@B2 ) + ^{$\rm [_V\,$leggere]}({arg$^2$,}) + ^[scaleby=3 1,branch=\blank] + {}{\ovalnode[framesep=1ex,boxsep=false]{K}{\ovalstuff}}. +\psset{arrows=->,nodesepA=0} +\nccurve[angleA=150,angleB=180,ncurv=1.2]{B2}{B1} +\nccurve[angleA=90,angleB=0,ncurv=.8]{K}{B1} +\endjtree +\xe + +\begingroup % Koopman + +\def\scaleA{[scaleby=1.6 1]}% +\def\scaleB{[scaleby=.6 1,doubleline=true,doublesep=.1ex]}% +\def\mkovalnode{\rput(-1ex,-.8) + {\ovalnode[framesep=\psxunit]{K}{\hskip2em}}}% + +\ex +\jtree[xunit=3em,yunit=1.5em] +\def\scaleA{[scaleby=1.6 1]}% +\def\scaleB{[scaleby=.6 1,doubleline=true,doublesep=.1ex]}% +\def\mkovalnode{\rput(-1ex,-.8) + {\ovalnode[framesep=\psxunit]{K}{\hskip2em}}}% +\! = {$\rm Agr'$} + :\scaleA{Agr}!a \scaleA{\bf VP} + [linestyle=dashed,linewidth=1pt]{\bf V} + :{${\rm [_V\,e]}_i$}@A1 {T}. +\!a = :{V$_i$}!b {Agr} + {[e]$_j$}@A2 . +\!b = {\omit\mkovalnode} + :\scaleB{${\rm [_{Agr}\,Agr]}_j$}@A3 \scaleB{$\rm [_T\,T]$}. +\psset{angleA=-90,angleB=-45,arrows=->} +\nccurve[nodesepB=0]{A1}{K} +\nccurve[ncurv=1.3]{A2}{A3} +\endjtree +\xe +\vskip2em + +\ex +\jtree[xunit=4.8em,yunit=2em] +\def\mkovalnode{\rput(-1ex,-.8){\ovalnode[framesep=\psxunit]{K} + {\hskip2em}}}% +\! = {$\rm Agr'$} + :\scaleA{Agr}!a \scaleA{\bf VP} + [linestyle=dashed,linewidth=1pt]{\bf V} + :{${\rm [_V\,e]}_i$}@A1 {T}. +\!a = :{V$_i$}!b {Agr} + {[e]$_j$}@A2 . +\!b = {\omit\mkovalnode} + :\scaleB{${\rm [_{Agr}\,Agr]}_j$}@A3 \scaleB{$\rm [_T\,T]$}. +\psset{angleA=-90,angleB=-45,arrows=->} +\nccurve[nodesepB=0]{A1}{K} +\nccurve[ncurv=1.3]{A2}{A3} +\endjtree +\xe +\vskip5em + +\ex \small +\jtree[xunit=2.6em,yunit=1em] +\def\mkovalnode{\rput(-1ex,-.8){\ovalnode[framesep=\psxunit]{K} + {\hskip2em}}}% +\! = {$\rm Agr'$} + :\scaleA{Agr}!a \scaleA{\bf VP} + [linestyle=dashed,linewidth=1pt]{\bf V} + :{${\rm [_V\,e]}_i$}@A1 {T}. +\!a = :{V$_i$}!b {Agr} + {[e]$_j$}@A2 . +\!b = {\omit\mkovalnode} + :\scaleB{${\rm [_{Agr}\,Agr]}_j$}@A3 \scaleB{$\rm [_T\,T]$}. +\psset{angleA=-90,angleB=-45,arrows=->} +\nccurve[nodesepB=0]{A1}{K} +\nccurve[ncurv=1.3]{A2}{A3} +\endjtree +\xe +\vskip2em + +\endgroup % Koopman + +\ex % McCawley +\jtree[xunit=2.45em,yunit=1.4em,dirA=(1:-1),nodesep=0] +\def\\{[labelgapb=-4pt]}% +\def\V{$\rm \overline V$}% +\! = {S} + {S}!a ^{and} ^{S} + :({NP}{Fred}) {\V} + :({V}\\{knows}) {NP} + {a man} ^ + [scaleby=3.5 1,branch=\blank]{NP}@A3 !b ^{S} + :({NP}{who}) {\V}@A2 + ({V}\\{repairs}). +\!a = :({NP}{John}) {\V}@A1 + {V}\\{sells}. +\!b = {washing machines}. +\nccurve[angleB=150,ncurvB=1.4]{A2:b}{A3:t} +\nccurve[angleB=135,ncurvA=.5,ncurvB=2.6]{A1:b}{A3:t} +\endjtree +\xe + +\vfil\break + +\ex % Frampton, verb raising +\def\\#1\par{\bigskip #1\par\nobreak\vskip1.5em \hfil} +\def\Vj{V$\mskip-5mu _j$} +\psset{xunit=3.5em,yunit=1.5em,treevshift=1.3em} +\hfil Theories of verb raising +\medskip +\leftskip=2em + +\\Trace theory + +\jtree[scaleby=.8] +\! = :{Agr} :{Tns} :{V}() \etc. +\endjtree +\quad $\longrightarrow$\quad +\jtree +\! = :{Agr} !a + :{$t_i$} + :{$t_j$}() \etc. +\psset{scaleby=.3 .4} +\!a = :{Agr} {Tns$_i$} + :{Tns} {\Vj}. +\endjtree + +\\Copy theory + +\jtree[scaleby=.8] +\! = :{Agr} :{Tns} :{V}() \etc. +\endjtree +\quad $\longrightarrow$\quad +\jtree +\! = :{Agr}!a [scaleby=1.45] + :{Tns$_i$}!b + :{\Vj}() \etc. +\psset{scaleby=.3 .4} +\!a = :{Agr} {Tns$_i$} + :{Tns} {\Vj}. +\!b = :{Tns} {\Vj}. +\endjtree + +\\Shared structure + +\jtree[scaleby=.8] +\! = :{Agr} :{Tns} :{V}() \etc. +\endjtree +\quad $\longrightarrow$\quad +\jtree +\! = :{Agr}@A1 !a + :{Tns}@A2 !b + :{V}@A3 \etc. +\psset{scaleby=.3 .4,angleA=-35,angleB=125,ncurv=1.5,nodesep=0} +\!a = {Agr}. +\!b = {Tns}. +\nccurve{->}{A1:b}{A2:t} +\nccurve{->}{A2:b}{A3:t} +\endjtree +\xe + +\ex % Frampton, Bulgarian +\kern2em +\jtree[xunit=2.4em,yunit=1.2em,style=arrows2,nodesep=0] +\def\broken{[branch=\brokenbranch,scaleby=1.6]}% +\def\stub{[scaleby=.5,arrows=-]}% +\def\\#1{\rput[bl](.6ex,.4ex){\it #1}}% +\! = {\omit\\a}@A1 + \stub @K1 ^{\omit\\b} + :{C$_2$}() \broken @A2 + \stub @K2 ^@A3 + \stub @K3 ^ + :{C$_1$}() \broken + :{ubil} {\omit\\c}@A4 + :{kolko} {\omit\\d} + :{studenti} {\omit\\e}@A5 + :{ot} :{koi} {strani}. +\psset{dirA=(1:1),angleB=90,ncurvA=.6,ncurvB=1} +\nccurve{K1}{A5} +\nccurve{-}{K2}{A5} +\nccurve{K3}{A4} +\psset{dirA=(-1:-1),dirB=(-1:-1),ncurv=4,arrows=-} +\nccurve{A1}{K1} +\nccurve{A2}{K2} +\nccurve{A3}{K3} +\endjtree +\xe + +\ex % Wilder, right node raising +\jtree[dirA=(1:-1),nodesepA=0,nodesepB=.8ex, + xunit=2.2em,yunit=1em,style=arrows2] +\! = :!a {\rnode{K1}{knew}}. +\!a = :!b {\rnode{O1}{owned}}. +\!b = :!c {\rnode{C1}{cats}}. +\!c = + :\jtlong !d [scaleby=1.8] + :{and}() [scaleby=2.4] + :{he}() @K2 + \jtjot !e . +\!d = + :{she}() @K3 + \jtjot !f . +\!e = + :{a woman}[labeloffset=-1ex] + :{who}() @O2 + @C2 + {four}. +\!f = + :{a man} + :{who}() @O3 + @C3 + {three}. +\psset{linestyle=dashed,arrows=<-} +\nccurve[angleB=-10,ncurvB=2,ncurvA=1.2]{O2}{O1} +\nccurve[angleB=-90,ncurvA=1.4]{O3}{O1} +\nccurve[angleB=-10,ncurvB=1.8,ncurvA=1.6]{K2}{K1} +\nccurve[angleB=-90,ncurvA=1.4]{K3}{K1} +\nccurve[angleB=-90,ncurvA=1.4]{C3}{C1} +\nccurve[angleB=-10,ncurvB=1.8,ncurvA=1.6]{C2}{C1} +\endjtree +\xe + +\ex % Frampton, bilinks +\def\bilink(#1,#2)(#3,#4){% + \pcarc(#1,#2)(#3,#4)% + \pcarc[linestyle=dashed](#3,#4)(#1,#2)% +}% +\kern5em +\jtree[xunit=3em,yunit=1.8em,style=arrows2, + dirA=(-1:-1),branch=\bilink,nodesep=3pt, + arcangle=10,offset=1pt,labelgapt=!3pt] +\def\@{\pscircle(0,0){3pt}}% +\! = + {\pnode{A1}\@} + {\omit\@\pnode(.8,-.8){A3}} + :({\omit\@}{C}) [scaleby=1.6,arcangle=7]{\omit\@} + :({\omit\@}{see}) + ({\omit\@\pnode{A2}}{who}[labeloffset=.8em]). +\nccurve[angleB=225,ncurvA=1.95,ncurvB=1,offset=1.6pt]{A1}{A2} +\nccurve[angleB=227,ncurvA=2,ncurvB=1.02,offset=-1.6pt, + linestyle=dashed,arrows=<-]{A1}{A2} +\rput(1.8,-1.8){\pscircle*[linecolor=white]{1em}}% +\rput(1.8,-1.8){\dots} +\endjtree +\xe + +\end{document} + diff --git a/Master/texmf-dist/tex/generic/pst-jtree/pst-jtree.tex b/Master/texmf-dist/tex/generic/pst-jtree/pst-jtree.tex index 0b2a87ebc17..54451d098c9 100644 --- a/Master/texmf-dist/tex/generic/pst-jtree/pst-jtree.tex +++ b/Master/texmf-dist/tex/generic/pst-jtree/pst-jtree.tex @@ -3,8 +3,8 @@ % use, please send me a careful description of the % modifications that have been made and the reasons that % they were made. -\def\fileversion{2.3} -\def\filedate{2006/09/17} +\def\fileversion{2.4} +\def\filedate{2006/09/24} \message{ v\fileversion, \filedate} \csname JTreeLoaded\endcsname diff --git a/Master/texmf-dist/tex/latex/pst-jtree/pst-jtree.sty b/Master/texmf-dist/tex/latex/pst-jtree/pst-jtree.sty index 4059bda870c..1eca7b301f5 100644 --- a/Master/texmf-dist/tex/latex/pst-jtree/pst-jtree.sty +++ b/Master/texmf-dist/tex/latex/pst-jtree/pst-jtree.sty @@ -1,5 +1,4 @@ -\ProvidesPackage{pst-jtree}[2006/09/17 package wrapper for PSTricks +\ProvidesPackage{pst-jtree}[2006/09/24 package wrapper for PSTricks pst-jtree.tex] -\RequirePackage{pstricks,pst-xkey} \input pst-jtree.tex \endinput -- cgit v1.2.3