diff options
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r-- | Master/texmf-dist/source/latex/ccaption/ccaption.dtx | 27 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/cdpbundl/cdpbundl.dtx | 876 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/cdpbundl/cdpbundl.ins | 6 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/coordsys/coordsys.dtx | 202 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/coordsys/coordsys.ins | 102 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/dramatist/dramatist.dtx | 144 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/egplot/egplot.drv | 5 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/egplot/egplot.dtx | 203 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/egplot/egpman.drv | 5 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/filecontents/filecontents.dtx | 54 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/filecontents/filecontents.ins | 32 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/footbib/footbib.dtx | 81 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/footbib/footbib.ins | 12 |
13 files changed, 1167 insertions, 582 deletions
diff --git a/Master/texmf-dist/source/latex/ccaption/ccaption.dtx b/Master/texmf-dist/source/latex/ccaption/ccaption.dtx index d8d92d7135d..a7ebcb96ed6 100644 --- a/Master/texmf-dist/source/latex/ccaption/ccaption.dtx +++ b/Master/texmf-dist/source/latex/ccaption/ccaption.dtx @@ -126,6 +126,7 @@ % \cs{caption} with subfigure option} % \changes{v3.1c}{2003/11/14}{Made \cs{label} work after \cs{contcaption}} % \changes{v3.2}{2005/03/21}{Support for bilingual captions in longtable} +% \changes{v3.2a}{2005/03/29}{Fix bicaption labels} % % \def\dtxfile{ccaption.dtx} % \def\fileversion{v2.6c} \def\filedate{2000/03/15} @@ -139,6 +140,7 @@ % \def\fileversion{v3.1b} \def\filedate{2002/10/18} % \def\fileversion{v3.1c} \def\filedate{2003/11/14} % \def\fileversion{v3.2} \def\filedate{2005/03/21} +% \def\fileversion{v3.2a} \def\filedate{2005/03/29} % \newcommand*{\Lpack}[1]{\textsf {#1}} ^^A typeset a package % \newcommand*{\Lopt}[1]{\textsf {#1}} ^^A typeset an option % \newcommand*{\file}[1]{\texttt {#1}} ^^A typeset a file @@ -434,7 +436,7 @@ % \captionstyle{\centerlastline\\} % \captiontitlefont{\scshape} % \setlength{\belowcaptionskip}{10pt} -% \ifx #1\@empty \caption{#2}\else \caption[#1]{#2}} +% \ifx\@empty#1 \caption{#2}\else \caption[#1]{#2}} % \end{verbatim} % \textbf{NOTE:} Any code that involves the |@| sign must be either in % a package (|.sty|) file or enclosed between a |\makeatletter| \ldots @@ -1892,7 +1894,7 @@ % \begin{macrocode} %<*usc> \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{ccaption}[2005/03/21 v3.2 Extended captioning and new floats] +\ProvidesPackage{ccaption}[2005/03/29 v3.2a Extended captioning and new floats] % \end{macrocode} % In an attempt to avoid name clashes with other packages, all internal @@ -2428,6 +2430,7 @@ % name in % language 2, and short and long in language 2. Both texts are put % into the List of as numbered entries. +% \changes{v3.2a}{2005/03/29}{Fix empty check in \cs{bitwonumcaption}} % \begin{macrocode} \newcommand{\bitwonumcaption}[6][\@empty]{% \begingroup @@ -2439,7 +2442,7 @@ % \end{macrocode} % Do the optional labeling. % \begin{macrocode} - \ifx #1\@empty\else + \ifx\@empty#1\else \label{#1} \fi % \end{macrocode} @@ -2471,6 +2474,7 @@ % short and long in language 1, name in % language 2, and short and long in language 2. Both texts are put % into the List of, but only the first is numbered. +% \changes{v3.2a}{2005/03/29}{Fix empty check in \cs{bionenumcaption}} % \begin{macrocode} \newcommand{\bionenumcaption}[6][\@empty]{% \begingroup @@ -2482,7 +2486,7 @@ % \end{macrocode} % Do the optional labeling. % \begin{macrocode} - \ifx #1\@empty\else + \ifx\@empty#1\else \label{#1} \fi % \end{macrocode} @@ -2514,6 +2518,7 @@ % short and long in language 1, name in % language 2, and long in language 2. % Only the first text is put into the List. +% \changes{v3.2a}{2005/03/29}{Fix empty check in \cs{bicaption}} % \begin{macrocode} \newcommand{\bicaption}[5][\@empty]{% \begingroup @@ -2525,7 +2530,7 @@ % \end{macrocode} % Do the optional labeling. % \begin{macrocode} - \ifx #1\@empty\else + \ifx\@empty#1\else \label{#1} \fi % \end{macrocode} @@ -3809,6 +3814,18 @@ % The definition of |\@if@contemptyarg| is based on the improved version % that Donald supplied, only the macro names being changed. % +% For checking if an optional argument is present I used code along the +% lines: \\ +% \verb?\newcommand{\com}[4][\@empty]{...? \\ +% \verb?\ifx \@empty#1\else %argument present? \\ +% Unfortunately I was not consistent, as Benjamin Bayart found\footnote{Email +% to me on 2005/03/29.} when he used an optional argument that started with +% a double character, like \verb?\bicaption[ccapt3]{...?, which caused +% nasty things to happen. In these cases I had coded: \\ +% \verb?\ifx #1\@empty\else %argument present? \\ +% I really should have known better as this results in TRUE with +% \verb?apt3? being left dangling (and typeset). +% % \bibliographystyle{alpha} % % \begin{thebibliography}{MCCG95} diff --git a/Master/texmf-dist/source/latex/cdpbundl/cdpbundl.dtx b/Master/texmf-dist/source/latex/cdpbundl/cdpbundl.dtx index e74d31c7c6d..01d80c3291d 100644 --- a/Master/texmf-dist/source/latex/cdpbundl/cdpbundl.dtx +++ b/Master/texmf-dist/source/latex/cdpbundl/cdpbundl.dtx @@ -5,7 +5,7 @@ % % This file is part of a work named "C.D.P. Bundle". % -% Copyright (C) 1999-2005 by Gustavo MEZZETTI <mezzetti@math.unipd.it>. +% Copyright (C) 1999-2006 by Gustavo MEZZETTI <mezzetti@math.unipd.it>. % % The C.D.P. Bundle may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 @@ -31,10 +31,12 @@ % \fi % % \def\filename{cdpbundl.dtx} -% \def\fileversion{0.33} -% \def\filedate{2005/01/01} -% \def\docdate {2005/01/01} -% \def\doclongdate{January~1, 2005} +% \def\fileversion{0.34} +% \def\filedate{2006/01/01} +% \def\docdate {2006/01/01} +% \def\doclongdate{January~1, 2006} +% +% \CheckSum{4829} % % \changes{0.30}{2001 Jul 01}{First release of the C.D.P. Bundle} % \changes{0.31}{2001 Dec 01}{Added support for the \protect\opz{usePS} @@ -45,8 +47,13 @@ % \protect\packlass{\protect\articoletteracdp} class and of the % \protect\packlass{\protect\cdpaddon} package to make it compatible % with the \protect\packlass{\protect\hyperref} package} +% \changes{0.34}{2006 Jan 01}{Improved interaction with the +% \protect\packlass{\protect\hyperref} package} +% \changes{0.34}{2006 Jan 01}{Corrected positioning of floats +% in float pages} +% \changes{0.34}{2006 Jan 01}{Added \protect\texttt{\protect\bslash place} +% command} % -% \CheckSum{4756} %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z @@ -73,7 +80,7 @@ % \DoNotIndex{\setlength,\setcounter,\addtolength} % \DoNotIndex{\expandafter,\do,\relax,\advance,\multiply,\divide} % \DoNotIndex{\DeclareOption,\ExecuteOptions,\ProcessOptions} -% \DoNotIndex{\",\.\@} +% \DoNotIndex{\",\.,\@} % % \IndexPrologue{ % \section{\indexname} @@ -81,6 +88,7 @@ % is described, the ones underlined to the code line of the % definition, the rest to the code lines where the entry is used. % } +% \setcounter{IndexColumns}{2} % % \GlossaryPrologue{\section{Change History}} % @@ -117,6 +125,9 @@ % \newcommand*{\fopz}{$} % \newcommand*{\packlass}[1]{{\normalfont\ttfamily #1}} % \newcommand*{\filedir}[1]{{\normalfont\ttfamily #1}} +% \newcommand*{\env}[1]{{\normalfont\ttfamily #1}} +% \newcommand*{\cnt}[1]{{\normalfont\ttfamily #1}} +% \newcommand*{\sty}[1]{{\normalfont\ttfamily #1}} % \newcommand*{\eqref}[1]{(\ref{#1})} % % \DeclareFixedFont{\lhnss}{OT1}{cmss}{m}{n} {12} @@ -131,7 +142,7 @@ % The C.D.P.~Bundle\thanks{This file has version % \fileversion, release date \filedate; % last documentation update: \docdate. -% Copyright \copyright~1999--2005 by G.~Mezzetti +% Copyright \copyright~1999--2006 by G.~Mezzetti % (see page~\pageref{S:Copy}).} % } % \author{G. Mezzetti} @@ -164,7 +175,7 @@ % \label{S:Copy} % \vspace{-\parskip} % -% Copyright \copyright~1999--2005 by Gustavo \textsc{Mezzetti}. All +% Copyright \copyright~1999--2006 by Gustavo \textsc{Mezzetti}. All % rights are reserved, except as noted below. % % This document has been produced by feeding to a \LaTeX\ typesetting @@ -255,13 +266,13 @@ % on the top of their first page. These classes and packages serve to % prepare this kind of letters: they can print the letterhead, both in % black-and-white and in color, depending on what the user requires, -% but they can do many, many other things too. +% but they can do many other things too. % % \subsection{Credits and disclaimer} % % The \packlass{\letteracdp} document class was originally based on % the \packlass{letter} standard \LaTeX\ class. During the time, it -% went through so many deep revisions, that by now it bears +% went through so many deep revisions, that by now it retains % practically no relation with the original \packlass{letter} class; % but we want to acknowledge the ``historical'' source anyway. The % \packlass{\articoletteracdp} document class uses some ideas borrowed @@ -294,7 +305,7 @@ % available through the world-wide web). The only pieces of % information you will find in this part are how to install those % classes and packages and how to generate this documentation. This -% part, however, specifies to what extent, and under which conditions, +% part, however, specifies to what extent, and under what conditions, % you are allowed to use and distribute the classes and packages % presented in this document. % @@ -389,7 +400,7 @@ % black-and-white if you don't load this package. Experience by trial % and error has shown that some configuration work may be necessary in % order to obtain (more or less) correctly-\null looking colors in the -% seal. This happens because different printers can render color hues +% seal. This happens because different printers may render color hues % in different ways, sometimes producing surprising results. % % The configuration mechanism works as follows. For each printer @@ -407,12 +418,12 @@ % % The task of a color definition file is simply to define two colors % called "slight@col" and "strong@col" (when the definition file is -% read, the "@"~characters are treated as ordinary letters). +% read, the "@"~characters are treated as ordinary letters): % "slight@col" is the color used to paint the inner of the D and of % the P in the seal, "strong@col" is the color used to draw the lines. % You define these colors by means of the "\definecolor" command: see -% \textsl{\LaTeX book} \cite[Section~7.3 and -% Subsection~C.14.3]{LaTeXbook} for information about colors and the +% the \textsl{\LaTeX book} \cite[Section~7.3 and +% Subsection~C.14.3]{LaTeXbook} for information on colors and the % "\definecolor" command. % % The file \filedir{\example}, too, contains comments which explain @@ -481,7 +492,7 @@ % % The \filedir{\cdpshues} file should contain only zero or one (but % preferably one!) "\DeclareCDPSealHuesDefault" command. This command -% can be used only here, and only once, since it deactivates itself +% may be used only here, and only once, since it deactivates itself % when executed, and also stops \LaTeX\ from reading any further in % the configuration file. In its unique (mandatory) argument, one % puts the name, \emph{without} the extension \filedir{.def}, of the @@ -489,10 +500,10 @@ % your configuration file, because the effect of any other command is % undefined. % -% The \filedir{\cdpshues} file included in the C.D.P. Bundle contains -% comments that help you to modify it in order to declare your new -% default color definition file(s). The recommended way of doing this -% is: +% The \filedir{\cdpshues} file included in the C.D.P. Bundle contains +% comments that help you to modify it in order to declare your +% personal default color definition file. The recommended way of +% doing this is: % \begin{enumerate} % ^^A ( paren match % \renewcommand*{\labelenumi}{\theenumi)} @@ -546,15 +557,18 @@ % gracefully even if the file is absent. % % The \packlass{\adiseal} package expects to find the image of the ADI -% seal in a file in Encapsulated PostScript format called -% \filedir{\adiseal.eps}. The image should be exactly \( 60\,\mbox{bp} -% \) wide and \( 42\,\mbox{bp} \) tall; larger images will be clipped, -% smaller images will not be well aligned. The resolution is not -% fixed by the \packlass{\adiseal} package, but of course the best -% results are obtained when it matches the target printer resolution. -% I don't think that with this information you will be able to -% manifacture the correct image by yourself, but at least you can -% check if a file that you have does (not) fit! +% seal in a file in Encapsulated PostScript (EPS) format called +% \filedir{\adiseal.eps}, unless PDF output is being generated, in +% which case a file in Portable Document Format (PDF) named +% \filedir{adiseal.pdf} is searched for instead. The image should be +% exactly \( 60\,\mbox{bp} \) wide and \( 42\,\mbox{bp} \) tall; +% larger images will be clipped, smaller images will not be well +% aligned. The resolution is not fixed by the \packlass{\adiseal} +% package, but of course the best results are obtained when it matches +% the target printer resolution. I don't think that with this +% information you will be able to manifacture the correct image by +% yourself, but at least you can check whether a file you have got does +% (not) fit! % % Of course, even if I cannot distribute it under the \LaTeX\ % Project Public License, still I have prepared and made available on @@ -636,11 +650,13 @@ %\address{ % Revinu~J. \textsc{Drofnats}\\ % Department of Farm Ecology\\ -% University of St.\thinspace Anford\\ +% University of St.\,Anford\\ % Haga Alto, CA~94321 (U.S.A.) %} -%\signature{R.~J.~Drofnats\\Professor} -%\date{January~1, 2005} % as usual, date is optional, default is \today +%\signature{R.~J. Drofnats\\Professor} +%\date{January~1, 2006} % as usual, date is optional, default is \today +%% Place where the letter is written (optional): +%\place{St.\,Anford} % %% Since we are writing in English, we redefine a couple of words: %\renewcommand*{\subjectname}{Subject:} @@ -661,9 +677,7 @@ % This is the optional subject of the letter. %] % -%% A string to be prepended to the date can be specified in an optional -%% argument to the \opening command: -%\opening[St.\thinspace Anford,]{Dear Prof.~Reid,} +%\opening{Dear Prof.~Reid,} % %this letter is typeset using a \texttt{letterhead} environment, so it %will be printed with the letterhead of the \emph{Coordinamento} above @@ -831,10 +845,10 @@ % % \item[\iopz{noPS}\eopz{usePS}\fopz] % The \opz{noPS} option requests that the CDP seal be typest using -% only the standard \LaTeX\ fonts, so that the output be printable on +% only the standard \LaTeX\ fonts, so that the output is printable on % any kind of printer, even without a PostScript interpreter. On the % other hand, the \opz{usePS} option requests that it be printed using -% PostScript commands: this enhances its graphical quality, but +% PostScript commands: this improves its graphical quality, but % printing the seal will require a PostScript interpreter. The % default is \opz{noPS}. \emph{Warning:} If you use this option with % the \packlass{\cdpaddon} package, parts of the seal will be @@ -972,11 +986,6 @@ \EnableCrossrefs \CodelineIndex % \end{macrocode} -% A two-column index is better than a three-column one, because we -% have some rather long entries. -% \begin{macrocode} -\setcounter{IndexColumns}{2} -% \end{macrocode} % If you don't want to include the second part of this document, % \emph{Implementation}, uncomment the line containing the command % "\OnlyDescription". @@ -986,8 +995,8 @@ % Finally, setting "\hfuzz" and "\vfuzz" to 0~points is only one % of the many neurotic symptoms of the author! % \begin{macrocode} -\hfuzz=0pt -\vfuzz=0pt +\hfuzz = 0pt +\vfuzz = 0pt % \end{macrocode} % Now input this same file, using \DS\ conventions. % \begin{macrocode} @@ -1040,12 +1049,12 @@ % will eventually be removed, I hope! % \begin{macrocode} \ProvidesClass{letteracdp} - [2005/01/01 v0.33 (**incomplete**)] + [2006/01/01 v0.34 (**incomplete**)] % \end{macrocode} % Print a copyright message on the terminal, just below the name % of the class. % \begin{macrocode} -\typeout{Copyright (C) 1999-2005 by Gustavo MEZZETTI, +\typeout{Copyright (C) 1999-2006 by Gustavo MEZZETTI, all rights reserved.} % \end{macrocode} % @@ -1063,9 +1072,9 @@ % \subsection{Initial code} % % \begin{macro}{\Coordinamento} -% Define the following macros near the beginning of the code, so -% it will be easy to change them. The first is the full name of -% the \emph{Coordinamento}: +% Define the following macros near the beginning of the code, so it +% will be easy to change them. The first one is the full name of the +% \emph{Coordinamento}: % \begin{macrocode} \newcommand*\Coordinamento{% Coordinamento dei Dottorandi e dei Dottori di Ricerca @@ -1074,7 +1083,7 @@ % \end{macrocode} % \end{macro} % \begin{macro}{\CoordinamentoWWW} -% The second is its web address: +% The second one is its web address: % \begin{macrocode} \newcommand*\CoordinamentoWWW{% http://www.dei.unipd.it/\string~assdott/% @@ -1191,7 +1200,7 @@ % \counterindex{emptyaddrlabels} % The following five counters are used in connection with the % address labels optionally printed at the end of a compiled file. -% The \texttt{emptyaddrlabels} counter holds the number of labels to +% The \cnt{emptyaddrlabels} counter holds the number of labels to % leave blank when starting to print (the first sheet of) the address % labels; this is useful if some labels on the same sheet have already % been peeled off. @@ -1200,37 +1209,37 @@ % \end{macrocode} % \counterindex{addrlabelrows} % A single sheet of address labels contains many labels. For example, -% in the well-known (in the U.S.) Avery 5352 format each sheet contains -% ten labels, organized in two columns and five rows. Other formats -% contain different number of rows and columns of labels. To cope with -% all these different formats, the number of rows and columns of labels -% is kept in two counters: \texttt{addrlabelrows} holds the number of -% rows +% in the well-known (in the U.S.) Avery 5352 format each sheet +% contains ten labels, organized in two columns and five rows. Other +% formats contain different number of rows and columns of labels. To +% cope with all these different formats, the number of rows and +% columns of labels is kept in two counters: \cnt{addrlabelrows} holds +% the number of rows % \begin{macrocode} \newcounter{addrlabelrows} % \end{macrocode} % \counterindex{addrlabelcolumns} -% and \texttt{addrlabelcolumns} holds the number of columns. +% and \cnt{addrlabelcolumns} holds the number of columns. % \begin{macrocode} \newcounter{addrlabelcolumns} % \end{macrocode} % \counterindex{label} -% The \texttt{addrlabelrows} and \texttt{addrlabelcolumns} counters -% are usually set once for all by the code provided in a suitable +% The \cnt{addrlabelrows} and \cnt{addrlabelcolumns} counters are +% usually set once for all by the code provided in a suitable % "\DeclareOption" declaration, as the result of the user's request of % one of the options devoted to specifying the address label format -% (\opz{105x37labels}, etc.). In some exceptional circumstances, -% they can also be reset by the user, but even in this case, once set -% they are not changed any more. They are therefore not real -% ``counters'', but rather (style) parameters. The following two -% counters, instead, are ``real'', \emph{running} counters: they hold a -% running index which identifies the current label. The \texttt{label} -% counter holds the index of a label inside a given letter +% (\opz{105x37labels}, etc.). In some exceptional circumstances, they +% can also be reset by the user, but even in this case, once set they +% are not changed any more. They are therefore not real ``counters'', +% but rather (style) parameters. The following two counters, instead, +% are ``real'', \emph{running} counters: they hold a running index +% which identifies the current label. The \cnt{label} counter holds +% the index of a label inside a given letter % \begin{macrocode} \newcounter{label}[letter] % \end{macrocode} % \counterindex{totallabel} -% while the \texttt{totallabel} counter holds the global index of a +% while the \cnt{totallabel} counter holds the global index of a % label, that is, the index of the label in the whole document. % \begin{macrocode} \newcounter{totallabel} @@ -1351,24 +1360,24 @@ % precaution is taken. This can be useful if one wants to alter the % default behavior, \emph{e.g.}, to have letters that are two-folded % rather then three-folded, or to allow folded letters also when using -% a paper format, like A5, that normally does not allow it. Useful, +% a paper format, like A5, that normally does not allow them. Useful, % sure, but it rises a problem: the algorithm that decides where to -% split the text between the part that must go above the folding -% and the part that must go below it requires that the value of +% split the text between the part that must go above the folding and +% the part that must go below it requires that the value of % "\foldedheight" lie within a certain range. Obviously we cannot ask -% the user to know what range is acceptable, so we adopt the -% following solution: we define an ``internal backup'' of -% "\foldedheight", called "\@folding@ht" for historical reasons; -% then, the user is asked to call the macro "\checkfoldedheight" -% (see below) whenever (s)he changes the value of "\foldedheight"; -% this macro check the new value and, if it is OK, copies it in the -% internal dimension "\@folding@ht" (actually, after some scaling -% conversions), otherwise it sets an internal flag which disables -% folded letters and issues a warning. A slight variant of -% "\checkfoldedheight", which differs only in the warning -% produced, is called automatically at the "\begin{document}", so -% the user is \emph{not} required to call "\checkfoldedheight" if -% the changes to "\foldedheight" are made in the preamble. +% the user to know what range is acceptable, so we adopt the following +% solution: we define an ``internal backup'' of "\foldedheight", +% called "\@folding@ht" for historical reasons; then, the user is +% asked to call the macro "\checkfoldedheight" (see below) whenever +% (s)he changes the value of "\foldedheight"; this macro checks the +% new value and, if it is OK, copies it in the internal dimension +% "\@folding@ht" (actually, after some scaling conversions), otherwise +% it sets an internal flag which disables folded letters and issues a +% warning. A slight variant of "\checkfoldedheight", which differs +% only in the warning produced, is called automatically at the +% "\begin{document}", so the user is \emph{not} required to call +% "\checkfoldedheight" if the changes to "\foldedheight" are made in +% the preamble. % \begin{macrocode} \@newrigidlength\@folding@ht % \end{macrocode} @@ -1684,6 +1693,15 @@ \do\@signature@style % \end{macrocode} % \end{macro} +% \begin{macro}{\@place} +% The place where the letter is written: starting from version~0.34, +% this macro is used as the default value for the optional argument of +% "\@makeopening", "\makedate", etc. It is logically and functionally +% analogous to "\@date". +% \begin{macrocode} +\do\@place +% \end{macrocode} +% \end{macro} % \begin{macro}{\@begin@letter@hook} % This hook is executed when a letter starts, at the very end of the % process of setting up the ``letter-making'' environment, just @@ -1711,7 +1729,7 @@ % \end{macrocode} % \end{macro} % -% The following macros are defined only inside a \texttt{subject} +% The following macros are defined only inside a \env{subject} % environment. We want that they cause an error if used outside of that % environment, but we also want to be sure that their names are not % already defined. We achieve this by calling "\@ifdefinable", and @@ -1750,9 +1768,8 @@ % changed from the default when a ``presentation'' is entered. % We'll discuss all this later on. % \begin{macro}{\@b@frompenalty} -% This is the penalty inserted at the beginning of a -% \texttt{sender} environment---the environment used to typeset the -% sender address. +% This is the penalty inserted at the beginning of a \env{sender} +% environment---the environment used to typeset the sender address. % \begin{macrocode} \do\@b@frompenalty % \end{macrocode} @@ -1765,7 +1782,7 @@ % \end{macrocode} % \end{macro} % \begin{macro}{\@e@frompenalty} -% This is the penalty inserted at the end of a \texttt{sender} +% This is the penalty inserted at the end of a \env{sender} % environment. % \begin{macrocode} \do\@e@frompenalty @@ -1773,7 +1790,7 @@ % \end{macro} % \begin{macro}{\@b@topenalty} % This is the penalty inserted at the beginning of an -% \texttt{addressee} environment---the environment used to typeset the +% \env{addressee} environment---the environment used to typeset the % addressee address. % \begin{macrocode} \do\@b@topenalty @@ -1787,21 +1804,21 @@ % \end{macrocode} % \end{macro} % \begin{macro}{\@e@topenalty} -% This is the penalty inserted at the end of an \texttt{addressee} +% This is the penalty inserted at the end of an \env{addressee} % environment. % \begin{macrocode} \do\@e@topenalty % \end{macrocode} % \end{macro} % \begin{macro}{\@b@subjpenalty} -% This is the penalty inserted at the beginning of a \texttt{subject} +% This is the penalty inserted at the beginning of a \env{subject} % environment---the environment used to typeset the subject. % \begin{macrocode} \do\@b@subjpenalty % \end{macrocode} % \end{macro} % \begin{macro}{\@e@subjpenalty} -% This is the penalty inserted at the end of a \texttt{subject} +% This is the penalty inserted at the end of a \env{subject} % environment. % \begin{macrocode} \do\@e@subjpenalty @@ -1871,24 +1888,24 @@ % the letterhead and of the footer. % \begin{macro}{\@logo@box@base} % This holds the main part of the CDP seal; more precisely, that -% part that appears both in the \ldots\texttt{letterhead}\ldots\ and in -% the \texttt{logo}\ldots\ page styles. +% part that appears both in the \ldots\sty{letterhead} and in the +% \sty{logo}\ldots page styles. % \begin{macrocode} \newsavebox\@logo@box@base % \end{macrocode} % \end{macro} % \begin{macro}{\@logo@box@addS} % This holds the part of the CDP seal that should be added to the -% part contained in "\@logo@box@base" in order to obtain the seal as -% it appears in the \texttt{logo}\ldots\ page styles. +% part contained in "\@logo@box@base" to obtain the seal as it appears +% in the \sty{logo}\ldots page styles. % \begin{macrocode} \newsavebox\@logo@box@addS % \end{macrocode} % \end{macro} % \begin{macro}{\@logo@box@addL} % This holds the part of the CDP seal that should be added to the -% part contained in "\@logo@box@base" in order to obtain the seal as -% it appears in the \ldots\texttt{letterhead}\ldots\ page styles. +% part contained in "\@logo@box@base" to obtain the seal embedded +% in the \ldots\sty{letterhead} page styles. % \begin{macrocode} \newsavebox\@logo@box@addL % \end{macrocode} @@ -1902,10 +1919,10 @@ % \end{macrocode} % \end{macro} % \begin{macro}{\@name@and@WWW@box} -% This holds the footer used in the \texttt{firstletterhead} and -% \texttt{foldedletterhead} page styles, which contains the full name -% of the \emph{Coordinamento} and its web address. This ends the -% block of box registers, too. +% This holds the footer used in the \sty{firstletterhead} and +% \sty{foldedletterhead} page styles, which contains the full name of +% the \emph{Coordinamento} and its web address. This ends the block +% of box registers, too. % \begin{macrocode} \newsavebox\@name@and@WWW@box % \end{macrocode} @@ -1915,14 +1932,14 @@ % It is possible to specify several addresses (both for the sender % and the addressee) as well as several signatures; the various parts % are separated by "\and" commands. Strictly speaking, it is an error -% to expand the token "\and" anywhere but inside the \texttt{sender}, -% \texttt{addressee}, and \texttt{signatureenv} environments (the +% to expand the token "\and" anywhere but inside the \env{sender}, +% \env{addressee}, and \env{signatureenv} environments (the % environments used to produce the sender address, the addressee % address, and the signature, repectively); hence, the correct thing % to do here would be to initialize "\and" to produce an error % message, and then redefine it in the various environments, as -% required in each case. But alas, the code for \packlass{\letteracdp} is -% still incomplete, and this is one of the things I still have to +% required in each case. But alas, the code for \packlass{\letteracdp} +% is still incomplete, and this is one of the things I still have to % finish: I don't know exactly how to handle a misplaced "\and", so, % for now, I simply decide to ignore it. % \begin{macrocode} @@ -1933,9 +1950,9 @@ % meaning. % \end{macro} % \begin{macro}{\andcc} -% Only inside an \texttt{addressee} environment, the token "\andcc" -% can be used in place of "\and" to separate addresses of persons to -% which the letter is sent as a carbon copy. Its default definition, +% Only inside an \env{addressee} environment, the token "\andcc" may +% be used in place of "\and" to separate addresses of persons to which +% the letter is sent as a carbon copy. Its default definition, % however, is to act as "\and". % \begin{macrocode} \@ifdefinable\andcc{\def\andcc{\and}} @@ -1971,7 +1988,7 @@ % Set "\parindent" to 0~points. % \item[L (for ``leave indent'').] % The value of "\parindent" that was in effect outside of the -% current \ldots\texttt{letter}\ldots\ environment is retained. +% current \ldots\env{letter}\ldots\ environment is retained. % \item[O (sorry, I don't remember for what).] % Set "\parindent" to the width of the last line of the salutation % (\emph{i.e.}, the argument of "\opening" or "\makeopening"); if the @@ -1996,8 +2013,8 @@ %\end{verbatim} % when you want to declare that the address has intentionally be % left void; when the address is actually typeset (and this happens -% inside an \texttt{addressee} environment), the command "\voidisOK" -% will be expanded, causing the warning to be suppressed. As for the +% inside an \env{addressee} environment), the command "\voidisOK" will +% be expanded, causing the warning to be suppressed. As for the % command "\and", the right thing to do would be to define this % command only inside the environments in which it can be used; but % there are complications arising from the fact that the text @@ -2007,9 +2024,9 @@ % to "\@empty", so that it will be ignored when it occurs out of place. % (We do not "\let" it equal to "\relax" because the latter could % confuse an "\ignorespaces"; on the contrary, "\@empty" disappears -% upon "\write" and "\mark" operations, and this is quite OK.) -% Where appropriate, "\voidisOK" will be redefined to achieve the -% desired effect. +% upon "\write" and "\mark" operations, and this is quite OK\@.) Where +% appropriate, "\voidisOK" will be redefined to achieve the desired +% effect. % \begin{macrocode} \@ifdefinable\voidisOK{\let\voidisOK\@empty} % \end{macrocode} @@ -2025,9 +2042,7 @@ % terms of the font-dependent units like ``em''. Of course, the % hanging indentation includes this horizontal space; note, % however, that if "\subjectname" is empty than the -% "\subjectnamegap" space is not taken into account (older versions -% of the class left this space even when "\subjectname" was empty, -% but this bug has now been corrected). +% "\subjectnamegap" space is not taken into account. % \begin{macrocode} \newcommand*\subjectnamegap{.5em} % \end{macrocode} @@ -2059,12 +2074,12 @@ % contains more than one line, the lines are aligned at their % midpoint. In order to accomodate the various conventions, the token % "\signaturealignment" is inserted at the beginning of the -% \texttt{signatureenv} environment (the environment one uses to -% typeset the signature); it is the responsability of the surrounding -% \ldots\texttt{letter}\ldots\ environment to "\let" this token equal -% to "\raggedright", "\centering", etc., as required by the particular +% \env{signatureenv} environment (the environment one uses to typeset +% the signature); it is the responsability of the surrounding +% \ldots\env{letter}\ldots\ environment to "\let" this token equal to +% "\raggedright", "\centering", etc., as required by the particular % letter being produced. This makes it easy, for instance, to define -% an \texttt{asletter} (anglo-saxon letter) environment that prints +% an \env{asletter} (anglo-saxon letter) environment that prints % letters that obey the U.S. conventions. The default setting given % here has no special meaning: it just sets the signature ragged % right. @@ -2322,6 +2337,11 @@ % \subsection{Option processing} % % Nothing special to note here. +% +% \emph{Begin to think (v.~0.34):} should I change the defaults as +% follows: \opz{boldsubject} in place of \opz{mediumsubject}, +% \opz{italicsignature} in place of \opz{uprightsignature}, +% \opz{shortindent} in place of \opz{indent}? % \begin{macrocode} \ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,% mediumsubject,uprightsignature,noPS,indent,105x37labels} @@ -2343,9 +2363,8 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % \begin{macrocode} \if@use@eepic@ % \end{macrocode} -% We check whether the \packlass{eepic} package exists on the -% system: if it does, we load it, otherwise we force the -% "\if@use@eepic@" flag to false and issue a warning. +% If the \packlass{eepic} package is not available, force the switch +% to false and warn the user. % \begin{macrocode} \IfFileExists{eepic.sty}{% \RequirePackage{eepic}% @@ -2369,27 +2388,40 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % % \subsubsection{More initializations} % -% The following initializations have not been put in the -% \emph{Initial code} section because it is traditional to put -% them here; moreover, some of them actually require that the code -% for the options has already been executed, so they must be put -% here! +% Some of the following initializations could have been put in the +% \emph{Initial code} section, but some others require that the code +% for the options have already been executed. % % \begin{macro}{\date} -% I was ready to swear that I had copied the following -% redefinition of the "\date" command from the standard -% \packlass{letter} class\ldots{} Anyway, we redefine "\date" in -% order to make the changes to the date local instead of global: -% this is useful if one of the letters has a date which is -% different from the others. An explicative comments is left in -% the code too (because "\date" is a command defined in the -% \LaTeX\ kernel). +% We redefine "\date" in order to make the changes to the date local +% instead of global: this is useful if one of the letters has a date +% which is different from the other ones. Since "\date" is a kernel +% command, an explicative comment is left in % the code too. % \begin{macrocode} %% Command \date redefined to make changes to date local. \def\date#1{\def\@date{#1}} % \end{macrocode} % \end{macro} % +% \begin{macro}{\place} +% This command records the place where the letter is written (added +% in version~0.34): it is analogous to "\date". Starting from +% version~0.34, this should be used instead of the optional argument +% of "\opening", "\makedate", etc.\ (however, the optional argument of +% those commands may still be used, for compatibility). Note that the +% comma is added automatically, but only if the argument of "\place" +% is nonempty. +% \begin{macrocode} +\newcommand*\place[1]{% + \ifx \@empty #1\@empty % if #1 is empty + \let\@place\@empty + \else + \def\@place{#1,}% + \fi +} +% \end{macrocode} +% \end{macro} +% % Usual loading of the suitable \filedir{.clo} file; see the % documentation of, \emph{e.g.}, the standard \packlass{letter} % class for explanations about the following three lines of code. @@ -2407,7 +2439,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % \end{macrocode} % \end{macro} % \begin{macro}{\thelabel} -% The printed form of the \texttt{label} counter is changed to include +% The printed form of the \cnt{label} counter is changed to include % also the number of the letter it refers to. Note that we do not % change "\p@label" (the prefix used only when printing % \emph{references} to the counter), but actually the command used to @@ -2439,15 +2471,15 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % We now initialize the style parameters that contain the penalties % inserted around the address blocks and the subject. This values % will never be used in practice, because usually the address blocks -% and the subject are wrapped up in a \ldots\texttt{presentation} +% and the subject are wrapped up in a \ldots\env{presentation} % environment, and these environments completely redefine the values % of these style parameters. The values given here will be used only -% when a \texttt{sender}, \texttt{addressee}, or \texttt{subject} -% environment is used without being wrapped in a presentation. These -% values allow a page break without penalty before each of the blocks -% and at the end of the subject, mildly discourage a break after the -% address blocks, and discourage rather strongly a break at an "\and" -% or "\andcc" token. +% when a \env{sender}, \env{addressee}, or \env{subject} environment +% is used without being wrapped in a presentation. These values allow +% a page break without penalty before each of the blocks and at the +% end of the subject, mildly discourage a break after the address +% blocks, and discourage rather strongly a break at an "\and" or +% "\andcc" token. % \begin{macrocode} \@b@frompenalty\z@ \@i@frompenalty\@highpenalty @@ -2654,8 +2686,8 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % just what the class does, and the final visual effect is, let % me say, pretty good indeed\ldots % -% To sum up, the strategy for setting the page layout parameters -% should be as follows: +% To sum up, the strategy for setting the page layout parameters is +% the following: % % \begin{enumerate} % @@ -3042,8 +3074,8 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % issue a warning and set the "\if@do@fold@" switch to false: the % following two macros, which are used below, take care of this, % providing two different types of warning. They take two arguments, -% used to modify the warning printed to the user: argument \#1 will be -% either the word ``short'' or the word ``tall'', and argument \#2 +% used to modify the warning printed to the user: argument "#1" will be +% either the word ``short'' or the word ``tall'', and argument "#2" % will contain text giving further help. % % \begin{macro}{\@folding@ht@warn} @@ -3425,8 +3457,9 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % called directly by the user). The code passed in~"#1" is executed % before the core initializations provided by "baseletter", but inside % the group implied by this environment; the code passed in~"#2" is -% executed as the last thing. Other arguments will be picked up by the -% "\x@baseletter" or "\y@baseletter" macro. +% executed as the last thing (just before "\@begin@letter@hook"). Other +% arguments will be picked up by the "\x@baseletter" or +% "\y@baseletter" macro. % \begin{macrocode} \newenvironment{baseletter}[2]{% #1% @@ -3441,7 +3474,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \cleardoubleemptypage \c@page\@ne \refstepcounter{letter}% - \typeout{Letter \number\c@letter}% + \typeout{\lettername \space \number\c@letter}% \interlinepenalty 200 % smaller than the TeXbook value \parskip\medskipamount % \end{macrocode} @@ -3543,7 +3576,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \@baseletter }} \@ifdefinable\y@baseletter{\long\def\y@baseletter#1{% - \@cut@andcc #1\andcc @@@% + \@cut@andcc #1\andcc\@@@ \def\theaddresseeaddress{#1}% \@baseletter }} @@ -3567,16 +3600,16 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \the\@lett@decl \@begin@letter@hook } -\@ifdefinable\@cut@andcc{\long\def\@cut@andcc#1\andcc#2@@@{% - \@cut@and #1\and @@@% +\@ifdefinable\@cut@andcc{\long\def\@cut@andcc#1\andcc#2\@@@{% + \@cut@and #1\and\@@@% }} -\@ifdefinable\@cut@and{\long\def\@cut@and#1\and#2@@@{% - \@cut@nl #1\\@@@% +\@ifdefinable\@cut@and{\long\def\@cut@and#1\and#2\@@@{% + \@cut@nl #1\\\@@@% }} -\@ifdefinable\@cut@nl{\long\def\@cut@nl#1\\#2@@@{% - \@cut@par #1\par @@@% +\@ifdefinable\@cut@nl{\long\def\@cut@nl#1\\#2\@@@{% + \@cut@par #1\par\@@@% }} -\@ifdefinable\@cut@par{\long\def\@cut@par#1\par#2@@@{% +\@ifdefinable\@cut@par{\long\def\@cut@par#1\par#2\@@@{% \def\theaddresseename{#1}% }} \newcommand*\stopbreaks{% @@ -3919,14 +3952,31 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} }{% \endnormalpresentation } +% \end{macrocode} +% +% \begin{environment}{normalpresentation} +% The environment for making a normal presentation: +% \begin{macrocode} \newenvironment*{normalpresentation}{% \cleardoublepage \@setup@pres }{% - \par +% \end{macrocode} +% \changes{0.34}{2006 Jan 01}{At the end of the environment, +% changed \protect\texttt{\protect\bslash par} into +% \protect\texttt{\protect\bslash @@par}} +% Changed the following line from "\par" to "\@@par" (v.~0.34): +% \begin{macrocode} + \@@par \addpenalty\@e@prespenalty \addvspace\belowpresentationvspace } +% \end{macrocode} +% \end{environment} +% +% \begin{macro}{\@nofoldwarning} +% Warning issued when folded presentations are not allowed: +% \begin{macrocode} \@ifdefinable\@nofoldwarning{\def\@nofoldwarning{% \ClassWarning{\@letteracdp}{% The paper format you chose does not allow\MessageBreak @@ -3936,59 +3986,213 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} Warning issued% }% }} +% \end{macrocode} +% \end{macro} +% +% \begin{environment}{foldedpresentation} +% The environment for making a folded presentation, possibly +% splitting it into two parts: the part the actually fits in the folded +% flap, and the other, which is merged with the text below the +% folding. I~think it's better to include some comments here. +% \begin{macrocode} \newenvironment*{foldedpresentation}{% +% \end{macrocode} +% Are folded letters currently allowed? +% \begin{macrocode} \if@do@fold@ +% \end{macrocode} +% \emph{Yes.} First, assure that we are at the beginning of a page; +% note that \emph{numbered} pages, here, are inserted if there is a gap +% to fill in. +% \begin{macrocode} \cleardoublepage +% \end{macrocode} +% The contents of the presentation will be saved in "\box0": set up +% parameters, color support\ldots +% \begin{macrocode} \setbox\z@\vbox\bgroup \@setup@pres +% \end{macrocode} +% \changes{0.34}{2006 Jan 01}{Added setting of +% \protect\texttt{\protect\bslash boxmaxdepth} +% at the beginning of the environment} +% Added the following line (v.~0.34), even if the depth of "\box0" +% will be checked later: +% \begin{macrocode} + \boxmaxdepth\maxdepth +% \end{macrocode} +% \ldots color support, we were saying\ldots +% \begin{macrocode} \color@begingroup +% \end{macrocode} +% The reason for this "\penalty" will be explained later~($*$): +% \begin{macrocode} \penalty-\@M - \prevdepth\z@ +% \end{macrocode} +% \changes{0.34}{2006 Jan 01}{Removed a superfluous setting of +% \protect\texttt{\protect\bslash prevdepth} +% from the beginning of the environment} +% Removed the following line (v.~0.34): we have no need to insert +% interline glue here, and it is even wrong to do it; we will insert the +% "\topskip" glue below with a trick (which, in any case, would remove +% the---incorrect---interline glue inserted here). Why did I include +% this redundant statement? +%\begin{verbatim} +%\prevdepth\z@ +%\end{verbatim} +% \begin{macrocode} \else +% \end{macrocode} +% \emph{No.} Inform the user and substitute a normal presentation. +% \begin{macrocode} \@nofoldwarning \normalpresentation \fi }{% +% \end{macrocode} +% +% When the presentation ends, if we were making a folded +% presentation\ldots +% \begin{macrocode} \if@do@fold@ +% \end{macrocode} +% \ldots finish off the box\ldots +% \begin{macrocode} \@@par \color@endgroup +% \end{macrocode} +% \ldots and save its "\prevdepth" for later. +% \begin{macrocode} \global\dimen@i\prevdepth +% \end{macrocode} +% Insert the equivalent of "\foldingfilbreak[0]": if possible, the +% "\vsplit" that will later split the presentation should try to split +% it here (\emph{i.e.}, not to split it at all). +% \begin{macrocode} \@f@ldingfilbreak\@fold@basepenalty +% \end{macrocode} +% But "\vsplit" might prefer to split the box at the implicit +% "\penalty-10000" inserted at its end; avoid this, since it would +% defeat the "\vfil" of "\@f@ldingfilbreak":\nobreak\space($**$) +% \begin{macrocode} \vskip\maxdimen % "discourage" the break at the \penalty-10000 +% \end{macrocode} +% End of "\vbox". +% \begin{macrocode} \egroup +% \end{macrocode} +% Now "\box0" contains the presentation, but it lacks the due +% "\topskip" glue atop. Of course, we could have inserted the +% equivalent (in normal circumstances) of the "\topskip" glue by +% setting \[ "\prevdepth" := "\topskip"-"\baselineskip" \] at the +% beginning of "\box0", but this does not work always, since it could +% insert the "\lineskip" glue instead. We are admittedly whimsical +% here, but, in order to achieve exactly the same result yielded by +% the "\topskip" glue machinery operated in the main vertical list, we +% use the following trick of "\vsplit"'ting "\box0" to \texttt{0pt}. +% A legal breakpoint exists for this: it is the "\penalty-10000" +% inserted above in~($*$)! This breakpoint comes first in "\box0" and +% it is mandatory, so the "\vsplit" operation will stop immediately +% (without consuming time); nothing will be actually split off, +% everything will remain in "\box0", but with "\splittopskip" glue +% added at the top! Moreover, although we set "\boxmaxdepth" inside +% "\box0", we check again for possible excess depth (can't figure out +% how it could creep in, however). So: +% \begin{macrocode} \splitmaxdepth\maxdepth \splittopskip\topskip \setbox\tw@\vsplit\z@ to\z@ +% \end{macrocode} +% The real splitting of the presentation is done by the following +% "\vsplit": the baseline of the first line possibly remaining in +% "\box0" after the "\vsplit" must be at a distance of +% "\@below@folding@skip" from the folding, plus the "\parskip" glue +% and, of course, the normal interline glue (we are in mid-page now). +% \begin{macrocode} \splittopskip\baselineskip \advance\splittopskip\@below@folding@skip \advance\splittopskip\parskip \setbox\tw@\vsplit\z@ to\@folding@ht +% \end{macrocode} +% Now "\box2" contains the part of the presentation that does fit +% in the folded flap; we append this box to the page (actually, it is the +% first thing contributed since the "\cleardoublepage"). Since +% this box already includes "\topskip" glue at the +% top, no further interline glue must be inserted above it. +% \begin{macrocode} \nointerlineskip \box\tw@ +% \end{macrocode} +% Thanks to the above setting of "\splitmaxdepth", we are sure that +% the depth of the previous box is small; so the following line will +% take us exactly on the edge of the fold, with null depth\ldots +% \begin{macrocode} {\baselineskip\@above@folding@margin \nobreak\null}% +% \end{macrocode} +% \ldots where we insert a costly, yet feasible breakpoint. +% \begin{macrocode} \penalty\@highpenalty +% \end{macrocode} +% If everything fitted in the folded flap, nothing remained in +% "\box0". +% \begin{macrocode} \ifvoid\z@ +% \end{macrocode} +% In that case, just leave appropriate blank space (the "\prevdepth" +% is already zero, so the interline glue of the following line will be +% correct). +% \begin{macrocode} \vskip\@below@folding@skip +% \end{macrocode} +% Otherwise, take the part that did not fit out of "\box0"\ldots +% \begin{macrocode} \else \unvbox\z@ +% \end{macrocode} +% \ldots so it is now in the list of ``recent contributions'' +% ("\unvbox" does not exercise the page builder); remove the +% "\vskip\maxdimen" added in~($**$) just to fool "\vsplit", as well as +% the items added by the virtual "\foldingfilbreak[0]". +% \begin{macrocode} \unskip % remove "\vskip\maxdimen" \unpenalty % remove "\penalty\@fold@basepenalty" \unskip % remove "\vskip \dimen@ plus 1fil minus ..." \unskip % remove "\vskip -\skip@" \unpenalty % remove "\penalty 10000" +% \end{macrocode} +% Now the list of ``recent contributions'' contains exactly what the +% user put in the presentation (and did not fit in the folded flap). +% Restore "\prevdepth" and conclude as if it were a normal +% presentation: this makes a perfectly seamless join with the +% following material, as if the folded presentation had been a normal +% one, extending down to this spot in the page. ^^A ( paren match +% Not bad, uhu?~:-) +% \begin{macrocode} \prevdepth\dimen@i \addpenalty\@e@prespenalty \addvspace\belowpresentationvspace +% \end{macrocode} +% Ah, yes, also inform the user of what happened: +% \begin{macrocode} \ClassWarning{\@letteracdp}{% Some text that did not fit into the folded flap\MessageBreak was moved into the main text below the folding;\MessageBreak warning issued% }% \fi +% \end{macrocode} +% If we were not making a folded presentation, then conclude a +% normal one. +% \begin{macrocode} \else \endnormalpresentation \fi } +% \end{macrocode} +% \end{environment} +% +% Back to uncommented code. +% \begin{macrocode} \newcommand*\iffoldedallowed{% \if@do@fold@ \expandafter\@firstoftwo @@ -4004,6 +4208,11 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \makesubject\relax \end{normalpresentation}% } +% \end{macrocode} +% +% \begin{macro}{\@f@ldingfilbreak} +% The ``upper half'' of "\@foldingfilbreak". +% \begin{macrocode} \@ifdefinable\@f@ldingfilbreak{\def\@f@ldingfilbreak#1{% \ifdim\prevdepth<\maxdepth \dimen@ -\prevdepth @@ -4016,6 +4225,10 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \vskip \dimen@ \@plus 1fil\@minus \@above@folding@shrink \penalty #1% }} +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} \@ifdefinable\@foldingfilbreak{\def\@foldingfilbreak#1#2{\par \@f@ldingfilbreak#1% \vskip -\dimen@ \@plus -1fil\@minus -\@above@folding@shrink @@ -4036,8 +4249,8 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \@esphack \fi } -\newcommand*\foldingfilbreak[2][\z@]{% - \@foldingfilbreak{\@fold@getpen{#1}}{#2}% +\newcommand*\foldingfilbreak[1][\z@]{% + \@foldingfilbreak{\@fold@getpen{#1}}% } \newcommand*\makefoldedpresentation{% \if@do@fold@ @@ -4074,9 +4287,9 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \nobreak\medskip \fi }} -\newcommand*\makedate [1][]{\@make@date{#1}NN} -\newcommand*\maketopdate [1][]{\@make@date{#1}NY} -\newcommand*\makebottomdate[1][]{\@make@date{#1}YN} +\newcommand*\makedate [1][\@place]{\@make@date{#1}NN} +\newcommand*\maketopdate [1][\@place]{\@make@date{#1}NY} +\newcommand*\makebottomdate[1][\@place]{\@make@date{#1}YN} \@ifdefinable\@empty@signature{\def\@empty@signature{% \ClassWarning{\@letteracdp}{% Empty signature% @@ -4174,7 +4387,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \@opening }% } -\newcommand*\@opening[1][]{% +\newcommand*\@opening[1][\@place]{% \makepresentation \maketopdate[#1]% \@cdp@reserved @@ -4254,11 +4467,63 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \newcommand*\PS{% \ps\@ifstar{\@PS@rubber}{\@PS@rigid}% } +% \end{macrocode} +% +% \begin{macro}{\stopletter} +% User-level hook invoked (before anything else) when a letter ends. +% \begin{macrocode} \newcommand*\stopletter{} % \end{macrocode} +% \end{macro} % % \subsubsection{Address labels} % +% This part of the code should probably be detached and put in a +% separte file to be loaded on demand. +% +% The general idea is the following: +% \begin{itemize} +% \item +% a \env{labels} (or \env{baselabels}, see below) environment +% produces one or more sheets of address labels; +% \item +% inside \env{labels}, several \env{labelgroup} environments wrap up +% the address labels pertaining to each letter (a letter may have +% several address labels associated with it, if it has several +% addressees); +% \item +% inside each \env{labelgroup} environment, individual labels are +% produced with the "\basemlabel" command. +% \end{itemize} +% The \env{labels} environment takes care of such things like jumping +% to a new page, etc.; the \env{labelgroup} environment merely changes +% the way address labels are numbered, but does not otherwise affect +% the printout. +% +% The user may either: +% \begin{enumerate} +% \renewcommand*{\theenumi}{(\Alph{enumi})} +% \renewcommand*{\labelenumi}{\theenumi} +% \item\label{autolabels} +% include a "\makelabels" declaration in the preamble, to have +% address labels generated automatically via the \filedir{.aux} +% file; in this case, appropriate commands are written in the +% \filedir{.aux} file by each +% \env{baseletter} environment, which, when the \filedir{.aux} file +% is re-read at the "\end{document}", automatically generate the +% required environments and commands (\env{labels}, +% \env{labelgroup}, etc.); \emph{or} +% \item\label{handlabels} +% produce the address labels ``by hand'', including directly in the +% source file, where (s)he want the address label sheets to appear, a +% \env{labels} environment, containing the appropriate +% \env{labelgroup} environments, containing, in turn, the individual +% "\basemlabel" commands. +% \end{enumerate} +% In principle, it is also possible to mix \ref{autolabels} +% and~\ref{handlabels} (and to have several \env{labels} +% environments, too), but this has no practical utility. +% % \begin{macrocode} \newcommand*\returnaddress{\thesenderaddress} \@ifdefinable\@emptyaddrlabels@err{\def\@emptyaddrlabels@err{% @@ -4294,6 +4559,14 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \@emptyaddrlabels@err \fi\fi } +% \end{macrocode} +% +% \begin{environment}{baselabels} +% This is the actual environment for producing sheets of address +% labels: the \env{labels} environment (see below) is simply a wrapper +% that offers to the user the opportunity of changing some settings +% before invoking \env{baselabels}. +% \begin{macrocode} \newenvironment*{baselabels}{% \cleardoubleemptypage \c@page\@ne @@ -4350,7 +4623,28 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} }{% \@killglue\clearpage } +% \end{macrocode} +% \end{environment} +% +% \begin{environment}{labels} +% It is the user-level environment for producing one or more sheets of address labels. +% Its default definition simply invokes \env{baselables}, but the +% user may redefine it to set some style parameters. For example: +%\begin{verbatim} +%\renewenvironment{labels}{% +% \baselabels +% \setlength\fboxrule{.2pt}% +% \addtolength\fboxsep{-2\fboxrule}% +%}{\endbaselabels} +%\end{verbatim} +% will draw a thin border around each address label. +% \begin{macrocode} \newenvironment*{labels}{\baselabels}{\endbaselabels} +% \end{macrocode} +% \end{environment} +% +% Back to uncommented code. +% \begin{macrocode} \let\@beginlabels=\relax \let\@endlabels=\relax \newenvironment*{labelgroup}{\stepcounter{letter}}{} @@ -4371,7 +4665,18 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \stepcounter{totallabel}% \stepcounter{label}% } +% \end{macrocode} +% +% \begin{macro}{\ifactuallabel} +% Macro for the user: "\ifactuallabel{"\meta{FOO}"}{"\meta{BAR}"}" +% executes \meta{FOO} if the label is not being skipped, \meta{BAR} +% otherwise. +% \begin{macrocode} \let\ifactuallabel\@firstoftwo +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} \newcommand\basemlabel[2]{% \begingroup \def\startaddrlabel{\par @@ -4526,6 +4831,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \newcommand*\enclname {Allegati:} \newcommand*\PSname {P.S.:} \newcommand*\headtoname {A:} +\newcommand*\lettername {Lettera} \newcommand*\today{\number\day~\ifcase\month\or gennaio\or febbraio\or marzo\or aprile\or maggio\or giugno\or luglio\or agosto\or settembre\or ottobre\or novembre\or dicembre\fi @@ -4554,8 +4860,8 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1996/06/01] % LaTeX2e is required! \ProvidesClass{articoletteracdp} - [2005/01/01 v0.33 (development)] -%% \typeout{Copyright (C) 1999-2005 by Gustavo MEZZETTI, + [2006/01/01 v0.34 (development)] +%% \typeout{Copyright (C) 1999-2006 by Gustavo MEZZETTI, %% all rights reserved.} % \end{macrocode} % @@ -4577,6 +4883,21 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \do\if@loX@in@toc@ % \end{macrocode} % +% \begin{macro}{\@letter@bookmark} +% Support for pdf\TeX\slash\packlass{\hyperref}. If pdf\TeX\ is +% being used to typeset the document, if the \packlass{\hyperref} +% package is loaded, and if the user does not ask us to avoid it, we +% shall generate a ``level~0'' bookmark for each letter we shall +% typeset (sections are of level~1, so they will be bookmarked under +% letters). This command serves to this purpose: it is defined either +% as "\@gobbletwo", if such bookmarks are \emph{not} being generated, +% or as a suitable invocation of "\pdfbookmark" if they are. To begin +% with, we set the former alternative, which makes it act as a no-op. +% \begin{macrocode} +\@ifdefinable\@letter@bookmark{\let\@letter@bookmark\@gobbletwo} +% \end{macrocode} +% \end{macro} +% % Space above and below captions for figures and tables. % \begin{macrocode} \newlength\abovecaptionskip @@ -4605,20 +4926,51 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \@toc@in@toc@false \@loX@in@toc@false } +% \end{macrocode} +% The option \opz{letterbookmarks} causes the bookmarks for letters to +% be generated. Upon expansion, the 2~arguments of +% "\@letter@bookmark" will become arguments of "\pdfbookmark". We +% also need to ask the \packlass{\hyperref} package to generate closed +% bookmarks. Note that the user can later overwrite this setting; +% note also that nothing will happen if \packlass{\hyperref} is not +% loaded later. +% \begin{macrocode} +\DeclareOption{letterbookmarks}{% + \def\@letter@bookmark{\pdfbookmark[0]}% + \PassOptionsToPackage{bookmarksopen=false}{hyperref}% +} +% \end{macrocode} +% The option \opz{noletterbookmarks} supresses the bookmarks for +% letters. +% \begin{macrocode} +\DeclareOption{noletterbookmarks}{% + \let\@letter@bookmark\@gobbletwo +} +% \end{macrocode} +% The option \opz{openletterbookmarks} causes the bookmarks for +% letters to be generated and to be presented open to the reader. We +% ask the \packlass{\hyperref} package to generate open bookmarks, but +% only one level deep. Note that the user can later overwrite this +% setting. This is made the default option, below. +% \begin{macrocode} +\DeclareOption{openletterbookmarks}{% + \def\@letter@bookmark{\pdfbookmark[0]}% + \PassOptionsToPackage{bookmarksopen,bookmarksopenlevel=1}{hyperref}% +} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{letteracdp}} % \end{macrocode} % % \subsection{Option processing} % % \begin{macrocode} -\ExecuteOptions{plaintoc} +\ExecuteOptions{plaintoc,openletterbookmarks} \ProcessOptions\relax % \end{macrocode} % % \subsection{Class loading} % % \begin{macrocode} -\LoadClass{letteracdp}[2005/01/01] +\LoadClass{letteracdp}[2006/01/01] % \end{macrocode} % % \subsection{Main code} @@ -4634,20 +4986,33 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \newcounter{table}[letter] % \end{macrocode} % -% The \packlass{\hyperref} package generates references to paragraphs -% that include also the "\subsection" and the "\subsubsection" number, -% because it assumes that paragraphs are numbered within subsubsections. -% While, on one hand, it is not necessary to actually have subsections -% numbered within sections, subsubsections numbered within subsection, -% and paragraphs numbered within subsubsections, on the other, to assure -% compatibility with \packlass{\hyperref} one must at least -% \emph{define} the \texttt{subsection} and \texttt{subsubsection} -% counters, to assure that the \packlass{\hyperref} package may safely -% mention them. We do this here, so that \packlass{\articoletteracdp} -% can be used together with \packlass{\hyperref}. +% Stuff for dealing with the \packlass{\hyperref} package. The +% problem is our non-standard hierarchy of sectioning commands, with +% paragraphs placed directly below sections. In this version (0.34) we +% choose a different approach than the one we adopted in version 0.33, +% redefining "\theHparagraph"; of course, this must be done +% \emph{after} \packlass{\hyperref} has been loaded, and we could not +% find any better place for this than the "\AtBeginDocument" hook. +% Within the same hook, we also redefine "\theHsection" (the counter +% used by \packlass{\@hyperref} to generate hyperlinks to sections) so +% that sections with the same number, but included in different +% letters, will have different anchors; we fix the bookmark level for +% paragraphs, too. +% \begin{macrocode} +\AtBeginDocument{% + \def\theHletter{\arabic{letter}}% + \@ifpackageloaded{hyperref}{% + \def\theHparagraph{\theHsection.\arabic{paragraph}}% + \def\theHsection{\theHletter.\arabic{section}}% + \def\toclevel@paragraph{2}% + }{% +% \end{macrocode} +% If the \packlass{\@hyperref} package is not loaded, we assure that +% "\@letter@bookmarks" acts as a no-op: % \begin{macrocode} -\newcounter{subsection} -\newcounter{subsubsection} + \let\@letter@bookmark\@gobbletwo + }% +} % \end{macrocode} % % \begin{macro}{\hyper@last} @@ -4657,12 +5022,13 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % redefinition of "\@starttoc", possibly writing unwanted % \filedir{.toc}, \filedir{.lof}, and \filedir{.lot} files, and (much % worse) causing trouble if the letter happens to contain more than one -% "\tableofcontents", "\listoffigures", or "\listoftables". Of course, -% this means that the user must be informed that (s)he has to delete the -% old files by hand.~\mbox{:-(}^^A ) paren match -% \spacefactor\sfcode`. \space -% Note, anyway, that the automatic check made by \packlass{\hyperref} -% would not work with the C.D.P. Bundle in any case, so\ldots +% "\tableofcontents", "\listoffigures", or "\listoftables". Of +% course, this means that the user must be informed that (s)he has to +% delete the old files by hand.~\mbox{:-(}^^A ) paren match +% \spacefactor\sfcode`. \space Note, anyway, that the automatic check +% made by \packlass{\hyperref} would not work with the C.D.P. Bundle +% in any case (because it looks for \filedir{.toc}, \filedir{.lof}, +% etc.\ files, not for, say, \filedir{.toc1}, etc.), so\ldots % \begin{macrocode} \@ifdefinable\hyper@last{\let\hyper@last\relax} % \end{macrocode} @@ -4697,7 +5063,24 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \@nobreakfalse \endgroup } +% \end{macrocode} +% +% The "\@begin@letter@hook" macro is invoked whenever a letter +% starts; we want (possibly, see above) a bookmark to be generated for +% the letter. Note that we use "\theletter" for the letter number +% presented to the user, and "\theHletter" for the number used to +% generate the anchor. +% \begin{macrocode} \g@addto@macro\@begin@letter@hook{% + \edef\@cdp@reserved{% + \noexpand\@letter@bookmark + {\lettername\space\theletter}{letter.\theHletter}% + }% + \@cdp@reserved +% \end{macrocode} +% +% Actions for closing a set of toc/lof/lot file and opening another: +% \begin{macrocode} \if@filesw {\escapechar\m@ne \immediate\write\@out@table@list{\string\}^^J\string\{}% @@ -4706,6 +5089,10 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} {\string\@deferred@clopen{\number\c@letter}}% \fi } +% \end{macrocode} +% +% Uncommented code. +% \begin{macrocode} \@ifdefinable\@deferred@open {\let\@deferred@open \@gobble} \@ifdefinable\@deferred@close {\let\@deferred@close \@empty} \@ifdefinable\@deferred@clopen{\let\@deferred@clopen\@gobble} @@ -4768,7 +5155,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % \begin{macrocode} \@ifdefinable\@addfullstop{\long\def\@addfullstop#1{% {\nonfrenchspacing\ignorespaces#1\unskip - \ifnum\spacefactor>\@m \else.\fi \/}% + \ifnum \spacefactor>\@m \else.\fi \/}% }} \newcommand*\nopunct{\spacefactor 1001\relax} % \end{macrocode} @@ -4792,17 +5179,27 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \setlength \dblfloatsep {\bigskipamount} \@msetlength\dbltextfloatsep {2}{\bigskipamount} \setlength \@fptop {\z@ plus 1 fil} -\setlength \@fpsep {\bigskipamount} +\setlength \@fpsep {1\bigskipamount plus 2 fil} \setlength \@fpbot {\z@ plus 1 fil} -\setlength \@dblfptop {\z@ plus 1 fil} -\setlength \@dblfpsep {\bigskipamount} -\setlength \@dblfpbot {\z@ plus 1 fil} +\setlength \@dblfptop {\@fptop} +\setlength \@dblfpsep {\@fpsep} +\setlength \@dblfpbot {\@fpbot} \setlength\abovecaptionskip{\medskipamount} \setlength\belowcaptionskip{\z@skip} % \end{macrocode} % % \subsubsection{Title, section heads, figures, bibliography\ldots} % +% \begin{macro}{\maketitle} +% Without the \packlass{\@hyperref} package, the "\maketitle" +% command can take the same optional argument as "\maketopdate", for +% specifying a short string to be prepended to the date; and in this +% case, the new "\place" declaration will be automatically honored. +% But the former feature will break if \packlass{\@hyperref} is +% loaded, and no remedy seems feasible for this, since +% \packlass{\@hyperref} assumes that "\maketitle" hasn't got any +% arguments. Note also that a period is automatically added to the +% title. % \begin{macrocode} \newcommand*\maketitle{% \begingroup @@ -4817,6 +5214,11 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \setcounter{footnote}{\z@}% \maketopdate } +% \end{macrocode} +% \end{macro} +% +% Uncommented code. +% \begin{macrocode} \setcounter{secnumdepth}{\tw@} \def\@seccntformat#1{\csname the#1\endcsname .\enspace} \ifcase \@ptsize\relax @@ -4966,6 +5368,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % \section{The code for the \packlass{\adiseal} package} % % This part of the file goes into \filedir{\adiseal.sty}. +% \emph{Very obsolete:} eliminate? % \begin{macrocode} %<*adipk> % \end{macrocode} @@ -4975,7 +5378,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1998/06/01] % LaTeX2e is required! \ProvidesPackage{adiseal} - [2005/01/01 v0.33 (development)] + [2006/01/01 v0.34 (development)] \@ifdefinable\@adiseal{\def\@adiseal{adiseal}} % \end{macrocode} % @@ -4994,25 +5397,35 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} } % \end{macrocode} % \end{macro} +% % \begin{macro}{\@seal@graph@file} +% \changes{0.34}{2006 Jan 01}{Got rid of the \filedir{.eps} extension +% in the name of the file of the ADI seal: thus, the extension +% \filedir{.eps} or \filedir{.pdf} will be automatically supplied +% by the \packlass{epsgif} package according to the actual +% typesetting engine employed (\TeX\ or pdf\TeX)} % The name of the file which contains the image of the ADI seal is % also kept in a macro, to allow customization, but this macro is not -% made accessible to the user. Note the image must be contained in a -% file in Encapsulated PostScript format, and that it should be exactly \( -% 60\,\mbox{bp} \) wide and \( 42\,\mbox{bp} \) tall. +% made accessible to the user. \emph{Note:} the image must be contained +% in a file in Encapsulated PostScript format or, for pdf\TeX, in +% Portable Document Format, and it should be exactly \( 60\,\mbox{bp} \) +% wide by \( 42\,\mbox{bp} \) tall. The appropriate file extension +% will be supplied by the \packlass{epsfig} package. % \begin{macrocode} \@ifdefinable\@seal@graph@file{\def\@seal@graph@file{% - adiseal.eps% must be an Encapsulated PostScript file + adiseal% must be an EPS or a PDF file }} % \end{macrocode} % \end{macro} % +% \begin{macro}{\if@use@pixmap@} % The following switch is used to implement the % \iopz{nopixmap}\eopz{usepixmap}\fopz\space mutually exclusive % options: see subsection~\ref{sS:adisealoptdec} for details. % \begin{macrocode} \@ifdefinable\if@use@pixmap@{\newif\if@use@pixmap@} % \end{macrocode} +% \end{macro} % % \begin{macro}{\@temp@adiseal} % A ``scratch'' macro, used as a temporary storage in the sequel. @@ -5065,7 +5478,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} }% } \if@use@pixmap@ - \IfFileExists{\@seal@graph@file}{% + \IfFileExists{\@seal@graph@file.eps}{% \IfFileExists{epsfig.sty}{% \RequirePackage{epsfig}% }{% @@ -5186,14 +5599,14 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} %<*adicl> % \end{macrocode} % -% The purpose of this file is simply to supply ``glue code'' to -% support the legacy \packlass{\lettcdpadi} class. The document -% class is ``redirected'' to \packlass{\letteracdp}, and the -% \packlass{\adiseal} package is automatically loaded. Options are +% The purpose of this file is simply to supply ``glue code'' to +% support the legacy \packlass{\lettcdpadi} class. The document +% class is ``redirected'' to \packlass{\letteracdp}, and the +% \packlass{\adiseal} package is automatically loaded. Options are % properly shunted, too. % -% It should be time to expunge this file from the Bundle, perhaps -% [v0.33], but it is also true that it uses so few +% It should be time to expunge this file from the Bundle, perhaps +% [v0.33], but it is also true that it occupies so few % bytes\ldots\space(that is, an entire block of the disk!). % % \subsection{Identification} @@ -5201,7 +5614,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1998/06/01] % LaTeX2e is required! \ProvidesClass{lettcdpadi} - [2005/01/01 v0.33 (development)] + [2006/01/01 v0.34 (development)] % \end{macrocode} % % \subsection{Initial code} @@ -5225,8 +5638,8 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % \subsection{Class and package loading} % % \begin{macrocode} -\LoadClass{letteracdp}[2005/01/01] -\RequirePackage{adiseal}[2005/01/01] +\LoadClass{letteracdp}[2006/01/01] +\RequirePackage{adiseal}[2006/01/01] % \end{macrocode} % % \subsection{Main code} @@ -5251,7 +5664,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1998/06/01] % LaTeX2e is required! \ProvidesPackage{cdpaddon} - [2005/01/01 v0.33 (development)] + [2006/01/01 v0.34 (development)] \@ifdefinable\@cdpaddon{\def\@cdpaddon{cdpaddon}} % \end{macrocode} % @@ -5316,7 +5729,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % Again, we use one of the ``scratch'' macro to save memory (the other % ``scratch'' macro is used as well inside). % \begin{macrocode} -\def\@temp@cdpaddon@a#1printer:#2,#3@@@{% +\def\@temp@cdpaddon@a#1printer:#2,#3\@@@{% \def\@temp@cdpaddon@b{#1}% \ifx\@temp@cdpaddon@b\@empty \def\@cdpaddon@printer{#2}% @@ -5333,7 +5746,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % a \opz{printer:}\ldots\ option requesting a color definition file. % \begin{macrocode} \DeclareOption*{% - \expandafter\@temp@cdpaddon@a\CurrentOption,printer:,@@@% + \expandafter\@temp@cdpaddon@a\CurrentOption,printer:,\@@@% } % \end{macrocode} % @@ -5718,11 +6131,12 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} \let\@temp@cdpaddon@a\@undefined } % \end{macrocode} -% The following line informs the \packlass{\hyperref} package that the -% bookmark level for paragraphs should be~2. -% \begin{macrocode} - \def\toclevel@paragraph{2} -% \end{macrocode} +% The following line has been removed from the code, since the +% bookmark level for paragraphs is now fixed in the file +% \filedir{\articoletteracdp.cls} (v.~0.34). +%\begin{verbatim} +%\def\toclevel@paragraph{2} +%\end{verbatim} % If hyperlinks are not requested, we can release "\@temp@cdpaddon@a" % right now. % \begin{macrocode} @@ -5764,16 +6178,16 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % ``transparent'' to the "\spacefactor", just like parentheses % (the "\spacefactor" is saved in "\count@"). % \begin{macrocode} -\DeclareRobustCommand*{\facesmile}{\@face\smile} -\DeclareRobustCommand*{\facefrown}{\@face\frown} +\DeclareRobustCommand*\facesmile{\@face\smile} +\DeclareRobustCommand*\facefrown{\@face\frown} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\@face} -% The low-level command that draws the face ("\bigcirc"), the eyes, and -% the mouth: the latter is passed as an argument, so it can be a -% "\smile" or a "\frown". +% The low-level command that draws the face ("\bigcirc"), the eyes, +% and the mouth: the latter is passed as an argument, so it can be +% either a "\smile" or a "\frown". % \begin{macrocode} \@ifdefinable\@face{\def\@face#1{% \leavevmode @@ -5819,7 +6233,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} %%% the name and the release date, respectively, of your file. %%% Note that the extension ".def" must be included in the file name, %%% and that the date is in the format YYYY/MM/DD. -\ProvidesFile{cdpshues-example.def}[2005/01/01 Printer-dependent file] +\ProvidesFile{cdpshues-example.def}[2006/01/01 Printer-dependent file] %%% %%% Define here the colors to use to draw the C.D.P. seal; %%% "slight@col" is the color used to paint the inner of the D and @@ -5838,7 +6252,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % \filedir{\epson}. % \begin{macrocode} %<*epson> -\ProvidesFile{epson-stylus-740.def}[2005/01/01 Printer-dependent file] +\ProvidesFile{epson-stylus-740.def}[2006/01/01 Printer-dependent file] \definecolor{slight@col}{rgb}{.8,1,.8} \definecolor{strong@col}{rgb}{0,.266667,0} %</epson> @@ -5849,7 +6263,7 @@ mediumsubject,uprightsignature,noPS,indent,105x37labels} % This part of the file goes into the definition file \filedir{\hplj}. % \begin{macrocode} %<*hplj> -\ProvidesFile{hp-laserjet-4500.def}[2005/01/01 Printer-dependent file] +\ProvidesFile{hp-laserjet-4500.def}[2006/01/01 Printer-dependent file] \definecolor{slight@col}{cmyk}{.1,0,.1,0} \definecolor{strong@col}{cmyk}{.5,0,.5,.5} %</hplj> diff --git a/Master/texmf-dist/source/latex/cdpbundl/cdpbundl.ins b/Master/texmf-dist/source/latex/cdpbundl/cdpbundl.ins index 45876cc9e48..c19b8da1ee8 100644 --- a/Master/texmf-dist/source/latex/cdpbundl/cdpbundl.ins +++ b/Master/texmf-dist/source/latex/cdpbundl/cdpbundl.ins @@ -3,7 +3,7 @@ % % This file is part of a work named "C.D.P. Bundle". % -% Copyright (C) 1999-2005 by Gustavo MEZZETTI <mezzetti@math.unipd.it>. +% Copyright (C) 1999-2006 by Gustavo MEZZETTI <mezzetti@math.unipd.it>. % % The C.D.P. Bundle may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 @@ -25,7 +25,7 @@ % only part of the Work" in the sense of the LaTeX Project Public % License, and is not allowed. % -% January 1, 2005 +% January 1, 2006 (vers. 0.34) % \input docstrip @@ -58,7 +58,7 @@ This is a generated file. It is part of a work named "C.D.P. Bundle". -Copyright (C) 1999-2005 by Gustavo MEZZETTI <mezzetti@math.unipd.it>. +Copyright (C) 1999-2006 by Gustavo MEZZETTI <mezzetti@math.unipd.it>. The C.D.P. Bundle may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 diff --git a/Master/texmf-dist/source/latex/coordsys/coordsys.dtx b/Master/texmf-dist/source/latex/coordsys/coordsys.dtx index 9249a7d662f..1221d4950f1 100644 --- a/Master/texmf-dist/source/latex/coordsys/coordsys.dtx +++ b/Master/texmf-dist/source/latex/coordsys/coordsys.dtx @@ -1,6 +1,6 @@ % \iffalse % This is the coordsys package, coordsys.dtx -% Copyright 2000--04 by Mogens Lemvig Hansen. +% Copyright 2000--06 by Mogens Lemvig Hansen. % % Run first coordsys.ins then this file, coordsys.dtx, % through LaTeX and read the documentation in coordsys.dvi @@ -20,9 +20,29 @@ \usepackage{url,varioref,color,coordsys,logsys} \IfFileExists{eepic.sty}{\usepackage{epic,eepic}}{\relax} \CodelineIndex%\EnableCrossrefs -\OnlyDescription +%\OnlyDescription \MakeShortVerb{\"} \makeatletter +\DoNotIndex{\@circlefnt, \@empty, \@ifpackageloaded, \@ifstar, +\@tempcnta, \@tempcntb, \@tempdima, \@tempdimb, \@tempdimc, +\@wholewidth, \\, \addtocounter, \addtolength, \advance, +\afterassignment, \arabic, \baselineskip, \char, +\color@begingroup, \color@endgroup, \colorbox, \count@, +\DeclareOption, \def, \divide, \edef, \ensuremath, +\ExecuteOptions, \fontdimen, \frac, \hbox, \hfill, \hrule, \hskip, +\hspace, \hss, +\if, \else, \fi, \ifdim, \fi, \ifnum, \fi, \ifx, \repeat, +\ignorespaces, \leaders, \leavevmode, \let, \line, \lineskip, +\loop, \makebox, \mbox, \MessageBreak, \multiply, \multiput, \n, +\NeedsTeXFormat, \newcommand, \newif, \next, \offinterlineskip, +\p@, \PackageError, \PackageWarning, \PassOptionsToPackage, +\phantom, \ProcessOptions, \providecommand, \ProvidesPackage, +\put, \raisebox, \relax, \renewcommand, \RequirePackage, \rule, +\scriptsize, \setcounter, \setlength, \settodepth, \settoheight, +\settowidth, \space, \stepcounter, \string, \t, \textfont, \the, +\thicklines, \thinlines, \unitlength, \value, \vbox, \vector, +\vee, \vfill, \vrule, \vskip, \vss, \wedge, \width, \z@} + \newcommand{\nextlinelabel}[2][1]{\@bsphack \@tempcnta\c@CodelineNo \advance\@tempcnta#1\relax @@ -375,7 +395,7 @@ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % -% \def\fileversion{1.3} \def\filedate{2004/11/15} \def\docdate{\filedate} +% \def\fileversion{1.4} \def\filedate{2006/02/03} \def\docdate{\filedate} % \title{The \textsf{coordsys} and \textsf{logsys} Packages\thanks{This % file describes version \fileversion, \filedate.}} % \author{\copyright\ Mogens Lemvig Hansen\thanks{% @@ -409,7 +429,8 @@ % % \subsection{One Dimension} % \DescribeMacro{\numbline} -% The "\numbline" command typesets a number line. For example, +% The "\numbline" command typesets a number line.\index{number line|(usage} +% For example, % \begin{quote} % \begin{verbatim} % \begin{picture}(200,20)(-75,-15) @@ -469,7 +490,7 @@ % "\vnumbline*"\oarg{spacing}\marg{from}\marg{to} % \end{quote} % The syntax is similar to that of the "\numbline" command -% \vpageref[above]{numblinesyntax}. +% \vpageref[above]{numblinesyntax}.\index{number line|)usage} % \begin{quote} % \begin{minipage}{.2\linewidth} % \begin{picture}(20,100)(-17,20) @@ -486,7 +507,8 @@ % % \subsection{Two Dimensions} % \DescribeMacro{\coordsys} -% Use the "\coordsys" command to typeset coordinate systems. +% Use the "\coordsys"\index{coordinate system>with intersecting axes|usage} +% command to typeset coordinate systems. % \begin{quote} % \begin{picture}(200,110)(-50,-50) % \coordsys(-50,-50)(150,60) @@ -517,7 +539,8 @@ % styles. All the coordinate-system-drawing commands have similar syntax. % % \DescribeMacro{\fcoordsys}\DescribeMacro{\fcoordsys*} -% The "\fcoordsys" command typesets framed coordinate systems; that is, the +% The "\fcoordsys"\index{coordinate system>framed|usage} +% command typesets framed coordinate systems; that is, the % axes are at the left and bottom edges of the system. % \begin{quote} % "\fcoordsys"\oarg{h-spacing}\oarg{v-spacing}\parg{ll}\parg{ur}\\ @@ -533,7 +556,8 @@ % \end{quote} % % \DescribeMacro{\bcoordsys}\DescribeMacro{\bcoordsys*} -% The "\bcoordsys" command typesets boxed coordinate systems. +% The "\bcoordsys"\index{coordinate system>boxed|usage} +% command typesets boxed coordinate systems. % \begin{quote} % "\bcoordsys"\oarg{h-spacing}\oarg{v-spacing}\parg{ll}\parg{ur}\\ % "\bcoordsys*"\oarg{h-spacing}\oarg{v-spacing}\parg{ll}\parg{ur} @@ -566,7 +590,8 @@ % part of the \textsf{amsmath} package). % % \DescribeMacro{\coordgrid} -% The "\coordgrid" command typesets a coordinate grid. +% The "\coordgrid"\index{grid|(usage}\index{grid>dotted|usage} +% command typesets a coordinate grid. % \begin{quote} % \begin{picture}(300, 125) % \coordgrid(0,0)(300,125) @@ -586,16 +611,19 @@ % \end{picture} % \end{quote} % If you load the \textsf{color} package before the \textsf{coordsys} -% package, the labels will be printed on a white background. +% package, the labels will be printed on a +% white background.\index{labels>background of|usage} % % Typesetting pretty grids with dotted lines is not easy. -% If a grid does come out ugly, try to increase "\unitlength" +% If a grid does come out ugly,\index{grid>ugly|usage} +% try to increase "\unitlength" % to allow for more dots between the lines. % You may also reduce the size of the dots; % see the "\gridstyle" command \vpageref[below]{gridstyle}. % \DescribeMacro{\coordgrid*} % Alternatively you can use the "\coordgrid*" command which -% typesets a coordinate grid with solid lines. You could then use the +% typesets a coordinate grid with solid lines.\index{grid>solid|usage} +% You could then use the % \textsf{color} package to colour the grid, say, gray; again, see % the "\gridstyle" command \vpageref[below]{gridstyle}. % @@ -607,11 +635,12 @@ % typeset coordinate grids with a syntax similar to that of % the "\coordsys" command \vpageref[above]{coordsyssyntax}. % The starred version uses solid lines; -% the un-starred version uses dotted lines. +% the un-starred version uses dotted lines.\index{grid|)usage} % % \DescribeMacro{\gridstyle}\label{gridstyle} % The default size of the dots is the with of "\thinlines" -% and "\thicklines". If you intend to print your grids at a +% and "\thicklines".\index{grid>size of dots|usage}\index{grid>style|(usage} +% If you intend to print your grids at a % sufficiently high resolution, you should reduce the size of the % dots by issuing a "\gridstyle" command. On my 600\,dpi printer, % these sizes look nice for points: @@ -637,7 +666,8 @@ % \end{picture} % \end{quote} % -% If you make grids for the screen, I recommend using colour. For example, +% If you make grids for the screen, I recommend using +% colour.\index{grid>coloured|usage} For example, % \begin{quote} % \begin{verbatim} % \definecolor{gray}{gray}{0.5} @@ -664,13 +694,15 @@ % \meta{thick declaration}. % The current "\gridstyle" applies to all types of grids: % dotted, solid, regular, or logarithmic. -% The default style is "\gridstyle{\thinlines}{\thicklines}".\label{defaultgridstyle} +% The default style is +% "\gridstyle{\thinlines}{\thicklines}".\label{defaultgridstyle}\index{grid>style|)usage} % % % \subsection{Bells and Whistles} % \subsubsection{Manual Labels} % \DescribeMacro{\sethlabel}\DescribeMacro{\setvlabel} -% All the number-line and coordinate-system commands format the labels using +% All the number-line and coordinate-system commands format the +% labels\index{labels>manual|usage}\index{manual labels|usage} using % the commands "\sethlabel" (for labels on horizontal axes) and % "\setvlabel" (for labels on vertical axes). If you set labels manually, % you should use the same commands for a uniform appearance. @@ -701,8 +733,9 @@ % \subsubsection{Thick Tick Density} % \DescribeMacro{\hthickratio} % \DescribeMacro{\vthickratio} -% By default every fifth tick mark is thick. You can change that by -% redefining +% By default every fifth tick mark is +% thick.\index{thick ticks|usage}\index{ticks>ratio of thick|usage} +% You can change that by redefining % the commands "\hthickratio" and "\vthickratio". % \begin{quote} % \begin{verbatim} @@ -718,7 +751,8 @@ % % \subsubsection{Different Scales on the Two Axes} % \DescribeMacro{\rescaleby} -% LaTeX\ (the \textsf{picture} environment) does not support different scales +% LaTeX\ (the \textsf{picture} environment) does not support different +% scales\index{labels>re-scaled|usage}\index{scaling labels|usage} % on the two axes; "\unitlength" is used for both the % horizontal and the vertical direction. % However, you may create the \emph{appearance} of different scales by @@ -740,12 +774,15 @@ % \end{quote} % That is, % \begin{quote} -% "\rescaleby"\oarg{opt}\marg{num}\marg{den}\marg{cmd} +% "\rescaleby"\oarg{symb}\marg{num}\marg{den}\marg{cmd} % \end{quote} -% multiplies the labels by $\frac{\meta{num}}{\meta{den}}$; -% both \meta{num} and \meta{den} should be positive integers. -% If the optional argument is present, each label will also -% be multiplied by \meta{opt} (which may be a non-integer). +% multiplies the labels by $\frac{\meta{num}}{\meta{den}}\meta{symb}$; +% both \meta{num} and \meta{den} must be integers; +% and \meta{den} must be positive.\footnote{Multiplying the labels by +% a negative number does not reverse the arrows, so I suggest using +% boxed coordinate systems in that case.} +% The optional argument, if present, represents a symbolic +% (non-numeric) scale factor; see the example below. % The last argument, \meta{cmd}, must be one of "\hlabel" % or "\vlabel". % @@ -776,7 +813,7 @@ % As you can affect the width of the dots or lines of a % "\coordgrid" with a "\gridstyle" command, % so you can affect the width of the tick marks with a -% "\tickstyle" command: +% "\tickstyle"\index{ticks>style of|usage} command: % \begin{quote} % "\tickstyle"\marg{thin declaration}\marg{thick declaration} % \end{quote} @@ -793,7 +830,8 @@ % \texttt{\textbackslash tickstyle}.} % % \DescribeMacro{\ticklength} -% The "\ticklength" command controls the length of the tick marks. +% The "\ticklength" command controls the length of the +% tick marks.\index{ticks>length of|usage} % \begin{quote} % \begin{verbatim} % \tickstyle{\thinlines\renewcommand{\ticklength}{4pt}} @@ -808,7 +846,8 @@ % Note that the \emph{command} "\ticklength" must be changed with % "\renewcommand". % -% If you prefer tick marks just on the outside of the coordinate axes, load +% If you prefer tick marks\index{ticks>style of|usage} +% just on the outside of the coordinate axes, load % \textsf{coordsys} with the \textsf{outside} option. % \begin{quote} % \begin{verbatim} @@ -838,7 +877,8 @@ % % \subsection{One Dimension} % \DescribeMacro{\logline} -% The "\logline" command typesets a horizontal, logarithmic number line. +% The "\logline" command typesets a horizontal, logarithmic number +% line.\index{number line>logarithmic|(usage} % \begin{quote} % \begin{verbatim} % \logline{-60}{210} @@ -873,7 +913,8 @@ % The "\logline" command only typesets an axis; it does not change the % way \LaTeX\ and the \textsf{picture} environment interprets coordinates. % The equation below gives the relationship between the coordinate to -% "\put", $x_p$, and the apparent coordinate, $x_a$. +% "\put", $x_p$, and the apparent coordinate, +% $x_a$.\index{labels>logarithmic|usage} % \[ % x_p = \meta{spacing} \log_{10} x_a. % \] @@ -899,12 +940,13 @@ % "\vlogline*"\oarg{spacing}\marg{from}\marg{to} % \end{quote} % The syntax is similar to that of the "\logline" command -% \vpageref[above]{loglinesyntax}. +% \vpageref[above]{loglinesyntax}.\index{number line>logarithmic|)usage} % % % \subsection{Two Dimensions} % \DescribeMacro{\logsys} -% Use the "\logsys" command to typeset logarithmic coordinate systems. +% Use the "\logsys"\index{coordinate system>logarithmic|(usage} +% command to typeset logarithmic coordinate systems. % \begin{quote} % \begin{picture}(220,125)(-70,-65) % \logsys[5](-50,-50)(150,60) @@ -980,7 +1022,8 @@ % thick tick marks (powers of $10$) on the vertical axis; % the default is 50 units. % The starred version omits the labels. -% All the arguments must be integers. +% All the arguments must be +% integers.\index{coordinate system>logarithmic|)usage} % % \DescribeMacro{\loggrid} % \DescribeMacro{\loggrid*} @@ -988,7 +1031,8 @@ % \DescribeMacro{\semiloggrid*} % \DescribeMacro{\logloggrid} % \DescribeMacro{\logloggrid*} -% The "\loggrid", "\loggrid*", "\semiloggrid", +% The "\loggrid",\index{grid>logarithmic|(usage} +% "\loggrid*", "\semiloggrid", % "\semiloggrid*", "\logloggrid", and "\logloggrid*" commands % typeset logarithmic grids. % \begin{quote} @@ -1019,7 +1063,7 @@ % thick tick marks (the powers of $10$) on logarithmic axes. % The starred versions use solid lines; % the un-starred versions use dotted lines. -% All the arguments must be integers. +% All the arguments must be integers.\index{grid>logarithmic|)usage} % % % \section{Filling the Coordinate Systems} @@ -1111,7 +1155,8 @@ % % % \subsection{Curves} -% For plotting curves I recommend the \textsf{epic} and +% For plotting curves\index{curves|(usage} +% I recommend the \textsf{epic} and % \textsf{eepic} packages.\footnote{Both are old \LaTeX209 packages that work % fine in \LaTeXe. The \textsf{eepic} package re-implements the \textsf{epic} % package making use of \textsc{PostScript}. The \textsf{eepic} package @@ -1119,14 +1164,14 @@ % I especially like \textsf{(e)epic}'s "\putfile" command which allows % you to calculate your plot with some external program, export the points to % plot to a text file, and import that file to have \LaTeX\ draw the plot. -% For external program I use Maple. +% For external program I use Maple.\index{curves>with Maple|usage} % The \textsf{coordsys} package includes a piece of % Maple code that exports a Maple plot in the form "\putfile" expects. % You can therefore take advantage of Maple adaptive plotting % algorithm\footnote{Maple cleverly calculates more points where the curve % wiggles.} in your \LaTeX\ plots. % -% Here is how it works: +% Here is how it works:\index{putfile|usage} % In Maple, read in the file \url{putfile} which is part of the % \textsf{coordsys} package. % \begin{verbatim} @@ -1196,14 +1241,15 @@ % % To draw a curve that requires (or looks best with) different scales on % the two axes, you can use the "scale" option to -% "putfile" in Maple: +% "putfile"\index{curves>scaled|(usage}\index{putfile>scale|(usage} +% in Maple: % \begin{verbatim} % > plot( (x+2)*(x-1)*(x-2), x=-3..4 ); % > putfile( "cubic.put", %, scale=[10, 1] ); % \end{verbatim} % Now all the $x$-coordinates in "cubic.put" are $10$ times larger % than they should be. Thus re-scale the horizontal labels -% by~$\frac{1}{10}$. +% by~$\frac{1}{10}$.\index{labels>re-scaled|(usage}\index{scaling labels|(usage} % \begin{quote} % \begin{verbatim} % \rescaleby{1}{10}{\hlabel} @@ -1268,7 +1314,8 @@ % \fi % \end{quote} % -% If the plot contains more than one curve, "putfile" generates +% If the plot contains more than one curve, +% "putfile"\index{putfile>multiple curves|usage} generates % one file for each. You can of course specify multiple curves % directly, but they can also be the result of the "discont" % option to "plot". @@ -1316,7 +1363,10 @@ % \fi % \end{quote} % -% For logarithmic plots scaling is almost always necessary. Consider the +% For logarithmic plots +% scaling\index{curves>logarithmic|usage}\index{scaling labels>logarithmic|usage} +% is almost always necessary. +% Consider the % graph of $y=\frac{1}{1+e^{-x}}$ for $x$ running from $-10$ to $10$. % The $y$-coordinates extend over five powers of $10$, so scale by $4$ % to make it comparable to the range of $x$-coordinates. @@ -1355,8 +1405,10 @@ % \end{picture} % \fi % \end{quote} +% \index{curves>scaled|)usage}\index{putfile>scale|)usage}% +% \index{labels>re-scaled|)usage}\index{scaling labels|)usage} % -% Use the "putfile" command as follows: +% Use the "putfile" command as follows:\index{putfile>syntax|usage} % \begin{quote} % "putfile(" \meta{filename}"," \meta{PLOT structure} ["," % \meta{options} ] ");" @@ -1369,7 +1421,7 @@ % as is. (So if you do not want "putfile" to meddle with your filename, % give it in a set.) % -% The only possible option is +% The only possible option is\index{putfile>scale|(usage} % \begin{quote} % "scale" "=" "[" \meta{number}"," \meta{number} "]" % \end{quote} @@ -1389,11 +1441,11 @@ % you should use the optional \meta{spacing} argument to % the command that draws the coordinate system, say % "\logsys[30]("\dots -% \end{itemize} +% \end{itemize}\index{putfile>scale|)usage}\index{curves|)usage} % % % \section{Installation} -% Extract the \url{.sty} files from +% Extract\index{installation|usage} the \url{.sty} files from % the \url{.dtx} file by running \url:coordsys.ins: through \LaTeX. % Then generate the documentation for the \textsf{coordsys} and % \textsf{logsys} packages @@ -1435,17 +1487,21 @@ % % \section{Acknowledgements} % Thank you to Scott Pakin -% (\url{pakin@uiuc.edu}) for his input on the implementation of Euclid's +% for his input on the implementation of Euclid's % algorithm. % % Thank you to Svend Daugaard Pedersen -% (\url{Svend@DaugaardPedersen.dk}) % for catching an error in the logarithmic systems % and for suggestions that led to "\gridstyle". % -% Thank you to Staffan Lundberg who found an error in my understanding +% Thank you to Staffan Lundberg +% who found an error in my understanding % of Maple's structured types and thus prompted me to polish the -% Maple code for "pufile". +% Maple code for "putfile". +% +% Thank you to Jan Hegewald +% whose questions led to an improved description and implementation +% of "\rescaleby". % % % \StopEventually{ @@ -1460,7 +1516,7 @@ % \begin{macrocode} %<*coordsys> \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{coordsys}[2004/11/15 version 1.3] +\ProvidesPackage{coordsys}[2006/02/03 version 1.4] % \end{macrocode} % % \subsubsection{Declaration of Options} @@ -1606,18 +1662,18 @@ % which should be either "\hlabel" or "\vlabel". % After % \begin{quote} -% "\rescaleby"\oarg{opt}\marg{num}\marg{den}"{\hlabel}" +% "\rescaleby"\oarg{symb}\marg{num}\marg{den}"{\hlabel}" % \end{quote} % the result of "\hlabel"\marg{x} should be -% $\frac{\meta{num}\times \meta{x}}{\meta{den}} \meta{opt}$. +% $\frac{\meta{num}\times \meta{x}}{\meta{den}} \meta{symb}$. % \begin{macrocode} \newcommand{\rescaleby}[4][]{\renewcommand{#4}[1]{{% \count@=##1\relax - \ifnum\count@<0\count@=-\count@\fi \ifnum\count@=0\relax \@tempcntb=1\relax \else \multiply\count@ #2\relax + \ifnum\count@<0\count@=-\count@\fi \@EuclidGCD{\count@}{#3}% \count@=##1\relax \multiply\count@ #2\relax @@ -2337,6 +2393,7 @@ \def\coordsys@c{}% \fi\fi\fi % \end{macrocode} +% \begin{macro}{\coordsys@w}\begin{macro}{\coordsys@h} % Finally, "\put" the pieces down. Here "\coordsys@w" is the vertical % coordinate of the last typeset horizontal axis (usually~$0$), % and "\interval@line" is defined by "\intervalthickness" below. @@ -2350,7 +2407,7 @@ \fi \next} % \end{macrocode} -% \end{macro} +% \end{macro}\end{macro}\end{macro} % % \begin{macro}{\vinterval} % \begin{macro}{\vinterv@l} @@ -2450,6 +2507,7 @@ % \end{macro}\end{macro} % % \begin{macro}{\intervalthickness} +% \begin{macro}{interval@line}\begin{macro}{\vinterval@line} % The "\intervalthickness" command defines the two commands "\interval@line" % and "\vinterval@line" that draw the thick line indicating the interval. % \begin{macrocode} @@ -2476,7 +2534,7 @@ }% } % \end{macrocode} -% \end{macro} +% \end{macro}\end{macro}\end{macro} % % Then a few defaults for "\interval" and "\vinterval". % \begin{macrocode} @@ -2490,7 +2548,7 @@ % \begin{macrocode} %<*euclid> \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{euclidgcd}[2004/11/15 version 1.3] +\ProvidesPackage{euclidgcd}[2006/02/03 version 1.4] \newcommand{\EuclidGCD}[2]{% \@EuclidGCD{#1}{#2}% \the\@tempcnta} @@ -2536,7 +2594,7 @@ % \begin{macrocode} %<*logsys> \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{logsys}[2004/11/15 version 1.3] +\ProvidesPackage{logsys}[2006/02/03 version 1.4] % \end{macrocode} % % \subsubsection{Options} @@ -2551,7 +2609,7 @@ % \subsubsection{Package Loading} % The \textsf{logsys} package extends the \textsf{coordsys} package. % \begin{macrocode} -\RequirePackage{coordsys}[2004/11/15] +\RequirePackage{coordsys}[2006/02/03] % \end{macrocode} % % \subsubsection{Main Code} @@ -3034,8 +3092,8 @@ %<*putfile> putfile := proc(fn::{string, list(string), set(string)}, P::specfunc(anything, PLOT) ) - option `Copyright 2000-04 by Mogens Lemvig Hansen`; - description "version 1.0"; + option `Copyright 2000-06 by Mogens Lemvig Hansen`; + description "version 1.1"; local L, fns, i, V, scl, FH, ttl, pt, path, ext; global StringTools; % \end{macrocode} @@ -3118,7 +3176,7 @@ putfile := proc(fn::{string, list(string), set(string)}, % Finally, extract the title, if any. % The title will be included as a comment. % Since the title could be a multi-line string, we must insert "%" characters -% before any new-lines. +% after any new-lines. % \begin{macrocode} ttl := select(type, [op(P)], 'specfunc'('anything', 'TITLE')); if nops(ttl) = 1 then @@ -3140,8 +3198,8 @@ putfile := proc(fn::{string, list(string), set(string)}, if scl <> [1,1] then fprintf(FH, "%% scaled %a\n", scl) fi; V := [ map2(op, 1, L[i]), map2(op, 2, L[i]) ]; V := map( u-> min(op(u))..max(op(u)), V ); - fprintf(FH, "%% horizontal range: %f..%f\n", op(V[1])); - fprintf(FH, "%% vertical range: %f..%f\n", op(V[2])); + fprintf(FH, "%% horizontal range: %f .. %f\n", op(V[1])); + fprintf(FH, "%% vertical range: %f .. %f\n", op(V[2])); for pt in L[i] do fprintf(FH, "%f \t%f\n", op(pt)); od; @@ -3163,8 +3221,8 @@ end; % "putfile/grabcurves" will flatten to one sequence of \meta{curve}s % \begin{macrocode} `putfile/grabcurves` := proc(x) - option `Copyright 2000-04 by Mogens Lemvig Hansen`; - description "version 1.0"; + option `Copyright 2000-06 by Mogens Lemvig Hansen`; + description "version 1.1"; local L; if op(0, x) = 'CURVES' then L := [ op(x) ]; @@ -3182,8 +3240,8 @@ end; % \begin{macrocode} `putfile/cleancurve` := proc(CC::list, V::list) local C, B, pts, pt, m, i; - option `Copyright 2004 by Mogens Lemvig Hansen`; - description "version 1.0"; + option `Copyright 2004-06 by Mogens Lemvig Hansen`; + description "version 1.1"; % \end{macrocode} % Remove any non-numeric points. % \begin{macrocode} @@ -3233,13 +3291,13 @@ end; % \begin{macrocode} pts := [pts]; if C[i-1][1] < C[i][1] then - pts := sort(pts, (u,v)->evab(u[1]<v[1])); + pts := sort(pts, (u,v)->evalb(u[1]<v[1])); elif C[i-1][1] > C[i][1] then - pts := sort(pts, (u,v)->evab(u[1]>v[1])); + pts := sort(pts, (u,v)->evalb(u[1]>v[1])); elif C[i-1][2] < C[i][2] then - pts := sort(pts, (u,v)->evab(u[2]<v[2])); + pts := sort(pts, (u,v)->evalb(u[2]<v[2])); elif C[i-1][2] > C[i][2] then - pts := sort(pts, (u,v)->evab(u[2]>v[2])); + pts := sort(pts, (u,v)->evalb(u[2]>v[2])); else error "cannot happen"; fi; diff --git a/Master/texmf-dist/source/latex/coordsys/coordsys.ins b/Master/texmf-dist/source/latex/coordsys/coordsys.ins index 439f205d738..6533a29459e 100644 --- a/Master/texmf-dist/source/latex/coordsys/coordsys.ins +++ b/Master/texmf-dist/source/latex/coordsys/coordsys.ins @@ -1,51 +1,51 @@ -% The coordsys and logsys packages, version 1.3.
-% Run first this file, coordsys.ins, then coordsys.dtx
-% through LaTeX and read the documentation in coordsys.dvi
-%
-\input docstrip.tex
-\preamble
-
-
- This is the coordsys and logsys packages
- Copyright 2000-04 by Mogens Lemvig Hansen,
- mlhansen@uniserve.com
-
-This program may be distributed and/or modified under the
-conditions of the LaTeX Project Public License, either version 1.3
-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 2003/12/01 or later.
-
-This program consists of the files coordsys.dtx and coordsys.ins
-
-\endpreamble
-\generate{\file{coordsys.sty} {\from{coordsys.dtx}{coordsys}}
- \file{logsys.sty} {\from{coordsys.dtx}{logsys}}
-% \file{euclidgcd.sty}{\from{coordsys.dtx}{euclid}}
- }
-
-{\catcode`\#=12\gdef\MetaPrefix{##}}
-\preamble
-
-
- This is the coordsys and logsys packages
- Copyright 2000-04 by Mogens Lemvig Hansen,
- mlhansen@uniserve.com
-
-This program may be distributed and/or modified under the
-conditions of the LaTeX Project Public License, either version 1.3
-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 2003/12/01 or later.
-
-This program consists of the files coordsys.dtx and coordsys.ins
-
-\endpreamble
-\nopostamble
-\generate{\file{putfile.} {\from{coordsys.dtx}{putfile}}
- }
-\endbatchfile
+% The coordsys and logsys packages, version 1.4. +% Run first this file, coordsys.ins, then coordsys.dtx +% through LaTeX and read the documentation in coordsys.dvi +% +\input docstrip.tex +\preamble + + + This is the coordsys and logsys packages + Copyright 2000-06 by Mogens Lemvig Hansen, + mlhansen@uniserve.com + +This program may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3 +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 2003/12/01 or later. + +This program consists of the files coordsys.dtx and coordsys.ins + +\endpreamble +\generate{\file{coordsys.sty} {\from{coordsys.dtx}{coordsys}} + \file{logsys.sty} {\from{coordsys.dtx}{logsys}} +% \file{euclidgcd.sty}{\from{coordsys.dtx}{euclid}} + } + +{\catcode`\#=12\gdef\MetaPrefix{##}} +\preamble + + + This is the coordsys and logsys packages + Copyright 2000-06 by Mogens Lemvig Hansen, + mlhansen@uniserve.com + +This program may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3 +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 2003/12/01 or later. + +This program consists of the files coordsys.dtx and coordsys.ins + +\endpreamble +\nopostamble +\generate{\file{putfile.} {\from{coordsys.dtx}{putfile}} + } +\endbatchfile diff --git a/Master/texmf-dist/source/latex/dramatist/dramatist.dtx b/Master/texmf-dist/source/latex/dramatist/dramatist.dtx index 456d100e210..64b27a31ae3 100644 --- a/Master/texmf-dist/source/latex/dramatist/dramatist.dtx +++ b/Master/texmf-dist/source/latex/dramatist/dramatist.dtx @@ -1,6 +1,6 @@ %\iffalse %% dramatist.dtx -%% Copyright (C) 2003-2004 Massimiliano Dominici +%% Copyright (C) 2003-2005 Massimiliano Dominici % % This program is free software; you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by @@ -49,6 +49,7 @@ \makeatother \OnlyDescription \EnableCrossrefs +\CodelineIndex \RecordChanges \providecommand\envname[1]{\textsf{#1}} \providecommand\clsname[1]{\textsf{#1}} @@ -60,7 +61,7 @@ \end{document} %</driver> %\fi -% \CheckSum{1008} +% \CheckSum{523} %% \CharacterTable%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z %% Digits \0\1\2\3\4\5\6\7\8\9 @@ -88,6 +89,18 @@ %environment (\envname{CharacterGroup}) for characters groups in %the \emph{Dramatis Person\ae} list; added various hooks for user %customization.} +%\changes{v1.2a}{2005/05/21}{Fixed a bug in the vertical spacing of +%\cs{DramPer}. Changed name of counter \textsf{linenumber} in +%\textsf{verselinenumber} in order to mantain compatibility with +%package \pkgname{poemscol}} +%\changes{v1.2c}{2005/07/26}{Fixed two bugs: now the package works +%correctly with the spanish extension of \pkgname{babel} and a +%\cs{\meta{name}} command at the end of a \cs{direct} macro no more gives +%an unwanted space. Fixed a typo in the author e-mail address.} +%\changes{v1.2d}{2005/12/01}{Fixed three bugs: restored a missing +%backslash in \cs{dirdelimiter}; customized lengths in character groups +%inside a Dramatis Personae list now work correctly; \cs{speaksdel} is +%now appended to characters' label in verse drama environment too.} % %\DoNotIndex{\@afterheading,\@afterindentfalse,\@break@tfor,\@empty} %\DoNotIndex{\@ifstar,\@let@token,\@namedef,\@nameuse,\@nil} @@ -113,7 +126,7 @@ % %\title{The \Filename{dramatist} package\thanks{This file has version %number \fileversion{} dated \filedate{}.} \\User Guide} -%\author{Massimiliano Dominici\\\texttt{mlgdominici@intrefree.it}} +%\author{Massimiliano Dominici\\\texttt{mlgdominici@interfree.it}} %\date{\filedate} %\maketitle % @@ -499,8 +512,9 @@ % % \begin{macrocode} %<*dramatist> -\ProvidesPackage{dramatist}[2004/05/10 v1.2 Package for typesetting drama -- Author: Massimiliano Dominici] +\ProvidesPackage{dramatist}[2005/12/01 v1.2d Package for typesetting drama -- Author: Massimiliano Dominici] \NeedsTeXFormat{LaTeX2e} +\RequirePackage{xspace} % \end{macrocode} %\subsection{Conditionals, options and counters} %The following line checks wether a class defining |\if@openright| @@ -599,7 +613,7 @@ \@drversetrue \if@poemscol \begin{poem} - \setcounter{linenumber}{\value{storelineno}} + \setcounter{verselinenumber}{\value{storelineno}} \setcounter{printlineindex}{\value{storeprintlineindex}} \else \begin{verse} @@ -613,7 +627,7 @@ \fi \if@poemscol \end{poem} - \setcounter{storelineno}{\value{linenumber}} + \setcounter{storelineno}{\value{verselinenumber}} \setcounter{storeprintlineindex}{\value{printlineindex}} \else \end{verse} @@ -813,10 +827,7 @@ %The macro |\Character| performs three different tasks. First, %it creates, being \meta{name} the third argument, the command %|\|\meta{name}, for use in stage directions; in order to achieve -%this task it uses |\@namedef|, and a new defined command, -%|\intsp@ce|, which takes care of inserting spaces when needed and -%which is inspired by |\text@command| (both for this and for -%|\@namedef| see the latex source). +%this task it uses |\@namedef| (see the latex source). % %In second place it creates a |\|\meta{name}|speaks| command, used %for printing the speaker's name. It uses, for this purpose a @@ -843,10 +854,10 @@ \def\@xcharacter[#1]#2#3{% \stepcounter{character} \@character{#2}{#3} - \n@me@ppend@nddef{persona}{\roman{character}}{\castfont #1} + \n@me@ppend@nddef{persona}{@\Roman{character}}{\castfont #1} } \def\@character#1#2{% - \@namedef{#2}{{\namefont #1}\intsp@ce{#1}\check@spr} + \@namedef{#2}{{\namefont #1}\xspace} \n@me@ppend@nddef{#2}{\@ppendname}{% \if@drverse {\speakstab\speaksfont{#1}\speaksdel\par\nobreak\addvspace{-\parskip}} @@ -876,7 +887,7 @@ % \begin{macrocode} \newenvironment{CharacterGroup}[1]{% \stepcounter{character} - \newcounter{g\roman{character}} + \newcounter{g\Roman{character}} \grouplist{#1} }{} % \end{macrocode} @@ -887,9 +898,9 @@ % \begin{macrocode} \newsavebox{\tbox} \newcommand\grouplist[1]{% - \global\n@me@ppend@nddef{persona}{\roman{character}}{% + \global\n@me@ppend@nddef{persona}{@\Roman{character}}{% \begin{lrbox}{\tbox} - \begin{minipage}[c]{.65\textwidth}\raggedright + \begin{minipage}[c]{\CharWidth}\raggedright \leftmargini=0pt \begin{list}{}{\itemsep=0pt} \dogrouplist @@ -898,14 +909,14 @@ \end{lrbox} \parbox{\CharWidth}{\usebox{\tbox}}% \parbox{\ParenWidth}{$\left.\rule{0pt}{\ht\tbox}\right\}$} - \parbox{\CastWidth}{\castfont #1}} + \parbox{\CastWidth}{\castfont #1\strut}} } % \end{macrocode} % \begin{macrocode} \newcommand{\dogrouplist}{% - \ifnum\value{g\roman{temp}}>\value{gtemp} + \ifnum\value{g\Roman{temp}}>\value{gtemp} \stepcounter{gtemp} - \item\@nameuse{gpersona\Roman{temp}\roman{gtemp}} + \item\@nameuse{gpersona@\Roman{temp}@\Roman{gtemp}}\strut \dogrouplist \fi \setcounter{gtemp}{0} @@ -920,16 +931,16 @@ %argument is, obviously, mandatory. % \begin{macrocode} \newcommand\GCharacter[3]{ - \stepcounter{g\roman{character}} - \global\@namedef{#3}{{\namefont #2}\intsp@ce{#2}\check@spr} + \stepcounter{g\Roman{character}} + \global\@namedef{#3}{{\namefont #2}\xspace} \global\n@me@ppend@nddef{#3}{\@ppendname}{% \if@drverse - {\speakstab\speaksfont #2\par\nobreak\addvspace{-\parskip}} + {\speakstab\speaksfont #2\speaksdel\par\nobreak\addvspace{-\parskip}} \else - \item[#2] + \item[#2\speaksdel] \fi} - \global\n@me@ppend@nddef{gpersona\Roman{character}}{% - \roman{g\roman{character}}}{\castfont #1} + \global\n@me@ppend@nddef{gpersona@\Roman{character}}{% + @\Roman{g\Roman{character}}}{\castfont #1} } % \end{macrocode} %\end{macro} @@ -947,69 +958,6 @@ \fi} % \end{macrocode} %\end{macro} -%\begin{macro}{\intsp@ce} -%For details about this code you may have a look to -%\Filename{ltfntcmd.dtx}. -% \begin{macrocode} -\let \nospace \relax -% \end{macrocode} -% \begin{macrocode} -\let \check@spr \@empty -% \end{macrocode} -% \begin{macrocode} -\def \intsp@ce #1{% - \def \reserved@a {#1}% - \ifx \reserved@a \@empty - \let \check@spr \@empty - \else - \ifx \reserved@a \space - \let \check@spr \@empty - \else - \check@nospace@ #1\nospace\@nil - \fi - \fi -} -% \end{macrocode} -% \begin{macrocode} -\def \check@nospace@ #1#2\nospace#3\@nil {% - \let \check@spr \maybe@sp - \def \reserved@a {\nospace}% - \def \reserved@b {#1}% - \def \reserved@c {#3}% - \ifx \reserved@a \reserved@b - \ifx \reserved@c \@empty - \else - \let \check@spr \@empty - \fi - \else - \ifx \reserved@c \@empty - \else - \let \check@spr \@empty - \fi - \fi -} -% \end{macrocode} -% \begin{macrocode} -\def \maybe@sp {\futurelet\@let@token\maybe@sp@} -\def \maybe@sp@ {% - \@tempswatrue - \expandafter\@tfor\expandafter\reserved@a\expandafter:\expandafter=% - \nospacelist - \do \t@st@sp - \if@tempswa \space \fi -} -\def \t@st@sp {% - \expandafter\let\expandafter\reserved@b\expandafter=\reserved@a\relax - \ifx\reserved@b\@let@token - \@tempswafalse - \@break@tfor - \fi -} -% \end{macrocode} -% \begin{macrocode} -\def \nospacelist {,.;:?!)} -% \end{macrocode} -%\end{macro} %\begin{macro}{\DramPer} %\changes{v1.1}{2004/01/19}{\cs{DramPer} is now defined in a standard %way and has an optional argument (to use for footnotes and the @@ -1050,7 +998,7 @@ \newcommand{\dodramperlist}{% \ifnum\value{character}>\value{temp} \stepcounter{temp} - \item\@nameuse{persona\roman{temp}} + \item\@nameuse{persona@\Roman{temp}}\strut \dodramperlist \fi } @@ -1073,9 +1021,9 @@ \newcommand{\@direct}[1]{% \if@drverse \vskip2\normallineskip - \parbox[b]{\dirwidth}{\dirdelimiter{\emph{#1}}}\@centercr + \parbox[b]{\dirwidth}{\dirdelimiter{{\itshape #1}}}\@centercr \else - \dirdelimiter{\emph{#1}}\unskip + \dirdelimiter{{\itshape #1}}\unskip \fi } % \end{macrocode} @@ -1083,7 +1031,7 @@ \newcommand{\@sdirect}[1]{% \if@drverse \vskip2\normallineskip - \parbox[b]{\dirwidth}{\dirdelimiter{\emph{#1}}}\\! + \parbox[b]{\dirwidth}{\dirdelimiter{\itshape #1}}\\! \else \starrederror \fi @@ -2125,8 +2073,8 @@ %free software license, such as the GNU General Public License, %to permit their use in free software. % -%\StopEventually{ -%\begin{thebibliography}{10} +% \StopEventually{ +% \begin{thebibliography}{10} % \bibitem{knuth} Donald Knuth. % \newblock \emph{The \TeX book}, % \newblock Addison--Wesley, Reading, MA, 1996. @@ -2137,10 +2085,10 @@ % \bibitem{ver} Peter Wilson % \newblock \emph{Typesetting simple verse with \LaTeX}, % \newblock (Available from CTAN, \texttt{macros/latex/contrib/supported/verse}) -%\end{thebibliography} -%\PrintChanges -%\PrintIndex -%} +% \end{thebibliography} +% \PrintChanges +% \PrintIndex +% } %\iffalse %<*schiller> %\fi @@ -2794,6 +2742,7 @@ And, when I die, here shall my spirit walk.\\! %\iffalse %</vmarlowe> %\fi +%\iffalse %<*pmarlowe> %\fi % \begin{macrocode} @@ -3136,5 +3085,6 @@ And, when I die, here shall my spirit walk.\verseline %</pmarlowe> %\fi %\Finale +% \PrintIndex \PrintChanges \endinput diff --git a/Master/texmf-dist/source/latex/egplot/egplot.drv b/Master/texmf-dist/source/latex/egplot/egplot.drv index 57a1dcc6089..10f5c5b4b36 100644 --- a/Master/texmf-dist/source/latex/egplot/egplot.drv +++ b/Master/texmf-dist/source/latex/egplot/egplot.drv @@ -32,7 +32,7 @@ %% Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% \CheckSum{376} +%% \CheckSum{449} %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z @@ -52,6 +52,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \documentclass[a4paper]{article} \usepackage{doc} +\usepackage{multicol} \IfFileExists{mflogo.sty}% {\usepackage{mflogo}% \def\GP{\textsf{gnuplot}}% @@ -60,7 +61,7 @@ {\def\GP{\textsf{gnuplot}}% \def\EMP{\textsf{EMP}}% \def\EGP{\textsf{egplot}}} -\usepackage{egplot} +\usepackage[gnuplot35]{egplot} \setlength{\parindent}{0pt} \def\manindex#1{\SortIndex{#1}{#1}} \EnableCrossrefs diff --git a/Master/texmf-dist/source/latex/egplot/egplot.dtx b/Master/texmf-dist/source/latex/egplot/egplot.dtx index 78f345b9a8b..5e875969676 100644 --- a/Master/texmf-dist/source/latex/egplot/egplot.dtx +++ b/Master/texmf-dist/source/latex/egplot/egplot.dtx @@ -19,7 +19,7 @@ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % -%% \CheckSum{376} +%% \CheckSum{449} %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z @@ -40,8 +40,14 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % \changes{v1.00}{1998/06/17}{First released version} -% \changes{v1.01}{1998/06/25}{Fixed bug with \texttt{german} option and negative tic -% mark values} +% \changes{v1.01}{1998/06/25}{Fixed bug with \texttt{german} option and +% negative tic mark values} +% \changes{v1.02}{1998/07/08}{Added options \texttt{gnuplot35} and +% \texttt{gnuplot36beta} to allow output of +% syntax of \GP{}-3.5.\\ +% Added numbering of \GP{} files to allow multiple +% \texttt{egpfile} environments w/o explicitly +% defined names in one document.} % % \MakeShortVerb{\|} % @@ -70,7 +76,10 @@ % enable the user to let \GP{} do calculations and insert the result values % into the generated output. % \end{abstract} -% +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \begin{multicols}{2} +% \tableofcontents +% \end{multicols} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \vfill % \section*{Copying} @@ -90,7 +99,7 @@ % Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% \newpage +% % \def\topfraction{0.9} % \def\bottomfraction{0.9} % \def\textfraction{0.1} @@ -130,13 +139,14 @@ % In addition to the image inclusion commands \EGP{} provides the user with % commands to let \GP{} do calculations and include the results into the % document. Unfortunately these features are implemented with the UN*X text utils -% and so they are only usable if these are installed on the system. Since the +% and so they are only usable if these are installed on the system. If the user +% does not provide a name for the \GP{} file the % names for the PostScript and the result values files are built by appending -% the figure/calculation number and a three letter extension (|.eps| or |.val|) -% to |\jobname| the user has to choose a |\jobname| that is short enough so -% that the generated filenames fit into the conventions of certain operating -% systems. -% +% the number of the \GP{} file, the figure/calculation number and a three +% letter extension (|.eps| or |.val|) to |\jobname|. So the user has to +% choose a |\jobname| that is short enough so that the generated +% filenames fit into the conventions of certain operating systems. +% % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \section{Usage} % @@ -145,13 +155,28 @@ % \label{sec:options} % % \DescribeMacro{Options} -% Besides the options of the |graphicx| package the option |german| is -% recognized by the \EGP{} package. -% -% If |german| is specified the calculated values and the tic labels of the -% diagrams are changed to show a `,' as decimal point character. The default is -% a `.'. This feature is also implemented with UN*X text utils and is only -% available if they are installed on the system. +% Besides the options of the |graphicx| package \EGP{} recognizes the following +% options: +% \begin{description} +% \item[|german|:] If |german| is specified the calculated values and the tic labels of the +% diagrams are changed to show a `,' as decimal point +% character. The default is a `.'. This feature is also +% implemented with UN*X text utils and is only available if +% they are installed on the system. +% \item[|gnuplot35|:] If |gnuplot35|~(default) is specified the \GP{} commands +% generated by |egplot| will be compatible with the syntax +% of the official \GP{} version~3.5. Of course the user +% has to look for the right syntax in his \GP{} code +% himself. Special care has to be taken for the +% |\egpprelude{|\dots|}| and the |\egpfigepilog{|\dots|}| +% commands since these are used to implement the missing +% |reset| command of \GP{}-3.5. +% \item[|gnuplot36beta|:] If |gnuplot36beta| is specified the \GP{} commands +% generated by |egplot| will use the features of the +% beta version \GP{}~3.6beta. As mentioned above the user +% has to look for the right syntax in his \GP{} code +% himself. +% \end{description} % % \subsection{Commands and Environments} % \label{sec:commands} @@ -260,11 +285,13 @@ % This command can be used for e.g. |replot|ting the figure to the screen or % |reset|ing to the defaults after every figure. % -% The default is: +% The defaults are as follows: % \begin{quote} -% \qquad{}|reset| +% \begin{tabular}{lll} +% Option: & none, |gnuplot35| & |gnuplot36beta| \\ +% & |load "reset.gp"| & |reset| \\ +% \end{tabular} % \end{quote} -% % % \subsubsection{Calculating} % \label{sec:calculations} @@ -307,8 +334,9 @@ % \label{sec:procedure} % % After \LaTeX{} has done it's job for the first time you have to invoke \GP{} -% on the generated file~(default: |\jobname.gp|). Then another \LaTeX{} run is -% necessary to include the figures and the results into the output. +% on the generated file~(default: |\jobnameX.gp|, where |X| is a number). Then +% another \LaTeX{} run is necessary to include the figures and the results into +% the output. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \subsection{Examples} % \label{sec:examples} @@ -414,7 +442,8 @@ % \begin{macrocode} $f(\pi/4)=\egpshowval[sin_quarter_pi]{sin(pi/4)}$ % \end{macrocode} -% and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. +% and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}\footnote{I +% couldn't figure out how to remove the trailing space, yet. Any hints ?}$ % \begin{macrocode} and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. \end{egpfile} @@ -481,10 +510,10 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. % % \begin{macrocode} %<*style> -\def\fileversion{v1.01} +\def\fileversion{v1.02a} \NeedsTeXFormat{LaTeX2e} \gdef\filename{egplot.sty}% -\gdef\filedate{1998/06/20}% +\gdef\filedate{1998/07/08}% \gdef\filemaintainer{Axel Probst}% % \end{macrocode} % @@ -493,19 +522,32 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. \ProvidesPackage{egplot}[\filedate\space\fileversion\space Encapsulated gnuplot LaTeX Package (\filemaintainer)] % \end{macrocode} -% Every option we don't understand is sent down to |graphicx|: +% +% Load the required packages: % \begin{macrocode} -\RequirePackage{graphicx}[1994/12/15] \RequirePackage{verbatim} \RequirePackage{ifthen} +% \end{macrocode} % +% Now the options are specified: +% \begin{macrocode} \newboolean{egp@german} \setboolean{egp@german}{false} \DeclareOption{german}{% \setboolean{egp@german}{true}} +\newboolean{egp@oldgp} +\setboolean{egp@oldgp}{true} +\DeclareOption{gnuplot35}{% + \setboolean{egp@oldgp}{true}} +\DeclareOption{gnuplot36beta}{% + \setboolean{egp@oldgp}{false}} +% \end{macrocode} % +% Every option we don't understand is sent down to |graphicx|: +% \begin{macrocode} \DeclareOption*{\PassOptionsToPackage{\CurrentOption}{graphicx}} \ProcessOptions +\RequirePackage{graphicx}[1994/12/15] % \end{macrocode} % % \begin{macro}{\egpwrite} @@ -527,14 +569,20 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. % This environment encloses each \GP{} input file. The single optional % argument gives the name of the file. % \begin{macrocode} -\newcommand{\egpfile}[1][\jobname]{% +\newcounter{egpfilenum} % 1998-03-07 +\setcounter{egpfilenum}{0} % 1998-03-07 +\newcommand{\egpfile}[1][\jobname\theegpfilenum_]{% \def\theegpfile{#1}% + \ifthenelse{\equal{\theegpfile}{\jobname\theegpfilenum_}}{% + \stepcounter{egpfilenum}% + \def\theegpfilename{\jobname\theegpfilenum.gp}}{% + \def\theegpfilename{\theegpfile.gp}} % \end{macrocode} % Open the \GP{} file. % \begin{macrocode} \if@egpio - \immediate\openout\@outegp=\theegpfile.gp\relax - \egpwrite{\egpcomment\space \theegpfile.gp -- % + \immediate\openout\@outegp=\theegpfilename\relax + \egpwrite{\egpcomment\space \theegpfilename -- % do not edit, generated automatically by \jobname.tex^^J} % \end{macrocode} % append the defined prelude and write it out: @@ -622,20 +670,26 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. % \begin{macrocode} \def\egp@{% \egp@start% - \egpwrite{print 'generating picture ---- \theegpfile\theegpfig.eps'^^J% - set output '\theegpfile\theegpfig.eps'^^J} + \ifthenelse{\boolean{egp@oldgp}} + {\egpwrite{\egpcomment\space --- \theegpfile\theegpfig.eps ---}} + {\egpwrite{print 'generating picture ---- \theegpfile\theegpfig.eps'}} + \egpwrite{set output '\theegpfile\theegpfig.eps'} \egp@includegraphics{\theegpfile}{\theegpfig}% \egpcmds} \def\egp@x#1{% - \egp@start% - \egpwrite{print 'generating picture ---- \theegpfile\theegpfig.eps'^^J% - set output '\theegpfile\theegpfig.eps'^^J} - \egp@includegraphicx[#1]{\theegpfile}{\theegpfig}% - \egpcmds} + \egp@start% + \ifthenelse{\boolean{egp@oldgp}} + {\egpwrite{\egpcomment\space --- \theegpfile\theegpfig.eps ---}} + {\egpwrite{print 'generating picture ---- \theegpfile\theegpfig.eps'}} + \egpwrite{set output '\theegpfile\theegpfig.eps'} + \egp@includegraphicx[#1]{\theegpfile}{\theegpfig}% + \egpcmds} \def\egp@def{% \egp@start% - \egpwrite{print 'generating picture ---- \theegpfile\theegpfig.eps'^^J% - set output '\theegpfile\theegpfig.eps'^^J} + \ifthenelse{\boolean{egp@oldgp}} + {\egpwrite{\egpcomment\space --- \theegpfile\theegpfig.eps ---}} + {\egpwrite{print 'generating picture ---- \theegpfile\theegpfig.eps'}} + \egpwrite{set output '\theegpfile\theegpfig.eps'} \egpcmds} % \end{macrocode} % \end{macro} @@ -668,7 +722,7 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. \def\egp@checkfile{% \ifx\theegpfile\relax \errhelp={Outside an egpfile environment, I have no clue as to where^^J% - the GNUPlot commands should go. I will use egpdefault.gp^^J% + the gnuplot commands should go. I will use egpdefault.gp^^J% for this graph, but you'd better fix your code!}% \errmessage{I detected a egp environment outside of egpfile}% \egpfile[egpdefault] @@ -686,7 +740,7 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. {\includegraphics{#1#2.eps}}% {\typeout{% egp: File #1#2.eps\space not found:^^J% - egp: Process #1.gp with GNUPlot and then % + egp: Process \theegpfilename\space with gnuplot and then % reprocess this file.}}} \newcommand{\egp@includegraphicx}[3][scale=1]{% \leavevmode @@ -694,7 +748,7 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. {\includegraphics[#1]{#2#3.eps}}% {\typeout{% egp: File #2#3.eps\space not found:^^J% - egp: Process #2.gp with GNUPlot and then % + egp: Process \theegpfilename\space with gnuplot and then % reprocess this file.}}} % \end{macrocode} % \end{macro} @@ -733,13 +787,15 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. \def\endegp{% \endegpcmds \ifthenelse{\boolean{egp@german}}{% - \egpwrite{!sed -e '/[0-9]*[.][0-9]*)\ .show/s/[.]/,/' \theegpfile\theegpfig.eps >\theegpfile\theegpfig.tmp^^J} + \egpwrite{!sed -e '/[0-9]*[.][0-9]*)\ .show/s/[.]/,/' % + \theegpfile\theegpfig.eps >\theegpfile\theegpfig.tmp} \egpwrite{!cp \theegpfile\theegpfig.tmp \theegpfile\theegpfig.eps} \egpwrite{!rm -f \theegpfile\theegpfig.tmp}} {} \expandafter\ifx\expandafter*\the\egp@figepilog*\else \egpwrite{\the\egp@figepilog}% - \fi} + \fi + \egpwrite{}} \def\endegpx{\endegp} \def\endegpdef{\endegp} % \end{macrocode} @@ -792,11 +848,13 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. \egp@checkfile \global\expandafter\advance\csname c@egpcalc\endcsname \@ne \egpc@@def{\egp@@name}% - \egpwrite{print 'calculating value ----- \theegpfile\theegpcalc.val'^^J% - set term table; set output '\theegpfile\theegpcalc.tmp'^^J% + \ifthenelse{\boolean{egp@oldgp}} + {\egpwrite{\egpcomment\space --- \theegpfile\theegpcalc.val ---}} + {\egpwrite{print 'calculating value ----- \theegpfile\theegpcalc.val'}} + \egpwrite{set term table; set output '\theegpfile\theegpcalc.tmp'^^J% set samples 2^^J% set zero 0^^J% - plot [0:0] \egp@expression^^J} + plot [0:0] \egp@expression} % \end{macrocode} % % Here intensive usage of UN*X text utils is made to extract the calculated @@ -811,10 +869,16 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. % % \begin{macrocode} \ifthenelse{\boolean{egp@german}}{% - \egpwrite{!tail -3 \theegpfile\theegpcalc.tmp | head -1 | cut -f 2 -d' ' | sed -e 's/[.]/{,}/' >\theegpfile\theegpcalc.val^^J}} - {\egpwrite{!tail -3 \theegpfile\theegpcalc.tmp | head -1 | cut -f 2 -d' ' >\theegpfile\theegpcalc.val^^J}} - \egpwrite{!rm -f \theegpfile\theegpcalc.tmp^^J% - reset^^J}} + \egpwrite{!tail -3 \theegpfile\theegpcalc.tmp | head -1 |% + cut -f 2 -d' ' | sed -e 's/[.]/{,}/' % + >\theegpfile\theegpcalc.val}} + {\egpwrite{!tail -3 \theegpfile\theegpcalc.tmp | head -1 |% + cut -f 2 -d' ' >\theegpfile\theegpcalc.val}} + \egpwrite{!rm -f \theegpfile\theegpcalc.tmp} +% \ifthenelse{\boolean{egp@oldgp}}{% +% \egpwrite{load "reset.gp"}}{% +% \egpwrite{reset}} + \egpwrite{}} % \end{macrocode} % \end{macro} % @@ -833,11 +897,12 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. % avoid this but I don't know how. Any wizards out there? % \begin{macrocode} \newcommand{\egp@includevalue}[2]{% +% \InputIfFileExists{#1#2.val}{\ignorespaces}% \IfFileExists{#1#2.val}% {\input{#1#2.val}}% {\typeout{% egp: File #1#2.val\space not found:^^J% - egp: Process #1#2.gp with GNUPlot and then % + egp: Process \theegpfilename\space with gnuplot and then % reprocess this file.}}} % \end{macrocode} % \end{macro} @@ -847,8 +912,8 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. % \begin{macrocode} \newcommand{\egpshowval}[2][*]{% \def\egp@@name{#1}% - \def\egp@expression{#2} - \egp@calc + \def\egp@expression{#2}% + \egp@calc% \egp@includevalue{\theegpfile}{\theegpcalc}} % \end{macrocode} % \end{macro} @@ -870,10 +935,20 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. % \end{macrocode} % \end{macro} % +% Define the file prelude: +% If the user specifies that the official version \GP{}-3.5 is used a file with +% the name |reset.gp| is generated at the start of the \GP{} run. Wherever a +% |reset| is done in the \GP{}-3.6 file this file is |load|ed instead. % \begin{macrocode} -\egpfigprelude{set terminal postscript eps monochrome dashed "Helvetica" 17} +\ifthenelse{\boolean{egp@oldgp}} + {\egpprelude{save "reset.gp"}} + {\relax} % \end{macrocode} % +% Define the default prelude for the figures: +% \begin{macrocode} +\egpfigprelude{set terminal postscript eps monochrome dashed "Helvetica" 17} +% \end{macrocode} % To get e.g. Computer Modern as font for the axis tics you can specify the % name of a CM-Type-1 font file as fontname option of the \GP{} postscript % terminal. @@ -885,12 +960,20 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. % \end{quote} % To see the correct font in the Postscript file you have to use the % appropriate fontmap when calling dvips or you have to download the file -% |cmss17.pfb| as header file. The error message of dvips can then be ignored. +% |cmss17.pfb| as header file. The error message of dvips can then be +% ignored.\\ +% +% % % Reset all options to their default values after every |egp|, |egpx| and % |egpdef| environment. +% As mentioned above the file |reset.gp| that is generated at the start of the +% \GP{} run is |load|ed to implement the new |reset| command of \GP{}-3.6beta +% if the user didn't specify |gnuplot36beta| as package option. % \begin{macrocode} -\egpfigepilog{reset} +\ifthenelse{\boolean{egp@oldgp}}{% + \egpfigepilog{load "reset.gp"}}{% + \egpfigepilog{reset}} % \end{macrocode} % % You can configure \EGP{} by putting the appropriate commands in the file @@ -913,6 +996,7 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. %<*driver> \documentclass[a4paper]{article} \usepackage{doc} +\usepackage{multicol} % \end{macrocode} % % \begin{macrocode} @@ -927,7 +1011,8 @@ and get $\frac{\sqrt{2}}{2}=\fbox{\egpuseval{sin_quarter_pi}}$. % \end{macrocode} % % \begin{macrocode} -\usepackage{egplot} +\usepackage[gnuplot35]{egplot} +%\usepackage[gnuplot36beta]{egplot} % \end{macrocode} % \begin{macrocode} \setlength{\parindent}{0pt} diff --git a/Master/texmf-dist/source/latex/egplot/egpman.drv b/Master/texmf-dist/source/latex/egplot/egpman.drv index 538540e8ea0..e7c5a08b24f 100644 --- a/Master/texmf-dist/source/latex/egplot/egpman.drv +++ b/Master/texmf-dist/source/latex/egplot/egpman.drv @@ -32,7 +32,7 @@ %% Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% \CheckSum{376} +%% \CheckSum{449} %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z @@ -52,6 +52,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \documentclass[a4paper]{article} \usepackage{doc} +\usepackage{multicol} \IfFileExists{mflogo.sty}% {\usepackage{mflogo}% \def\GP{\textsf{gnuplot}}% @@ -60,7 +61,7 @@ {\def\GP{\textsf{gnuplot}}% \def\EMP{\textsf{EMP}}% \def\EGP{\textsf{egplot}}} -\usepackage{egplot} +\usepackage[gnuplot35]{egplot} \setlength{\parindent}{0pt} \def\manindex#1{\SortIndex{#1}{#1}} \OnlyDescription diff --git a/Master/texmf-dist/source/latex/filecontents/filecontents.dtx b/Master/texmf-dist/source/latex/filecontents/filecontents.dtx index 730a9615d3c..09c421bc605 100644 --- a/Master/texmf-dist/source/latex/filecontents/filecontents.dtx +++ b/Master/texmf-dist/source/latex/filecontents/filecontents.dtx @@ -1,15 +1,17 @@ % \iffalse meta-comment % -% Copyright (C) 2004 Scott Pakin <scott+fc@pakin.org> +% Copyright (C) 2006 Scott Pakin <scott+fc@pakin.org> % ------------------------------------------------------- % % This package may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either version 1.2 +% conditions of the LaTeX Project Public License, either version 1.3b % 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. +% +% and version 1.3b or later is part of all distributions of LaTeX +% version 2006/01/07 or later. % % \fi % @@ -20,11 +22,12 @@ %<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01] %<package>\ProvidesPackage{filecontents} %<*package> - [2004/08/16 v1.1 Create an external file from within a LaTeX document] + [2006/03/11 v1.1a Create an external file from within a LaTeX document] %</package> % %<*driver> \documentclass{ltxdoc} +\input{filecontents.inc} \EnableCrossrefs \CodelineIndex \RecordChanges @@ -63,6 +66,9 @@ % \maketitle % % \changes{v1.0}{2001/07/31}{Initial version} +% \changes{v1.1a}{2006/03/11}{% +% Clarified/corrected the \texttt{\string\string\string\documentclass} +% restriction as per Robin Fairbairns's suggestion} % % ^^A The following were copied verbatim from source2e.tex. % \DoNotIndex{\def,\long,\edef,\xdef,\gdef,\let,\global} @@ -84,10 +90,10 @@ % % ^^A The following are specific to filecontents.dtx. % \DoNotIndex{\@currenvir,\@gobble,\@gobblefour,\@ifundefined,\@makeother} -% \DoNotIndex{\@undefined,\day,\do,\E,\end,\I,\if@tempswa,\L,\LaTeX,\loop} -% \DoNotIndex{\MessageBreak,\month,\newenvironment,\number,\repeat} -% \DoNotIndex{\reserved@b,\reserved@c,\two@digits,\year} -% \DoNotIndex{\*,\^} +% \DoNotIndex{\@undefined,\active,\chardef,\day,\do,\dospecials,\E,\end,\I} +% \DoNotIndex{\if@tempswa,\L,\LaTeX,\loop,\MessageBreak,\month} +% \DoNotIndex{\newenvironment,\number,\repeat,\reserved@b,\reserved@c} +% \DoNotIndex{\two@digits,\year,\*,\^} % % ^^A Define some commands to help delineate my changes. % \newcommand{\startfcchanges}{^^A @@ -145,18 +151,26 @@ % into the file. % \end{quotation} % +% \noindent +% (The comment about |filecontents| being valid only before +% |\documentclass| is, in fact, untrue. |filecontents| is allowed +% anywhere in the document's preamble.) +% +% \bigskip +% % The \textsf{filecontents} package provides a hacked-up version of the % |filecontents| and |filecontents*| environments that lifts the two % restrictions stated above, namely that existing files are never % overwritten and that |filecontents| must be used before the -% |\documentclass| declaration. \textsf{filecontents} is therefore a -% more convenient way to write external files from within a \LaTeX\ -% document than is provided by default by the \LaTeXe\ kernel. +% |\documentclass| declaration (really, the |\begin{document}|). +% \textsf{filecontents} is therefore a more convenient way to write +% external files from within a \LaTeX\ document than is provided by +% default by the \LaTeXe\ kernel. % % % \paragraph{Sample usage} % |filecontents| works much like |verbatim|, except that it takes -% a (mandatory) filename argument: +% a mandatory filename argument: % % \begin{verbatim} % \begin{filecontents}{myfile.tex} @@ -184,16 +198,16 @@ % |filecontents*| is therefore useful for writing non-\LaTeX\ files such as % Encapsulated PostScript files. % -% If you use the \textsf{ltxtable} package, you may find +% If you use the \textsf{ltxtable} package you may find % \textsf{filecontents} particularly useful. \textsf{ltxtable} is a % crude conglomeration of \textsf{longtable}, which allows tables to % cross page boundaries, and \textsf{tabularx}, which enables tables to % stretch to a specified width. \textsf{ltxtable}'s interface is a bit % cumbersome, however; it requires that the |longtable| environment be -% contained in a separate file. With the \textsf{filecontents} package, -% you can create this file right before the |\LTXtable| invocation, -% which is far more convenient than having to place the table manually -% within a separate file. +% contained in a separate file. With the \textsf{filecontents} package +% you can create this file right before the |\LTXtable| invocation---a +% far more convenient alternative than having to manually place the +% table within a separate file. % % % \StopEventually{^^A @@ -237,8 +251,8 @@ % \end{macrocode} % % \startfcchanges -% In the original code, a pre-existing file would not be overwritten. -% In the new version, the file existence check is used solely to decide +% In the original code a pre-existing file would not be overwritten. +% In the new version the file existence check is used solely to decide % whether to output ``\texttt{Writing file `\textrm{\meta{filename}}'}'' % or ``\texttt{Overwriting file `\textrm{\meta{filename}}'}''. Control % flow then always falls through to what used to be the |\ifeof| case diff --git a/Master/texmf-dist/source/latex/filecontents/filecontents.ins b/Master/texmf-dist/source/latex/filecontents/filecontents.ins index a88cd8a68d3..5800b1bfd20 100644 --- a/Master/texmf-dist/source/latex/filecontents/filecontents.ins +++ b/Master/texmf-dist/source/latex/filecontents/filecontents.ins @@ -3,16 +3,18 @@ %% driver files from the doc files in this package when run through %% LaTeX or TeX. %% -%% Copyright (C) 2004 Scott Pakin <scott+fc@pakin.org> +%% Copyright (C) 2006 Scott Pakin <scott+fc@pakin.org> %% ------------------------------------------------------- %% -%% This package 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 +%% This package may be distributed and/or modified under the conditions +%% of the LaTeX Project Public License, either version 1.3b 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. +%% +%% and version 1.3b or later is part of all distributions of LaTeX +%% version 2006/01/07 or later. %% %% --------------- start of docstrip commands ------------------ %% @@ -26,16 +28,18 @@ This is a generated file. -Copyright (C) 2004 Scott Pakin <scott+fc@pakin.org> +Copyright (C) 2006 Scott Pakin <scott+fc@pakin.org> ------------------------------------------------------- -This package 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 +This package may be distributed and/or modified under the conditions +of the LaTeX Project Public License, either version 1.3b 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. + +and version 1.3b or later is part of all distributions of LaTeX +version 2006/01/07 or later. \endpreamble diff --git a/Master/texmf-dist/source/latex/footbib/footbib.dtx b/Master/texmf-dist/source/latex/footbib/footbib.dtx index 6b5cc08abe1..dfe812c8255 100644 --- a/Master/texmf-dist/source/latex/footbib/footbib.dtx +++ b/Master/texmf-dist/source/latex/footbib/footbib.dtx @@ -1,12 +1,24 @@ % \iffalse -%% File: footbib.dtx Copyright (C) 1997 Eric Domenjoud +%% +%% File: footbib.dtx Copyright (C) 1997-2005 Eric Domenjoud %% %% Eric Domenjoud, %% CRIN/CNRS & INRIA Lorraine %% E-mail: Eric.Domenjoud@loria.fr %% -\def\fileversion{2.0.1} -\def\filedate{1999/05/06} +% 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 footbib.dtx and footbib.ins + + +\def\fileversion{2.0.4} +\def\filedate{2004/06/04} %<*driver> %% %% To produce the documentation, do the following: @@ -40,7 +52,7 @@ %</driver> % \fi % -% \CheckSum{2050} +% \CheckSum{2068} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -102,7 +114,7 @@ % \index{#1s:\levelchar{\protect\ttfamily#2}\encapchar usage}\@esphack} % \newcommand\SpecialMainNonMacroIndex[2]{^^A % \@bsphack\special@index{#2\actualchar{\string\ttfamily\space#2} -% (#1)\encapchar main}^^A +% (#1)\encapchar main}^^A % \index{#1s:\levelchar{\protect\ttfamily#2}\encapchar main}\@esphack} % \newcommand*\NonM@cro@[1]{\m@cro@\iffalse{#1}^^A % \let\SpecialMainEnvIndex\fb@tmp\ignorespaces} @@ -138,14 +150,14 @@ % \newcommand\FbIndex{\Fb@Index\SpecialIndex} % \newcommand\FbMainIndex{\Fb@Index\SpecialMainIndex} % \newenvironment{FbPatch}[1] -% {\vskip-\MacrocodeTopsep$\m@th \setbox\z@\hbox{$\braceld$}^^A +% {\vskip-\MacrocodeTopsep$\setbox\z@\hbox{$\braceld\m@th$}^^A % \braceld\leaders\vrule \@height\ht\z@ \@depth\z@\hfill % \lower.5ex\hbox{\kern1em{\tt footbib} #1\kern1em}^^A -% \leaders\vrule\@height\ht\z@\@depth\z@\hfill\bracerd$^^A -% \vskip-\MacrocodeTopsep} -% {\vskip-\MacrocodeTopsep$\m@th \setbox\z@\hbox{$\braceld$}^^A -% \bracelu\leaders\vrule\@height\ht\z@\@depth\z@\hfill\braceru$^^A -% \vskip-\MacrocodeTopsep} +% \leaders\vrule\@height\ht\z@\@depth\z@\hfill\bracerd\m@th$^^A +% \nobreak\vskip-\MacrocodeTopsep\nobreak} +% {\nobreak\vskip-\MacrocodeTopsep$\setbox\z@\hbox{$\braceld\m@th$}^^A +% \bracelu\leaders\vrule\@height\ht\z@\@depth\z@\hfill\braceru\m@th$^^A +% \nobreak\vskip-\MacrocodeTopsep} %\makeatother % % \newcommand\LATEX{({\let\TeX\relax\LaTeX})\TeX} @@ -184,7 +196,7 @@ % the unit. % % The mechanism used to put a reference only once in each citation -% unit may require several runs of \LaTeX\ before the references find +% unit may require several runs of \LaTeX\ (usually at least two) before the references find % their exact place. If necessary, \LaTeX\ will issue, near the end % of the document, a warning saying % \begin{center} @@ -194,10 +206,17 @@ % Using |footbib| in a document \meta{doc}|.tex| produces a file % \meta{doc}|.fb.aux|. One must pass the argument \meta{doc}|.fb| to \BibTeX\ % to produce the bibliography which will be put in the file -% \meta{doc}|.fb.bbl|. +% \meta{doc}|.fb.bbl|. The exact sequence of commands is +% \begin{trivlist}\leftskip=\leftmargini\parindent=0pt\item[] +% |latex|~\meta{doc}\\ +% |bibtex|~\meta{doc}|.fb|\\ +% |latex|~\meta{doc}\\ +% |latex|~\meta{doc}\\ +% \dots +% \end{trivlist} % % \begin{description} -% \item[Note:] This name might cause some +% \item[Note:] The name \meta{doc}|.fb.aux| might cause some % problem on systems which do not allow a double extension in % a file name or put a limit on the length of file names. % A user command is provided to change it (see section~\ref{sec:custom}). @@ -400,7 +419,7 @@ % \item[] \DescribeMacro{\footcitelabel}^^A % \DescribeMacro{\putfootcitelabel}^^A % \DescribeMacro{\footcitelistformat}^^A -% The list of citations in the text may not be typeseted in +% The list of citations in the text may not be typeset in % one step as done by the |\cite| command of \LaTeX. % The reason is that the command which creates the text of % the foot reference must be inserted after each citation. @@ -445,7 +464,7 @@ % |\putfootcitelabel{\footcitelabel{|label $n$|}}|\\ % \meta{insertion of the text of reference $n$}\\ % |\putfootcitelabel{|\meta{end of list}|}| -% \end{trivlist} +% \end{trivlist} % % Each component of the list may be redefined as follows: % \begin{trivlist}\leftskip=\leftmargini\parindent=0pt\item[] @@ -511,7 +530,7 @@ % may be redefined by |\renewcommand*\footreflabel[1]{|\ldots|}|. % \item[] \DescribeMacro{\footrefstyle} % The label and the text of the reference at the bottom of -% the page are typeseted in the style defined by the command +% the page are typeset in the style defined by the command % |\footrefstyle| which may be redefined in the preamble by % |\renewcommad\footrefstyle{|\dots|}|. The default definition % is |\normalfont\footnotesize|. @@ -636,7 +655,8 @@ \@addtocurcol\else\@reinserts\@addmarginpar\fi}\@latexbug\ifnum \outputpenalty<\z@\if@nobreak\nobreak\else\addpenalty\interlinepenalty \fi\fi\fi\fi} -\@tempa\@doclearpage{\ifvoid\footins\setbox\@tempboxa\vsplit\@cclv to\z@ +\@tempa\@doclearpage{\ifvoid\footins\ifvbox\@kludgeins{\setbox\@tempboxa + \box\@kludgeins}\fi\setbox\@tempboxa\vsplit\@cclv to\z@ \unvbox\@tempboxa\setbox\@tempboxa\box\@cclv\xdef\@deferlist{\@toplist \@botlist\@deferlist}\global\let\@toplist\@empty\global\let\@botlist \@empty\global\@colroom\@colht\ifx\@currlist\@empty\else\@latexerr @@ -650,14 +670,14 @@ \@opcol\clearpage\fi} \@tempa\@makecol{\ifvoid\footins\setbox\@outputbox\box\@cclv\else\setbox \@outputbox\vbox{\boxmaxdepth\@maxdepth\@tempdima\dp\@cclv\unvbox\@cclv - \vskip-\@tempdima\vskip\skip\footins\color@begingroup\normalcolor - \footnoterule\unvbox\footins\color@endgroup}\fi\xdef\@freelist{\@freelist + \vskip\skip\footins\color@begingroup\normalcolor\footnoterule\unvbox + \footins\color@endgroup}\fi\let\@elt\relax\xdef\@freelist{\@freelist \@midlist}\global\let\@midlist\@empty\@combinefloats\ifvbox\@kludgeins \@makespecialcolbox\else\setbox\@outputbox\vbox to\@colht{\@texttop\dimen@ \dp\@outputbox\unvbox\@outputbox\vskip-\dimen@\@textbottom}\fi\global - \maxdepth\@maxdepth}\@tempa\@reinserts{\ifvoid\footins\else\insert\footins - {\unvbox\footins}\fi\ifvbox\@kludgeins\insert\@kludgeins{\unvbox\@kludgeins - }\fi} + \maxdepth\@maxdepth} +\@tempa\@reinserts{\ifvoid\footins\else\insert\footins{\unvbox\footins}\fi + \ifvbox\@kludgeins\insert\@kludgeins{\unvbox\@kludgeins}\fi} \fi \if@tempswa \PackageError{footbib}{the output routine of LaTeX changed} @@ -741,8 +761,10 @@ % \end{macro} % % \subsubsection{Declaration and processing of options} +% {\MacroFont % \begin{option}{oneside} % \begin{option}{twoside} +% \leavevmode\vspace{-1.2\baselineskip} % \begin{macrocode} \DeclareOption{oneside}{\fb@twosidefalse} \DeclareOption{twoside}{\fb@twosidetrue} @@ -750,6 +772,7 @@ % \end{option} % \end{option} % \begin{option}{firstcite} +% \leavevmode\vspace{-1.2\baselineskip} % \begin{macrocode} \DeclareOption{firstcite}{\fb@firstcitetrue} \DeclareOption{firstcite(page)}{\fb@firstcitetrue\fb@pagenumtrue} @@ -762,6 +785,7 @@ % \end{option} % \begin{option}{citeonce} % \begin{option}{citeonce*} +% \leavevmode\vspace{-1.2\baselineskip} % \begin{macrocode} \DeclareOption{citeonce}{\fb@citeoncetrue} \DeclareOption{citeonce(page)}{\fb@pagecitetrue} @@ -782,6 +806,7 @@ % \begin{option}{crossrefs} % \begin{option}{crossrefs*} % \begin{option}{nocrossrefs} +% \leavevmode\vspace{-1.2\baselineskip} % \begin{macrocode} \DeclareOption{crossrefs}{\fb@crossrefstrue\fb@xcrossrefstrue} \DeclareOption{crossrefs*}{\fb@crossrefstrue\fb@xcrossrefsfalse} @@ -793,6 +818,7 @@ % % \begin{option}{split} % \begin{option}{nosplit} +% \leavevmode\vspace{-1.2\baselineskip} % \begin{macrocode} \DeclareOption{split}{\fb@nosplitfalse} \DeclareOption{nosplit}{\fb@nosplittrue} @@ -815,6 +841,7 @@ \let\fb@nosplittrue\@undefined \let\fb@nosplitfalse\@undefined \let\fb@checksec\@undefined % \end{macrocode} +% } % % \begin{macro}{\chapter} % \begin{macro}{\part} @@ -968,7 +995,7 @@ % so that their expansion produces the same character with a catcode % 12 (other). Then an expansion of the key yields a % \emph{verbatim} copy of it. This mechanism allows the list of keys -% to contain itself commands which expands in the normal way. +% to contain itself commands which expand in the normal way. % All characters which may both be active in the document and appear in the % key of a reference must be treated in this way. Since \BibTeX\ allows almost % any character in a key, it is safer to consider all @@ -1010,7 +1037,7 @@ % citations and as input to \BibTeX. % The commands |\footbibliographystyle| and |\footbibliography| do an % immediate |\write| to this file. However, since these commands may -% be used in the preamble, it may happen that this file is not yet open for +% be used in the preamble, this file might not yet be open for % writing at the time they are used. We must wait until the end of the % preamble before opening the auxiliary file to give the user a chance to % define its name with |\footbibliographyname|. Therefore, we define the @@ -2088,6 +2115,9 @@ % \end{macrocode} % \end{FbPatch} % \begin{macrocode} + \ifvbox\@kludgeins + {\setbox \@tempboxa \box \@kludgeins}% + \fi \setbox\@tempboxa\vsplit\@cclv to\z@ \unvbox\@tempboxa \setbox\@tempboxa\box\@cclv \xdef\@deferlist{\@toplist\@botlist\@deferlist}% @@ -2178,6 +2208,7 @@ % \begin{macrocode} }% \fi + \let\@elt\relax \xdef\@freelist{\@freelist\@midlist}% \global \let \@midlist \@empty \@combinefloats diff --git a/Master/texmf-dist/source/latex/footbib/footbib.ins b/Master/texmf-dist/source/latex/footbib/footbib.ins index 6f5d166ff7a..b8a775220e4 100644 --- a/Master/texmf-dist/source/latex/footbib/footbib.ins +++ b/Master/texmf-dist/source/latex/footbib/footbib.ins @@ -1,9 +1,19 @@ -%% File: footbib.ins Copyright (C) 1997 Eric Domenjoud +%% File: footbib.ins Copyright (C) 1997-2003 Eric Domenjoud %% %% Eric Domenjoud, %% CRIN/CNRS & INRIA Lorraine %% E-mail: Eric.Domenjoud@loria.fr %% +%% 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 footbib.dtx and footbib.ins +%% %% To produce the LaTeX package `footbib.sty' process this file with TeX \def\batchfile{footbib.ins} |