summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/rrgtrees/rrgtrees.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-08-06 15:44:35 +0000
committerKarl Berry <karl@freefriends.org>2012-08-06 15:44:35 +0000
commit45bfd3b326b2887ce91891e32733bdf1da4c35d1 (patch)
tree068a8b6da2683571638d2665c8faf7ec6ed77d1d /Master/texmf-dist/tex/latex/rrgtrees/rrgtrees.sty
parent325abc59c7257d8d7dc8807273dc6854d7f64b38 (diff)
new old latex package rrgtrees (2004)
git-svn-id: svn://tug.org/texlive/trunk@27322 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/rrgtrees/rrgtrees.sty')
-rw-r--r--Master/texmf-dist/tex/latex/rrgtrees/rrgtrees.sty209
1 files changed, 209 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/rrgtrees/rrgtrees.sty b/Master/texmf-dist/tex/latex/rrgtrees/rrgtrees.sty
new file mode 100644
index 00000000000..fbed1dfbf08
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/rrgtrees/rrgtrees.sty
@@ -0,0 +1,209 @@
+%%
+%% This is file `rrgtrees.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% rrgtrees.dtx (with options: `package')
+%% Copyright (c) D. J. Gardner 2001-2004
+%%
+%% This program may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.2
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% This program consists of the files rrgtree.dtx and rrgtree.ins
+%%
+%% This program is distributed in the hope that it will be useful,
+%% but WITHOUT ANY WARRANTY; without even the implied warranty of
+%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+%%
+%% Error reports in case of UNCHANGED versions to
+%% David Gardner: djardner at softhome dot net
+%% rrgtrees.dtx. Copyright (c) D. J. Gardner 2001-2004
+
+
+\def\rrgversion{1.1}
+\def\rrgversiondate{Nov 14 2004}
+\def\rrgdocversiondate{Dec 14 2004}
+\ProvidesPackage{rrgtrees}[2004/11/14 RRG tree drawing]
+\RequirePackage{pst-node,pst-tree}
+\newcommand{\pred}[2][]{\textbf{#2}\ensuremath{'_{#1}}}
+\newcommand\SEML{\textsf{SEML}\,}
+\newcommand\INGR{\textsf{INGR}\,}
+\newcommand\BECOME{\textsf{BECOME}\,}
+\newcommand\CAUSE{\textsf{CAUSE}\,}
+\newcommand\NOT{\textsf{NOT}\,}
+\newcommand\prddo{\pred{do}}
+\newcommand\prdDO{\pred{DO}}
+\def\Sentence{{\scshape Sentence}}
+\def\Clause{{\scshape Clause}}
+\def\Core{{\scshape Core}}
+\def\Conj{{\scshape Conj}}
+\def\CMPLtext{{\scshape cmpl}}
+\def\Nuc{{\scshape Nuc}}
+\def\Arg{{\scshape Arg}}
+\def\aaj{{\scshape AAJ}}
+\def\pp{{\scshape PP}}
+\def\np{{\scshape NP}}
+\def\Periphery{{\scshape Periphery}}
+\newlength\rrgoprsep
+\newlength\rrg@tmpdim
+\newlength\rrg@tmpdima
+\newlength\rrg@tmpdimb
+\setlength{\rrgoprsep}{1.5em}
+\def\rrg@empty@toks{\global\let\rrg@dolinks\@empty}
+\rrg@empty@toks
+\def\dolinks{\rrg@dolinks\rrg@empty@toks}
+\def\@once@tmp{}
+\def\rrg@addlinks{\g@addto@macro\rrg@dolinks}
+\newcommand{\rrg@newnode}[1]{\@namedef{rrg@node@#1}{\null}}
+%%Broken code:
+%%\newcommand{\rrg@do@or@add@link}[3]{\@ifundefined{rrg@node@#1}{\typeout{#1
+%% undefined}\rrg@addlinks{#3}}{\@ifundefined{rrg@node@#2}
+%% {\typeout{#2 undefined}\rrg@addlinks{#3}}{#3}}}
+
+\newcommand{\rightangle@link}[7]{
+\settowidth{\rrg@tmpdim}{#4}%
+\skiplevels{#1}%
+\rrg@newnode{#2}%
+\ifdim\rrg@tmpdim>0pt
+\pstree{\TR[edge=none, name=#2]{#4}}{%
+#5}%
+\else%
+\TR[edge=none,name=#2]{#5}%
+\fi%
+\endskiplevels%
+\rrg@addlinks{\ncangle[angleA=90,angleB=#7,armB=0]{->}{#2}{#3}%
+\ncput*[npos=1]{#6}}}
+
+\newcommand{\diag@link}[8]{
+\settowidth{\rrg@tmpdim}{#4}%
+\expandafter\typeout{\the\rrg@tmpdim}
+\skiplevels{#1}%
+\rrg@newnode{#2}%
+\ifdim\rrg@tmpdim>0pt
+\pstree{\TR[edge=none, name=#2]{#4}}{%
+#5}%
+\else%
+\typeout{#4:#5}%
+\TR[edge=none,name=#2]{#5}%
+\fi%
+\endskiplevels%
+\rrg@addlinks{\ncdiagg[angleA=#7,armA=#8]{<-}{#3}{#2}%
+\ncput*[npos=1]{#6}}}
+\newcommand{\@NUCa}[3]{\pstree{\TR{\@do@once\Nuc}}{
+\pstree{\TR{#1}}{\pstree{\TR[name=verb]{\ncput*[npos=1.5]{\scshape{Pred}}#2}}{#3}}}}
+\newcommand{\@NUCn}[2]{\pstree{\TR{\@do@once\Nuc}}{\pstree{\TR{#1}}%
+{\TR[name=verb]{\ncput*[npos=1.5]{\scshape{Pred}}#2}}}}
+
+\newcommand{\CMPL}[3][CLAUSE]{\rightangle@link{#2}{CMPL#1}{#1}{}{#3}{\CMPLtext}{180}}
+\newcommand{\lCMPL}{\CMPL}
+\newcommand{\rCMPL}[3][CLAUSE]{\rightangle@link{#2}{CMPL#1}{#1}{}{#3}{\CMPLtext}{0}}
+\newcommand{\LCMPL}[4][CLAUSE]{\diag@link{#2}{CMPL#1}{#1}{}{#3}{\CMPLtext}{180}{#4}}
+\newcommand{\RCMPL}[4][CLAUSE]{\diag@link{#2}{CMPL#1}{#1}{}{#3}{\CMPLtext}{0}{#4}}
+\newcommand{\lPERIPH}[4][]{\rightangle@link{#2}{PERIPH#1}{CORE#1}%
+{#3}{#4}{\Periphery}{180}}
+\newcommand{\rPERIPH}[4][]{\rightangle@link{#2}{PERIPH#1}{CORE#1}%
+{#3}{#4}{\Periphery}{0}}
+\newcommand{\LPERIPH}[5][]{\diag@link{#2}{PERIPH#1}{CORE#1}{#3}%
+{#4}{\Periphery}{180}{#5}}
+\newcommand{\RPERIPH}[5][]{\diag@link{#2}{PERIPH#1}{CORE#1}{#3}%
+{#4}{\Periphery}{0}[#5]}
+
+\newcommand{\NUC}[2][V]{\@ifnextchar\bgroup{\@NUCa{#1}{#2}}{\@NUCn{#1}{#2}}}
+\newcommand{\TOP}[1]{\pstree[thislevelsep=0pt,linestyle=none]{\Tn}%
+{\psset{linestyle=solid}#1}}
+\newcommand{\SENTENCE}[2][SEN]{\pstree{\TR[name=#1]{\Sentence}\@do@once}{#2}}
+\newcommand{\CLAUSE}[2][CLS]{\pstree{\TR[name=#1]{\Clause}\@do@once}{#2}}
+\newcommand{\CORE}[2][CORE]{\pstree{\TR[name=#1]{\Core}\@do@once}{#2}}
+\newcommand{\ARG}[2][arg]{\pstree{\TR[name=#1]{\Arg}\@do@once}{#2}}
+\newcommand{\AAJ}[2][aaj]{\pstree{\TR[name=#1]{\aaj}\@do@once}{#2}}
+\newcommand{\PP}[2][PP]{\pstree{\TR[name=#1]{\pp}\@do@once}{#2}}
+\newcommand{\NP}[2][NP]{\pstree{\TR[name=#1]{\np}\@do@once}{#2}}
+\newcommand{\NCORE}[2][NC]{\pstree{\TR[name=#1]{\Core\subN}\@do@once}{#2}}
+\newcommand{\NNUC}[2][NN]{\pstree{\TR[name=#1]{\Nuc\subN}\@do@once}{#2}}
+%% |\WORD| tries to be flexible in the arguments it gets.
+%% The user may optionally include the (part of speach) a |[name]| for the
+%% |{word}| node, and possibly being followed by an |{operator projection}|.
+%% E.g. |\WORD{hello}|, |\WORD[hi]{hello}|, |\WORD(N){cat}|,
+%% |\WORD(N)[pussy]{cat}|
+%% are all permitted, as is any of the above with an operator projection
+\newcommand{\WORD}{\let\@word@tmp=\empty\@ifnextchar(%) bracket match
+{\@word@ii}{\@word@i}}
+\newcommand{\@word@i}[2][x]{\@end{#1}{#2}} % Nice easy single level word
+\def\@word@ii(#1){\@ifnextchar[%] bracket match % we have a fuller tree.
+{\@word@iii{#1}}{\@word@iii{#1}[x]}}
+\def\@word@iii#1[#2]#3{\@ifnextchar\bgroup% operators follow
+{\@word@iv{#1}{#2}{#3}}{\pstree{\TR{#1}\@do@once}{\TR[name=#2]{#3}}}}
+
+\newcommand{\@word@iv}[4]{\pstree{\TR{#1}\@do@once}{\pstree{\TR[name=#2]{#3}}{#4}}}
+\newcommand{\@do@once}{\@once@tmp\def\@once@tmp{}}
+\newcommand{\UNJOINED}{\def\@once@tmp{\global\let\psedge\@save@edge}%
+\let\@save@edge\psedge\def\psedge##1##2{}}
+\newcommand{\OPR}[3][opr]{\skiplevels{#2}{\TR[edge=none,name=#1]{#3}}\endskiplevels}
+\newcommand\OP[2][op]{\psset{levelsep=\rrgoprsep}\@end{#1}{\@do@once#2}}
+\newcommand{\oprlink}[4]{%
+\ncput*[npos=1 #1]{\rnode{label}{#4}}%
+\ncline[linestyle=dashed]{#2}{label}\ncline{->}{label}{#3}%
+}
+\newcommand{\LLINK}[5][]{%
+\ncdiagg[linestyle=none,angleA=180,armA=#2]{#4}{#3}%
+\oprlink{#1}{#3}{#4}{#5}
+}
+\newcommand{\RLINK}[5][]{%
+\ncdiagg[linestyle=none,angleA=0,armA=#2]{<-}{#4}{#3}%
+\oprlink{#1}{#3}{#4}{#5}
+}
+\newcommand{\rLINK}[4][]{\ncangle[linestyle=none,angleA=-90,angleB=0 #1]{#2}{#3}%
+\oprlink{}{#2}{#3}{#4}
+}
+\newcommand{\LINK}[4][]{\ncangle[linestyle=none,angleA=-90,angleB=180 #1]{#2}{#3}%
+\oprlink{}{#2}{#3}{#4}
+}
+\newcommand{\lLINK}{\LINK}
+\newcommand{\End}[2][x]{\@end{#1}{#2}}
+
+\newcommand{\@end}[2]{\@ifnextchar\bgroup% matching
+{\@are@ops{#1}{#2}}{\@end@{#1}{#2}}}
+\newcommand{\@end@}[2]{\TR[name=#1]{#2}}
+\def\@are@ops#1#2#3{\pstree{\@end@{#1}{#2}}{#3}}
+\def\rrgfantweak{-1pt}
+\newcommand{\FanEnd}[3][fan]{%
+\@ifnextchar\bgroup{\@fanend{#1}{#2}{#3}}{\@@fanend{#1}{1}{#2}{#3}}}
+\def\@fanend#1#2#3#4{\@@fanend{#1}{#2}{#3}{#4}}
+\newcommand{\@@fanend}[4]{
+\setbox\@tempboxa\hbox{#4}%
+\setlength{\rrg@tmpdim}{\wd\@tempboxa}%
+\addtolength{\rrg@tmpdim}{-1ex}%
+\setlength{\rrg@tmpdimb}{\psk@levelsep}%
+\setlength{\rrg@tmpdima}{\psk@levelsep}%
+\setlength{\rrg@tmpdimb}{#2\rrg@tmpdima}%
+\addtolength{\rrg@tmpdimb}{+0.7ex}%
+\addtolength{\rrg@tmpdimb}{-\ht\@tempboxa}%
+\addtolength{\rrg@tmpdimb}{-\pslabelsep}%
+\addtolength{\rrg@tmpdimb}{\rrgfantweak}%
+\pstree[thislevelsep=\rrg@tmpdimb]{\TR{#3}}{\Tfan[fansize=\rrg@tmpdim]%
+\nbput*[npos=1.5,name=#1]{#4}}
+}
+\DeclareRobustCommand*\textsubscript[1]{%
+ \@textsubscript{\selectfont#1}}
+\def\@textsubscript#1{%
+ {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
+\newcommand{\spr}[1]{\textsuperscript{#1}}
+\newcommand{\sub}[1]{\textsubscript{#1}}
+\newcommand{\subN}{\textsubscript{\scshape{n}}}
+%%Args for |\OPJoin| are:
+%% [Offset from centre] \{node\} \{node\} \{Text/structure\}
+\newcommand{\OPJoin}[4][2\rrgoprsep]{\ncline[linestyle=none]{#2}{#3}%
+\nbput[labelsep=#1,npos=0.5]{\Rnode{join-#2-#3}{#4}%
+}\ncline[linestyle=solid]{#2}{join-#2-#3}%
+\ncdiag[armA=0,armB=0]{#3}{join-#2-#3}}
+\def\psedge{\ncdiag}
+\psset{levelsep=3.5em,nodesep=1pt,angleA=-90,angleB=90,armA=0,armB=0}
+\endinput
+%%
+%% End of file `rrgtrees.sty'.