diff options
author | Karl Berry <karl@freefriends.org> | 2011-12-28 23:47:28 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-12-28 23:47:28 +0000 |
commit | 30a1fd9b015947c4d93f8696ea8367c8f9fa167a (patch) | |
tree | 6c06ac85980b47a7b9cf273cf3f22130b2943677 /Master | |
parent | e12ff80ff1745a62a4fcd2b949a4e410bc6eb3ae (diff) |
new/old pictexsum document (28dec11)
git-svn-id: svn://tug.org/texlive/trunk@24965 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/latex/pictexsum/Makefile | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/pictexsum/README | 36 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/pictexsum/a4mod.sty | 133 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/pictexsum/pictexsum.pdf | bin | 0 -> 181521 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/pictexsum/pictexsum.tex | 573 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/pictexsum/useful.sty | 176 | ||||
-rwxr-xr-x | Master/tlpkg/bin/tlpkg-ctan-check | 3 | ||||
-rwxr-xr-x | Master/tlpkg/libexec/ctan2tds | 1 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/collection-documentation-english.tlpsrc | 1 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/pictexsum.tlpsrc | 0 |
10 files changed, 924 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/pictexsum/Makefile b/Master/texmf-dist/doc/latex/pictexsum/Makefile new file mode 100644 index 00000000000..24340c06047 --- /dev/null +++ b/Master/texmf-dist/doc/latex/pictexsum/Makefile @@ -0,0 +1,2 @@ +x: + pdflatex '\nonstopmode\input pictexsum' diff --git a/Master/texmf-dist/doc/latex/pictexsum/README b/Master/texmf-dist/doc/latex/pictexsum/README new file mode 100644 index 00000000000..5537d97b8d5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/pictexsum/README @@ -0,0 +1,36 @@ +This directory contains a summary of PiCTeX, independently written by +Angus Duggan. The original PiCTeX manual is not freely available. +Please see http://www.tex.ac.uk/cgi-bin/texfaq2html?label=docpictex for +more information. + +Contact: my first name (all lowercase) +<at> +knackered +<dot> +org + + +Copyright (c) 1990 Angus Duggan +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/Master/texmf-dist/doc/latex/pictexsum/a4mod.sty b/Master/texmf-dist/doc/latex/pictexsum/a4mod.sty new file mode 100644 index 00000000000..e1775a485dc --- /dev/null +++ b/Master/texmf-dist/doc/latex/pictexsum/a4mod.sty @@ -0,0 +1,133 @@ +% Copyright (c) 1989, 1990, 1991 Angus Duggan +% All rights reserved. +% +% Redistribution and use in source and binary forms, with or without +% modification, are permitted provided that the following conditions are met: +% +% Redistributions of source code must retain the above copyright +% notice, this list of conditions and the following disclaimer. +% +% Redistributions in binary form must reproduce the above copyright +% notice, this list of conditions and the following disclaimer in the +% documentation and/or other materials provided with the distribution. +% +% THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +% IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +% TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +% PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +% HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +% SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +% TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +% PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +% LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +% NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +% SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +% +% a4mod.sty +% Easily Modifiable a4 page layout. Use this instead of a4 document substyle. +% Provides the macros: +% +% \setleftmargin{left margin}{rightward shift on odd pages} +% \setrightmargin{right margin}{leftward shift on even pages} +% \setheadmargin{top margin}{header height}{header separation} +% \setfootmargin{bottom margin}{footer height}{footer separation} +% \setmarginnote{margin note width}{margin note separation} +% +% Defaults to same size as a4.sty with fullpage option +% +% AJCD, 5/12/89 +% AJCD 2/2/90 Changed default size to [a4,fullpage] (1" margins all round) +% AJCD 9/10/91 Added \endinput in case loaded twice +% +\@ifundefined{resetmargins}{}{\endinput} + +\typeout{a4mod.sty 2/2/90 -- default size is the same as [a4,fullpage]} + +\newlength{\p@perwidth} +\setlength{\p@perwidth}{21 true cm} % a4 paper width +\newlength{\p@perlength} +\setlength{\p@perlength}{29.7 true cm} % a4 paper height + +\setlength{\voffset}{0 true in} % shift origin to paper corner +\setlength{\hoffset}{0 true in} + +% pick up point size of current font +% these parameters are not changed by the macros below +\newlength{\mainsize} +\setlength{\mainsize}{1\@ptsize pt} +\setlength{\topskip}{\mainsize} % plain has 10pt +\setlength{\maxdepth}{.4\mainsize} % plain has 4pt +\setlength{\@maxdepth}{\maxdepth} % this has to be set as well + +\newlength{\leftsidemargin} +\newlength{\leftsideshift} +\newlength{\rightsidemargin} +\newlength{\rightsideshift} +\newlength{\headsidemargin} +\newlength{\footsidemargin} + +\let\resetmargins\relax + +\def\setleftmargin#1#2{% set left printer margin and odd page shift + \setlength{\leftsidemargin}{#1}% + \setlength{\leftsideshift}{#2}% + \resetmargins +} +%\setleftmargin{1 true in}{.25 true in} +\setleftmargin{1 true in}{0 true in} + +\def\setrightmargin#1#2{% set right printer margin and even page shift + \setlength{\rightsidemargin}{#1}% + \setlength{\rightsideshift}{#2}% + \resetmargins +} +%\setrightmargin{1 true in}{.25 true in} +\setrightmargin{1 true in}{0 true in} + +\def\setheadmargin#1#2#3{% set head printer margin, size, and separation + \setlength{\headsidemargin}{#1}% + \setlength{\headheight}{#2}% + \setlength{\headsep}{#3}% + \resetmargins +} +\setheadmargin{1 true in}{\mainsize}{2\mainsize} + +\def\setfootmargin#1#2#3{% set foot printer margin, size, and separation + \setlength{\footsidemargin}{#1}% + \setlength{\footheight}{#2}% + \setlength{\footskip}{#3}% + \addtolength{\footskip}{\footheight}% + \resetmargins +} +\setfootmargin{1 true in}{\mainsize}{1.5\mainsize} + +\def\setmarginnote#1#2{% set marginal note width and separation + \setlength{\marginparwidth}{#1}% + \setlength{\marginparsep}{#2}% + \resetmargins +} +%\setmarginnote{62 pt}{10pt} +\setmarginnote{0 true in}{0 true in} + +\def\resetmargins{% reset textheight and length from parameters + \setlength{\oddsidemargin}{\leftsidemargin}% + \addtolength{\oddsidemargin}{-1 true in}% + \addtolength{\oddsidemargin}{\leftsideshift}% + \setlength{\evensidemargin}{\oddsidemargin}% + \addtolength{\evensidemargin}{-\rightsideshift}% + \setlength{\textwidth}{\p@perwidth}% start at full width + \addtolength{\textwidth}{-\leftsidemargin}% + \addtolength{\textwidth}{-\leftsideshift}% + \addtolength{\textwidth}{-\marginparwidth}% + \addtolength{\textwidth}{-\marginparsep}% + \addtolength{\textwidth}{-\rightsidemargin}% + \setlength{\topmargin}{\headsidemargin}% + \addtolength{\topmargin}{-1 true in}% + \setlength{\textheight}{\p@perlength}% start at full height + \addtolength{\textheight}{-\headsidemargin}% + \addtolength{\textheight}{-\headheight}% + \addtolength{\textheight}{-\headsep}% + \addtolength{\textheight}{-\footskip}% + \addtolength{\textheight}{-\footsidemargin}% +} +\resetmargins diff --git a/Master/texmf-dist/doc/latex/pictexsum/pictexsum.pdf b/Master/texmf-dist/doc/latex/pictexsum/pictexsum.pdf Binary files differnew file mode 100644 index 00000000000..0a754db4775 --- /dev/null +++ b/Master/texmf-dist/doc/latex/pictexsum/pictexsum.pdf diff --git a/Master/texmf-dist/doc/latex/pictexsum/pictexsum.tex b/Master/texmf-dist/doc/latex/pictexsum/pictexsum.tex new file mode 100644 index 00000000000..e4de9b27acc --- /dev/null +++ b/Master/texmf-dist/doc/latex/pictexsum/pictexsum.tex @@ -0,0 +1,573 @@ +% Copyright (c) 1990 Angus Duggan +% All rights reserved. +% +% Redistribution and use in source and binary forms, with or without +% modification, are permitted provided that the following conditions are met: +% +% Redistributions of source code must retain the above copyright +% notice, this list of conditions and the following disclaimer. +% +% Redistributions in binary form must reproduce the above copyright +% notice, this list of conditions and the following disclaimer in the +% documentation and/or other materials provided with the distribution. +% +% THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +% IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +% TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +% PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +% HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +% SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +% TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +% PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +% LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +% NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +% SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +\documentstyle[useful,a4mod]{article} + +\author{Compiled by\\[6pt] +Angus Duggan +\\[6pt] +{\tt tex@ed.lfcs}} + +\title{\PiCTeX{} command summary} + +\date{22\textsuperscript{\rm nd} January 1990} + +% reset page margins +\setleftmargin{1in}{0in} +\setrightmargin{1in}{0in} +%\setheadmargin{1in}{\mainsize}{2\mainsize} +%\setfootmargin{1in}{\mainsize}{2\mainsize} +\setmarginnote{0in}{0in} + +% reset float fractions +\setcounter{topnumber}{3} +\renewcommand{\topfraction}{.5} +\setcounter{bottomnumber}{3} +\renewcommand{\bottomfraction}{.5} +\setcounter{totalnumber}{5} +\renewcommand{\textfraction}{.25} + +% Don't display overfull boxes... +\overfullrule=0pt +% Don't complain about long lines unless they are over 3pt too big... +\hfuzz=3pt + +% names of sysops +\newcommand{\syspers}{Carol Anstruther} +\newcommand{\texpers}{Angus Duggan} + +% font for warnings, notes, etc. +\newfont{\uit}{cmu10} +% font for thin vertical bar +\newfont{\symfont}{cmsy10} + +% abbreviations +\newcommand{\unix}{{\sc unix}} +\newcommand{\dvilaser}{{\sc DviLaser}} +\newcommand{\tex}{{tex}} +\newcommand{\Tex}{{Tex}} + +\newcommand{\rvb}{{\symfont\char'152}} + +\renewcommand{\emph}[1]{{\em#1\/}} +\newcommand{\slan}[1]{{\sl#1\/}} +\newcommand{\type}[1]{{\tt#1}} + +% indented \tt paragraphs, for commands +\newenvironment{command}% + {\begin{list}{}{\tt}\item[]}% + {\end{list}} +% indented verbatim paragraphs, for commands +\newverbatim{verbcommand}% + {\begin{list}{}{\parsep0pt\itemsep0pt}\item[]}% + {\end{list}} +% small indented verbatim for examples +\newverbatim{example}% + {\begin{list}{}{\small\parsep0pt\itemsep0pt}\item[]}% + {\end{list}} +% list for syntax decls. +\newenvironment{syntax}% + {\begin{labelled}}% + {\end{labelled}} + +\pagestyle{headings} +%\raggedbottom + +%\makeindex + +\begin{document} + +\maketitle + +This article contains a summary of the \PiCTeX{} commands. This is intended as +a reminder for users who have read the \PiCTeX{} manual (which is available +from the LFCS library). The following conventions should be observed when +using \PiCTeX{} commands: +\begin{itemize} +\item +At least one blank must be present for each blank in the command prototypes +below. +\item +Quantities in \type{<>}'s must be specified as explicit dimensions, or in +terms of \TeX's dimension registers. +\item +\emph{coord}, \emph{xcoord}, \emph{ycoord}, \emph{x}, and \emph{y}, with or +without subscripts or superscripts denote coordinates with respect to the +current coordinate system. In particular, they are dimensionless quantities. +Values must be expressed in fixed point notation, with at most 5 digits to the +right of the decimal point. +\item +Parts of a command enclosed in [\,]'s may be omitted. +\end{itemize} + +\section{Commands} +The \PiCTeX{} drawing commands are: +\begin{syntax} +\item[{\tt\linestack[l]{\bsl accountingoff\\ +\bsl accountingon}}] +These commands suspend and resume \PiCTeX's updating procedure for the minimum +size box enclosing the picture. They should only be used when \PiCTeX{} has +been notified of +the minimum size box already (e.g.~by executing a \verb+\setplotarea+). +\item[{\tt\bsl arrow <$\ell$> [$\beta$,$\gamma$] +{\rm[}<\emph{xshift},\emph{yshift}>{\rm]} from \emph{xcoord}$_s$ \emph{ycoord}$_s$ to \emph{xcoord}$_e$ +\emph{ycoord}$_e$}] +This command draws an arrow, where (\emph{xcoord}$_s$,\emph{ycoord}$_s$) is the start of the +line on which the arrow lies, (\emph{xcoord}$_e$,\emph{ycoord}$_e$) is the end of the line +on which the arrow lies, $\ell$ is the length of the arrowhead, $\beta\ell$ is +the width of the arrowhead at half its length, and $\gamma\ell$ is the width +of the arrowhead at its full length. The arrowhead will be open, and will be +drawn with a smooth curve through the width points and the end of the line. +The arrowhead will curve in if $2\beta < \gamma$, and curve out if +$2\beta > \gamma$. +\type{<\emph{xshift},\emph{yshift}>} has the same effect as in the \verb+\put+ command. +\item[{\tt\linestack[l]{\bsl axis {\rm[}bottom{\rm]} {\rm[}top{\rm]} {\rm[}left{\rm]} {\rm[}right{\rm]}\\ +\quad{\rm[}shiftedto y=\emph{ycoord}{\rm]} {\rm[}shiftedto x=\emph{xcoord}{\rm]}\\ +\quad{\rm[}visible{\rm]} {\rm[}invisible{\rm]}\\ +\quad{\rm[}label \{\emph{axis label}\}{\rm]}\\ +\quad{\rm[}ticks{\rm]}\\ +\quad\quad{\rm[}out{\rm]} {\rm[}in{\rm]}\\ +\quad\quad{\rm[}long{\rm]} {\rm[}short{\rm]} {\rm[}length <\emph{length}>{\rm]}\\ +\quad\quad{\rm[}width <\emph{width}>{\rm]}\\ +\quad\quad{\rm[}butnotacross{\rm]} {\rm[}andacross{\rm]}\\ +\quad\quad{\rm[}unlabeled{\rm]} {\rm[}numbered{\rm]} {\rm[}withvalues \emph{value}$_1$ \emph{value}$_2$ +\ldots\ /{\rm]}\\ +\quad\quad{\rm[}unlogged{\rm]} {\rm[}logged{\rm]}\\ +\quad\quad{\rm[}quantity $q${\rm]} {\rm[}from \emph{coord}$_s$ to \emph{coord}$_e$ by +\emph{dcoord}{\rm]}\\ +\quad\quad\quad{\rm[}at \emph{coord}$_1$ \emph{coord}$_2$ \ldots\ /{\rm]}\\ +\quad/}}] +This command draws an axis along the \type{bottom}, \type{top}, \type{left}, +or \type{right} edge of the current plot area (one of these keywords must be +specified). +The \type{shiftedto} option causes a bottom or top axis to be +drawn at the specified $y$-coordinate, and a left or right axis to be drawn at +the specified $x$-coordinate. +The keyword \type{invisible} suppresses the drawing of the axis, but not of +tick marks, labels, etc. \type{visible} is the default. +The text specified by \emph{axis label} is centred with respect to the +appropriate edge of the plot area. +\type{ticks} causes tick marks to be drawn on the axis: +\begin{itemize} +\item +Ticks normally point \type{out} from the plot area; \type{in} makes them point +into the plot area. +\item +Ticks are normally \type{long}, but can be made \type{short}, or given an +arbitrary \emph{length} with the \type{length} option. +\item +The \emph{width} of the ticks can be set with the \type{width} option. +\item +Ticks can be extended across the whole plot area with the \type{andacross} +option, making grid lines. The default is \type{butnotacross}, which stops the +ticks from extending across the plot area. +\item +Ticks are normally \type{unlabeled}. If the \type{numbered} option is used, +the \type{at} or \type{from} options below assign numeric values to them. +Arbitrary tick labels can be specified by the \type{withvalues} option; the +labels \emph{value}$_1$, \emph{value}$_2$, \ldots{} are assigned to subsequent ticks until +the list of values is exhausted or an \type{unlabeled} or \type{numbered} +keyword is encountered. Values must be separated by at least one blank, and at +least one blank must precede the `\type{/}' that terminates the list. If a +value contains a blank or `\type{/}', enclose the entire value in +\type{\{\}}'s. +\item +The option \type{quantity $q$} draws $q$ ticks equally spaced from left to +right, or from bottom to top. The first and last ticks are at the ends of the +axis. +\item +The \type{from} option draws ticks at the indicated coordinates. \emph{coord}$_s$, +\emph{coord}$_e$, and \emph{dcoord} must be fixed point numbers, with the same number of +digits to the right of the decimal point (if any), and \emph{dcoord} must be +positive. If the \type{numbered} option is in effect, the coordinate of the +tick is used as the tick label. +\item +The \type{at} option draws ticks at the specified coordinates. As with the +\type{from} option, the coordinates must be fixed point numbers, which are +used as tick labels if \type{numbered} is in effect. The list of coordinates +must be terminated by `\type{/}'. +\item +The \type{logged} option applies only to the positioning subsequent ticks +specified by the \type{at} or \type{from} options. Ticks are placed at the +$\log_{10}$'s of the specified locations; the original unlogged numbers are used +as labels if \type{numbered} is in effect. \type{unlogged} is the default. +\end{itemize} +\item[\tt\bsl beginpicture] +This command is used to start \PiCTeX{} pictures. +\item[{\tt\bsl betweenarrows \{\emph{text}\} {\rm[}[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]{\rm]} +{\rm[}<\emph{xshift},\emph{yshift}>{\rm]} from \emph{xcoord}$_s$ \emph{ycoord}$_s$ to \emph{xcoord}$_e$ +\emph{ycoord}$_e$}] +\begin{sloppypar} +This command centres \emph{text} between a pair of arrows pointing outwards. +\type{<\emph{xshift},\emph{yshift}>} and \type{[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]} +have the same effect as in the \verb+\put+ command. +(\emph{xcoord}$_s$,\emph{ycoord}$_s$) and (\emph{xcoord}$_e$,\emph{ycoord}$_e$) are the start and end +coordinates of the arrow pair. +Either \emph{xcoord}$_s$ and \emph{xcoord}$_e$ should be the +same, or \emph{ycoord}$_s$ and \emph{ycoord}$_e$ should be the same. +\end{sloppypar} +\item[\tt\bsl circulararc $\theta$ degrees from \emph{xcoord}$_s$ \emph{ycoord}$_s$ center +at \emph{xcoord}$_c$ \emph{ycoord}$_c$] +This command draws an arc of a circle with a centre at (\emph{xcoord}$_c$, +\emph{ycoord}$_c$); the arc starts from (\emph{xcoord}$_s$,\emph{ycoord}$_s$) and extends +anticlockwise through $\theta$ degrees. $\theta$ can have any real value +between -360 and 360. +\item[\tt\bsl Divide <\emph{dividend}> by <\emph{divisor}> forming <\emph{quotient}>] +This is \PiCTeX's division command for dimensions. \emph{dividend} and \emph{divisor} +may be explicit dimensions or dimension registers; \emph{quotient} must be a +dimension register. +\item[\tt\bsl dontsavelinesandcurves] +This command stops \PiCTeX{} from saving plot locations to a file (see +\verb+\savelinesandcurves+). +\item[\tt\bsl ellipticalarc axes ratio $\xi$:$\eta$ $\theta$ degrees from +\emph{xcoord}$_s$ \emph{ycoord}$_s$ center at \emph{xcoord}$_c$ \emph{ycoord}$_c$] +This command draws an arc of an ellipse with a centre at (\emph{xcoord}$_c$, +\emph{ycoord}$_c$); the arc starts from (\emph{xcoord}$_s$,\emph{ycoord}$_s$) and extends +anticlockwise through $\theta$ degrees. $\xi$ and $\eta$ are numbers +proportional to the lengths of the horizontal and vertical axes of the ellipse. +\item[\tt\bsl endpicture] +This command terminates a \PiCTeX{} picture. +\item[\tt\bsl endpicturesave <\emph{xreg},\emph{yreg}>] +This command is used to terminate sub-pictures, saving the left +edge and baseline in \emph{xreg} and \emph{yreg}. +If the subpicture is then \verb+\put+ at (\emph{xcoord},\emph{ycoord}) with the options +`\type{[Bl] <\emph{xreg},\emph{yreg}>}', the reference point of the sub-picture will be +at (\emph{xcoord},\emph{ycoord}). +\item[\tt\bsl findlength \{\emph{curve commands}\}] +\PiCTeX{} executes the curve drawing commands specified and puts the length +into the dimension register \verb+\totalarclength+. This can be used as the +$\lambda$ argument to \verb+\setdotsnear+ and \verb+\setdashesnear+. +\item[{\tt\bsl frame {\rm[}<\emph{separation}>{\rm]} \{\emph{text}\}}] +This command frames \emph{text}, with an optional border of +\emph{separation}. +This command has its normal \LaTeX{} meaning outside of \PiCTeX{} pictures, +but \verb+\pictexframe+ can be used outside of \PiCTeX{} +pictures to get the same effect as \PiCTeX's \verb+\frame+. +\item[\tt\bsl grid \{$c$\} \{$r$\}] +This command partitions the the plot area in to $c$ columns and $r$ rows. +\item[\tt\bsl gridlines] +This command sets the default for the \type{andacross}/\type{butnotacross} +option of the \type{axis} command to be \type{andacross}. +\item[{\tt\linestack[l]{\bsl hshade $y_0$ $x_0^{(l)}$ $x_0^{(r)}$ \ldots\ +{\rm[}<$\epsilon_{l;i}$,$\epsilon_{r;i}$,$\epsilon_{d;i}$,$\epsilon_{u;i}$>{\rm]} +$y_i$ $x_i^{(l)}$ $x_i^{(r)}$ \ldots\ /\\ +\bsl hshade $y_0$ $x_0^{(l)}$ $x_0^{(r)}$ \ldots\ +{\rm[}<$\epsilon_{l;i}$,$\epsilon_{r;i}$,$\epsilon_{d;i}$,$\epsilon_{u;i}$>{\rm]} +$y_{2i-1}$ $x_{2i-1}^{(l)}$ $x_{2i-1}^{(r)}$ $y_{2i}$ $x_{2i}^{(l)}$ +$x_{2i}^{(r)}$ \ldots\ /}}] +This command shades a region with piecewise linear/quadratic left and right +boundaries. Sub-regions are defined by the coordinates ($x_n^{(l)}$,$y_n$), +($x_n^{(r)}$,$y_n$), ($x_{n+1}^{(r)}$,$y_{n+1}$) and +($x_{n+1}^{(l)}$,$y_{n+1}$). +The relations $y_n<y_{n+1}$ and $x_n^{(l)}\leq x_n^{(r)}$ +should hold. For the duration of the shading the optional edge effect field +`\type{<$\epsilon_{l;i}$,$\epsilon_{r;i}$,$\epsilon_{d;i}$,$\epsilon_{u;i}$>}' +overrides the specifications made by \verb+\setshadesymbol+. The second form +should be used when \verb+\setquadratic+ is in effect. +\item[\tt\bsl inboundscheckoff] +This command disables checking whether plot symbols are outside the current +plot area. +\item[\tt\bsl inboundscheckon] +This command enables checking whether plot symbols are outside the current +plot area. +\item[\tt\bsl invisibleaxes] +This command sets the default for the \type{visible}/\type{invisible} +option of the \type{axis} command to be \type{invisible}. +\item[{\tt\linestack[l]{\bsl lines {\rm[}[$o$]{\rm]} \{\emph{line}$_1$\bsl cr +\emph{line}$_2$\bsl cr \ldots\ \}\\ +\bsl Lines {\rm[}[$o$]{\rm]} \{\emph{line}$_1$\bsl cr \emph{line}$_2$\bsl cr \ldots\ \}}}] +These commands produce stacks of lines, spaced normally. The lines will be +left justified if $o$ is `\type{l}', right justified if $o$ is `\type{r}', and +centred otherwise. \verb+\Lines+ is similar to \verb+\lines+, except the +baseline of the stack is the baseline of the top line instead of the baseline +of the bottom line. +\item[\tt\bsl loggedticks] +This command sets the default for the \type{logged}/\type{unlogged} +option of the \type{axis} command to be \type{logged}. +\item[{\tt\linestack[l]{\bsl multiput\{\emph{text}\} +{\rm[}[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]{\rm]} +{\rm[}<\emph{xshift},\emph{yshift}>{\rm]} at "\emph{file name}"\\ +\bsl multiput \{\emph{text}\} +{\rm[}[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]{\rm]} +{\rm[}<\emph{xshift},\emph{yshift}>{\rm]} at \ldots\ \emph{xcoord} \emph{ycoord} \ldots\ *$n$ +\emph{dxcoord} \emph{dycoord} \ldots\ /}}] +This command is used to \verb+\put+ copies of the same text at multiple +locations. The text will by put at each (\emph{xcoord},\emph{ycoord}), and at +each ($xcoord+i\cdot dxcoord$,$ycoord+i\cdot dycoord$) for $i$ from 1 to $n$. +\item[\tt\bsl nogridlines] +This command sets the default for the \type{andacross}/\type{butnotacross} +option of the \type{axis} command to be \type{butnotacross}. +\item[\tt\bsl normalgraphs] +This command resets the default \type{axis} options and values for the +axis parameters. +\item[\tt\bsl placehypotenuse for <$\xi$> and <$\eta$> in <$\zeta$>] +This command calculates Euclidean distance $\zeta=\sqrt{\xi^2+\eta^2}$. $\xi$ +and $\eta$ +may be explicit dimensions or dimension registers; $\zeta$ must be a +dimension register. +\item[\tt\bsl placevalueinpts of <\emph{dimension register}> in +\{\emph{control sequence}\}] +This command puts the value of \emph{dimension register}, in points, into +\emph{control sequence}. +\item[{\tt\linestack[l]{\bsl plot "\emph{file name}"\\ +\bsl plot \emph{xcoord}$_0$ \emph{ycoord}$_0$ \emph{xcoord}$_1$ \emph{ycoord}$_1$ \emph{xcoord}$_2$ \emph{ycoord}$_2$ +\ldots\ /}}] +This commands plots the points given (or points from a file, if the first form +is used), in the current \emph{interpolation mode}. The interpolation modes +are selected by the commands \verb+\setbars+, \verb+\sethistograms+, +\verb+\setlinear+ and \verb+\setquadratic+. +\item[\tt\bsl plotheading \{\emph{heading}\}] +This command places \emph{heading} centred above the plot area. +\item[{\tt\bsl put \{\emph{text}\} +{\rm[}[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]{\rm]} +{\rm[}<\emph{xshift},\emph{yshift}>{\rm]} at \emph{xcoord} \emph{ycoord}}] +This commands places \emph{text} with its enclosing box centred about +(\emph{xcoord},\emph{ycoord}). If $o_x$ is `\type{r}' or `\type{l}' the right or left +edge of the box will be aligned on \emph{xcoord}. If $o_y$ is `\type{t}', +`\type{b}' or `\type{B}', the top, bottom, or baseline will be aligned on +\emph{ycoord}. If \type{<\emph{xshift},\emph{yshift}>} is specified, the object will be +shifted \emph{xshift} right and \emph{yshift} up from where it would otherwise go. +\item[{\tt\bsl putbar {\rm[}<\emph{xshift},\emph{yshift}>{\rm]} breadth <$\beta$> from +\emph{xcoord}$_s$ \emph{ycoord}$_s$ to \emph{xcoord}$_e$ \emph{ycoord}$_e$}] +This command draws a rectangle which has (\emph{xcoord}$_s$,\emph{ycoord}$_s$) and +(\emph{xcoord}$_e$,\emph{ycoord}$_e$) as the mid-points of opposite sides of length $\beta$. +Either \emph{xcoord}$_s$ and \emph{xcoord}$_e$ should be the +same, or \emph{ycoord}$_s$ and \emph{ycoord}$_e$ should be the same. +\type{<\emph{xshift},\emph{yshift}>} has the same effect as in the \verb+\put+ command. +\item[{\tt\bsl putrectangle {\rm[}<\emph{xshift},\emph{yshift}>{\rm]} corners at +\emph{xcoord}$_s$ \emph{ycoord}$_s$ and \emph{xcoord}$_e$ \emph{ycoord}$_e$}] +This command draws a rectangle with opposite corners at the points +(\emph{xcoord}$_s$,\emph{ycoord}$_s$) and (\emph{xcoord}$_e$,\emph{ycoord}$_e$). +\item[{\tt\bsl putrule {\rm[}<\emph{xshift},\emph{yshift}>{\rm]} from +\emph{xcoord}$_s$ \emph{ycoord}$_s$ to \emph{xcoord}$_e$ \emph{ycoord}$_e$}] +This command draws a rule from the point +(\emph{xcoord}$_s$,\emph{ycoord}$_s$) to the point (\emph{xcoord}$_e$,\emph{ycoord}$_e$), with breadth +\verb+\linethickness+. +Either \emph{xcoord}$_s$ and \emph{xcoord}$_e$ should be the +same, or \emph{ycoord}$_s$ and \emph{ycoord}$_e$ should be the same. +\type{<\emph{xshift},\emph{yshift}>} has the same effect as in the \verb+\put+ command. +\item[\tt\bsl rectangle <$w$> <$h$>] +This command draws a rectangle of width $w$ and height $h$, with its baseline +on its bottom edge. +\item[\tt\bsl replot "\emph{file name}"] +This command replots lines and curves which were saved to a file by +\verb+\savelinesandcurves+. +\item[\tt\bsl savelinesandcurves on "\emph{file name}"] +This command writes out the locations at which it places plot symbols while +plotting lines (not rules) and curves. +\item[{\tt\linestack[l]{\bsl setbars {\rm[}<\emph{xshift},\emph{yshift}>{\rm]} breadth +<$\beta$> at $z$ = \emph{zcoord}\\ +\quad{\rm[}baselabels ({\rm[}[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]{\rm]} +{\rm[}<\emph{xshift},\emph{yshift}>{\rm]}){\rm]}\\ +\quad{\rm[}endlabels ({\rm[}[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]{\rm]} +{\rm[}<\emph{xshift},\emph{yshift}>{\rm]}){\rm]}}}] +This command sets the interpolation mode to bar plotting mode. If $z$ is +`\type{x}', the bars start from $x=zcoord$ and extend horizontally, and if $z$ +is `\type{y}', the bars start from $y=zcoord$ and extend vertically. +\type{<\emph{xshift},\emph{yshift}>} has the same effect as in the \verb+\put+ command. +Labels can be attached to the bases of the bars with the \type{baselabels} +option. Each coordinate specification in the \verb+\plot+ command should be +followed by the appropriate label, enclosed in quotation marks. The +orientation and shifts may be used to adjust the label position. +Labels can similarly be attached to the ends of the bars with the +\type{endlabels} +option. +\item[\tt\bsl setcoordinatemode] +This command cancels \verb+\setdimensionmode+. +\item[{\tt\bsl setcoordinatesystem {\rm[}units <\emph{xunit},\emph{yunit}>{\rm]} {\rm[} +point at \emph{xcoord} \emph{ycoord}{\rm]}}] +This command redefines the coordinate system in use. \emph{xunit} is the size of +one unit on the $x$-axis, \emph{yunit} is the size of one unit on the $y$-axis. The +\type{point} option sets the reference point for the coordinate system. The +reference points of all of the coordinate systems in a picture are aligned by +\PiCTeX. +\item[{\tt\bsl setdashes {\rm[}<$\ell$>{\rm]}}] +This command resets the line pattern to be dashes of length $\ell$ followed by +gaps of length $\ell$. +\item[\tt\bsl setdashesnear <$\ell$> for <$\lambda$>] +This command sets the line pattern to be dashes of about length $\ell$, so +that a line of length $\lambda$ starts and ends with a complete dash. +\item[\tt\bsl setdashpattern <$d_1$,$g_1$,$d_2$,$g_2$,\ldots>] +This command resets the line pattern to be a dash of length $d_1$ followed by +a gap of length $g_1$, followed by a dash of length $d_2$, followed by a gap +of length $g_2$, etc. +\item[\tt\bsl setdimensionmode] +This command sets dimension mode; each location in this mode should be +specified by the absolute distance horizontally and vertically from the +origin, as dimensions. +\item[{\tt\bsl setdots {\rm[}<$\ell$>{\rm]}}] +This command resets the line pattern to be dots spaced distance $\ell$ apart. +\item[\tt\bsl setdotsnear <$\ell$> for <$\lambda$>] +This command sets the line pattern to be dots spaced about distance $\ell$ +apart, so +that a line of length $\lambda$ starts and ends with a dot. +\item[\tt\bsl sethistograms] +This command sets the interpolation mode to histogram mode. In this mode, +\verb+\plot+ plots histograms composed of rectangles with corners at +(\emph{xcoord}$_0$,\emph{ycoord}$_0$) and (\emph{xcoord}$_1$,\emph{ycoord}$_1$), (\emph{xcoord}$_1$,\emph{ycoord}$_0$) +and (\emph{xcoord}$_2$,\emph{ycoord}$_2$), etc. +\item[\tt\bsl setlinear] +This command sets the interpolation mode to linear mode. In this mode, +\verb+\plot+ draws straight lines between coordinates. +\item[\tt\bsl setplotarea x from \emph{xcoord}$_l$ to \emph{xcoord}$_r$, y from \emph{ycoord}$_b$ +to \emph{ycoord}$_t$] +\begin{sloppypar} +This command sets the current plot area to be a rectangle from +(\emph{xcoord}$_l$,\emph{ycoord}$_b$) to (\emph{xcoord}$_r$,\emph{ycoord}$_t$). +\end{sloppypar} +\item[{\tt\bsl setplotsymbol (\{\emph{plot symbol}\} +{\rm[}[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]{\rm]} +{\rm[}<\emph{xshift},\emph{yshift}>{\rm]})}] +This command sets the symbol which is used to make lines and curves to be +\emph{plot symbol}. +\type{<\emph{xshift},\emph{yshift}>} and \type{[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]} +have the same effect as in the \verb+\put+ command. +\item[\tt\bsl setquadratic] +This command sets the interpolation mode to be quadratic mode. In this mode, +quadratic arcs are drawn through the \verb+\plot+ coordinates. +\item[{\tt\bsl setshadegrid {\rm[}span <$s$>{\rm]} {\rm[}point at \emph{xcoord} +\emph{ycoord}{\rm]}}] +This command resets the anchor point of the grid used for shading to be +(\emph{xcoord},\emph{ycoord}), and the size of the grid to be $s$. +\item[{\tt\bsl setshadesymbol +{\rm[}<$\epsilon_{l}$,$\epsilon_{r}$,$\epsilon_{d}$,$\epsilon_{u}$>{\rm]} +(\{\emph{shade symbol}\} +{\rm[}[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]{\rm]} +{\rm[}<\emph{xshift},\emph{yshift}>{\rm]})}] +This command resets the symbol used to shade areas to be \emph{shade symbol}. +The optional `edge effects' field +\type{<$\epsilon_{l}$,$\epsilon_{r}$,$\epsilon_{d}$,$\epsilon_{u}$>} +specifies the distances from the left, right, bottom and top edges within +which the shade symbol will \emph{not} be placed. 0pt may be specified by +`\type{z}'. +\type{<\emph{xshift},\emph{yshift}>} and \type{[{\rm[}$o_x${\rm]}{\rm[}$o_y${\rm]}]} +have the same effect as in the \verb+\put+ command. +\item[\tt\bsl setsolid] +This command restores the line pattern to draw solid lines. +\item[\tt\bsl shaderectanglesoff] +This command cancels \verb+\shaderectangleson+. +\item[\tt\bsl shaderectangleson] +This command causes all rectangles plotted by \PiCTeX{} to be shaded +automatically. +\item[{\tt\bsl stack {\rm[}[$o$]{\rm]} +{\rm[}<\emph{leading}>{\rm]}\{\emph{list}\}}] +This command stacks textual items vertically. \emph{list} is a list of items +to be stacked, from top to bottom, separated by commas. Items are left +justified if $o$ is `\type{l}', right justified if $o$ is `\type{r}', and +centred otherwise. \emph{leading} is the distance separating the enclosing +boxes of the items in the stack. The baseline of the stack is the baseline of +the bottom item. +\item[{\tt\bsl startrotation {\rm[}by $\cos(\theta)$ $\sin(\theta)${\rm]} +{\rm[}about $x_p$ $y_p${\rm]}}] +This command causes \PiCTeX{} to rotate lines, curves, shading patterns, and +\verb+\put+ coordinates by $\theta$ degrees anticlockwise around the point +($x_p$,$y_p$). The rotation lasts until a \verb+\stoprotation+, or until the +enclosing group ends. +\item[\tt\bsl stoprotation] +This command cancels any rotation in effect. +\item[\tt\bsl ticksin] +This command sets the default for the \type{in}/\type{out} +option of the \type{axis} command to be \type{in}. +\item[\tt\bsl ticksout] +This command sets the default for the \type{in}/\type{out} +option of the \type{axis} command to be \type{out}. +\item[\tt\bsl unloggedticks] +This command sets the default for the \type{logged}/\type{unlogged} +option of the \type{axis} command to be \type{unlogged}. +\item[\tt\bsl visibleaxes] +This command sets the default for the \type{visible}/\type{invisible} +option of the \type{axis} command to be \type{visible}. +\item[{\tt\linestack[l]{\bsl vshade $x_0$ $y_0^{(b)}$ $y_0^{(t)}$ \ldots\ +{\rm[}<$\epsilon_{l;i}$,$\epsilon_{r;i}$,$\epsilon_{d;i}$,$\epsilon_{u;i}$>{\rm]} +$x_i$ $y_i^{(b)}$ $y_i^{(t)}$ \ldots\ /\\ +\bsl vshade $x_0$ $y_0^{(b)}$ $y_0^{(t)}$ \ldots\ +{\rm[}<$\epsilon_{l;i}$,$\epsilon_{r;i}$,$\epsilon_{d;i}$,$\epsilon_{u;i}$>{\rm]} +$x_{2i-1}$ $y_{2i-1}^{(b)}$ $y_{2i-1}^{(t)}$ $x_{2i}$ $y_{2i}^{(b)}$ +$y_{2i}^{(t)}$ \ldots\ /}}] +This command shades a region with piecewise linear/quadratic bottom and top +boundaries. Sub-regions are defined by the coordinates ($x_n$,$y_n^{(b)}$), +($x_n$,$y_n^{(t)}$), ($x_{n+1}$,$y_{n+1}^{(t)}$) and +($x_{n+1}$,$y_{n+1}^{(b)}$). +The relations $x_n<x_{n+1}$ and $y_n^{(b)}\leq y_n^{(t)}$ +should hold. For the duration of the shading the optional edge effect field +`\type{<$\epsilon_{l;i}$,$\epsilon_{r;i}$,$\epsilon_{d;i}$,$\epsilon_{u;i}$>}' +overrides the specifications made by \verb+\setshadesymbol+. The second form +should be used when \verb+\setquadratic+ is in effect. +\item[\tt\bsl writesavefile \{\emph{message}\}] +\begin{sloppypar} +This command writes out the text \emph{message} on the file specified by the +most recent \verb+\savelinesandcurves+ command. +\end{sloppypar} +\item[\tt\bsl Xdistance\{\emph{xcoord}\}] +This command is used to get the horizontal distance from the point \emph{xcoord} in +the current coordinate system to the origin. +\item[\tt\bsl Ydistance\{\emph{ycoord}\}] +This command is used to get the vertical distance from the point \emph{ycoord} in +the current coordinate system to the origin. +\end{syntax} + +\section{Parameters} +The parameters which can be altered to change \PiCTeX's behaviour are: +\begin{syntax} +\item[\tt\bsl headingtoplotskip] +This is the distance between the baseline of the heading and the top of the +plot area, or the top of the top axis structure. +\item[\tt\bsl linethickness] +This parameter is the default thickness of axes, tick marks, and grid lines. +This control sequence has its normal \LaTeX{} meaning outside of \PiCTeX{} +pictures, +but \verb+\pictexlinethickness+ can be used outside of \PiCTeX{} +pictures to get the same effect as \PiCTeX's \verb+\linethickness+. +\item[\tt\bsl longticklength] +This is the default length of long ticks. +\item[\tt\bsl plotsymbolspacing] +This parameter defines the distance between plotted symbols in lines and +curves. +\item[\tt\bsl shortticklength] +This is the default length of short ticks. +\item[\tt\bsl stackleading] +This is the default space put between items in a \type{stack}. +\item[\tt\bsl tickstovaluesleading] +This parameter defines the distance separating the ticks and the box enclosing +the tick values. +\item[\tt\bsl totalarclength] +This register in general contains the length of the last line or curve. +\item[\tt\bsl valuestolabelleading] +This is the distance separating the box enclosing the tick values and the box +enclosing the axis label. +\end{syntax} + +\section{Miscellaneous} +A couple of extra commands are provided by \PiCTeX{} for formatting names: +\begin{syntax} +\item[\tt\bsl PiC] +This command produces `\PiC'. +\item[\tt\bsl PiCTeX] +This command produces `\PiCTeX'. +\end{syntax} + + + +\end{document} diff --git a/Master/texmf-dist/doc/latex/pictexsum/useful.sty b/Master/texmf-dist/doc/latex/pictexsum/useful.sty new file mode 100644 index 00000000000..541b383ad38 --- /dev/null +++ b/Master/texmf-dist/doc/latex/pictexsum/useful.sty @@ -0,0 +1,176 @@ +% Copyright (c) 1990 Angus Duggan +% All rights reserved. +% +% Redistribution and use in source and binary forms, with or without +% modification, are permitted provided that the following conditions are met: +% +% Redistributions of source code must retain the above copyright +% notice, this list of conditions and the following disclaimer. +% +% Redistributions in binary form must reproduce the above copyright +% notice, this list of conditions and the following disclaimer in the +% documentation and/or other materials provided with the distribution. +% +% THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +% IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +% TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +% PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +% HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +% SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +% TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +% PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +% LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +% NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +% SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +% useful.sty - useful LaTeX macros for my documents +% AJCD 18/1/90 + +% \makeatletter +%\catcode`@=11 + + +% CHARACTERS +\def\bsl{{\tt\char'134}} % backslash +\def\crt{\char'136} % caret +\def\tld{\char'176} % tilde +\def\bar{\char'174} % vertical bar +\def\and{\char'046} % ampersand +\def\squ{{\tt\char'015}} % straight quote + +\def\tc#1{\hbox{\tt\bs#1}} +\def\ctr#1{\quad#1\hfil} +%\def\type#1{{\tt#1}} + + +% FONTS +% oldstyle (for numerals) +\def\oldstyle{\fam\@ne \tenmi} + + +% LOGOS +% AMS logo +\def\AMS{American Mathematical Society} + +% AmSTeX logo +\def\AmSTeX{$\cal A\kern-.1667em\lower.5ex\hbox{$\cal M$}\kern-.075em S$-\TeX} + +% BiBTeX logo +\def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em \TeX}} + +% Metafont logo +\font\manual=manfnt +\def\MF{{\manual META}\-{\manual FONT}} + +% SliTeX logo +\def\SliTeX{{\rm S\kern-.06em{\sc l\kern-.035emi}\kern-.06em \TeX}} + +% PiCTeX logo +\def\PiCTeX{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC\kern-.11em\TeX} + +% PiC logo +\def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} + + +% COMMANDS +% discretionary break +\def\nl{\discretionary{}{}{}} + +% linestack: like shortstack, but defaults to normal line spacing +\def\linestack{\@ifnextchar[{\@linestack}{\@linestack[c]}} +\def\@linestack[#1]{\leavevmode +\vbox\bgroup%\baselineskip-1pt\lineskip 3pt +\let\mb@l\hss +\let\mb@r\hss \expandafter\let\csname mb@#1\endcsname\relax +\let\\\@stackcr\@ishortstack} + +% inputwith: input file with local style files +% if first char is '*', count & dimen allocations are shared between styles +% if second char is also '*', allocations are shared with input file also. +% This is not clean. +\newif\ifrealloc \newif\ifmaxalloc +\newcount\b@secount \newcount\m@xcount +\newcount\b@sedimen \newcount\m@xdimen +\def\inputwith{\reallocfalse\maxalloctrue + \@ifnextchar*{\realloctrue\@inwithalloc}{\@inwithshare*}} +\def\@inwithalloc*{\@ifnextchar*{\maxallocfalse\@inwithshare}{\@inwithshare*}} +\def\@inwithshare*{\@ifnextchar[{\@inwithstyle}{\@inwithstyle[]}} +\def\@inwithstyle[#1]#2{\bgroup\makeatletter + \b@secount\count10 \b@sedimen\count11 + \m@xcount\b@secount \m@xdimen\b@sedimen + \@for\@tempa:={#1}\do + {\ifrealloc \count10\b@secount \count11\b@sedimen \fi + \expandafter\input\@tempa.sty\relax + \ifmaxalloc \ifnum\count10>\m@xcount \m@xcount\count10 \fi + \ifnum\count11>\m@xdimen \m@xdimen\count11 \fi\fi}\makeatother + \global\count10\m@xcount \global\count11\m@xdimen + \input #2\relax\egroup +} + +% readaux: reads another aux file, ignoring table of contents, etc, but +% collecting references +\def\readaux#1{% probably want some redefinition here... + \makeatletter + \@input{#1.aux} + \makeatother} + + +% ENVIRONMENTS +% hanging indentation on a list +\newbox\hangb@x +\def\labelled{% + \begin{list}{}{\renewcommand{\makelabel}[1]{\setbox\hangb@x\hbox{##1}% + \ifdim\wd\hangb@x>\leftmargin + \vbox{\hbox to\labelwidth{\box\hangb@x\hss}\hbox{}}% + \else \box\hangb@x\hfil + \fi}% + \setlength{\leftmargin}{2\leftmargin}% + \setlength{\labelsep}{.5em}% + \setlength{\labelwidth}{\leftmargin}% + \addtolength{\labelwidth}{-\labelsep}% + \setlength{\listparindent}{1.5em}% + }% +} +\def\endlabelled{% + \end{list}% +} + +% extracts (in small type) +\def\extract{% + \begin{quote}\small +} +\def\endextract{\end{quote}} + +% newverbatim ripped out of verbatim.tex: +\def\newverbatim#1{\@ifnextchar[{\@new@v@env{#1}}{\@new@v@env{#1}[0]}} +% In the definition of \@new@v@env, the easy part (definition of \endFOO) comes +% first. The definition of \FOOVERBATIM is harder, and finally \FOO is defined +% to have \verb@syntax\FOOVERBATIM at the end of its expansion. +\def\@new@v@env#1[#2]#3#4{\expandafter\def\csname end#1\endcsname{#4}\relax + \expandafter\def@verbatim\csname #1VERBATIM\endcsname{#1}{##1\end{#1}}\relax + \expandafter\newcommand\csname #1\endcsname + [#2]{#3\verb@syntax\csname #1VERBATIM\endcsname}} +% Define verbatim syntax. +\def\verb@syntax{\obeylines\tt\let\do\@makeother\dospecials\frenchspacing\@vobeyspaces} +% Finally, an auxiliary function to define a macro whose argument is delimited +% by \end{foo} in special syntax, \def@verbatim{\CS}{foo}{...body...}. +\begingroup \catcode `|=0 \catcode `[= 1 +\catcode`]=2 \catcode `\{=12 \catcode `\}=12 +\catcode`\\=12 |gdef|def@verbatim#1#2#3[|def#1##1\end{#2}[#3]] +|endgroup + + +% ANGLICISED COMMANDS +% british itemize +\let\itemise\itemize +\let\enditemise\enditemize + +% british center +\let\centre\center +\let\endcentre\endcenter +% ...and while we're at it +\let\centring\centering +\let\centreline\centerline + +% \makeatother +%\catcode`@=12 diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index 5bb8425afb2..c2e42d46973 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -297,7 +297,8 @@ my @TLP_working = qw( permute persian-bib persian-modern petiteannonce petri-nets pgf pgf-soroban pgf-umlsd pgfgantt pgfmolbio pgfopts pgfplots phaistos philex philosophersimprint - phonetic photo physymb piano picinpar pict2e pictex pictex2 piff pigpen + phonetic photo physymb piano picinpar pict2e + pictex pictex2 pictexsum piff pigpen pinlabel pitex pittetd pkfix pkfix-helper placeins placeins-plain plari plantslabels plates play plnfss plweb pmgraph pnas2009 diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index 812faeaaaad..d61187e918a 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -1241,6 +1241,7 @@ $standardtex='\.(.bx|cfg|sty|clo|ldf|cls|def|fd|cmap|4ht)$'; 'petri-nets', 'pnets\.tex|pntext\.tex|\.sty|pndraw\.tex|pnversion\.tex|\.sty|pndraw\.tex', 'pgfmolbio', 'pgfmolbio\..*\.|' . $standardtex, # .lua+.tex submodules 'pictex', '\.sty|\.tex', + 'pictexsum', 'NULL', # doc pkg 'pigpen', 'pigpen\.tex|' . $standardtex, 'pitex', 'pitex\.tex|\.ptx|' . $standardtex, 'placeins-plain', 'placeins.tex', diff --git a/Master/tlpkg/tlpsrc/collection-documentation-english.tlpsrc b/Master/tlpkg/tlpsrc/collection-documentation-english.tlpsrc index 4a07ac4b24e..3a8d0a3e0c1 100644 --- a/Master/tlpkg/tlpsrc/collection-documentation-english.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-documentation-english.tlpsrc @@ -34,6 +34,7 @@ depend metapost-examples depend mil3 depend patgen2-tutorial depend pdf-forms-tutorial-en +depend pictexsum depend plain-doc depend pstricks-examples-en depend pstricks-tutorial diff --git a/Master/tlpkg/tlpsrc/pictexsum.tlpsrc b/Master/tlpkg/tlpsrc/pictexsum.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/Master/tlpkg/tlpsrc/pictexsum.tlpsrc |