summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Master/texmf-dist/doc/latex/protocol/README3
-rw-r--r--Master/texmf-dist/doc/latex/protocol/protest.tex3
-rw-r--r--Master/texmf-dist/doc/latex/protocol/protocol.pdfbin283897 -> 319131 bytes
-rw-r--r--Master/texmf-dist/source/latex/protocol/protocol.dtx51
-rw-r--r--Master/texmf-dist/source/latex/protocol/protocol.ins4
-rw-r--r--Master/texmf-dist/tex/latex/protocol/protocol.cls29
-rw-r--r--Master/texmf-dist/tex/texinfo/texinfo.tex438
7 files changed, 288 insertions, 240 deletions
diff --git a/Master/texmf-dist/doc/latex/protocol/README b/Master/texmf-dist/doc/latex/protocol/README
index 65bcc99ac63..6fd597a367b 100644
--- a/Master/texmf-dist/doc/latex/protocol/README
+++ b/Master/texmf-dist/doc/latex/protocol/README
@@ -13,7 +13,7 @@ The files in this directory (protocol distribution) are
Copyright (C) 1997 Projektgruppe ACIT, Lehrstuhl VII,
Fachbereich Informatik, Universit"at Dortmund
- 1997-1999,2006,2009 Thomas Leineweber (protocol@tleine.de)
+ 1997-1999,2006,2009-2010 Thomas Leineweber (protocol@tleine.de)
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either version 1.3
@@ -84,3 +84,4 @@ K.D. Braune and R. Gussmann
Boris Majowski made a better implementation for the next meeting
Ludger Humbert and Christoffer Timm showed me an error in the next meeting
logic.
+Johannes Pieper had many nice enhancement requests.
diff --git a/Master/texmf-dist/doc/latex/protocol/protest.tex b/Master/texmf-dist/doc/latex/protocol/protest.tex
index 10f75909839..e44c504564c 100644
--- a/Master/texmf-dist/doc/latex/protocol/protest.tex
+++ b/Master/texmf-dist/doc/latex/protocol/protest.tex
@@ -1,4 +1,4 @@
-\documentclass[a4paper]{protocol}
+\documentclass[signatures,a4paper]{protocol}
\usepackage{german}
\usepackage[T1]{fontenc}
@@ -7,6 +7,7 @@
\groupname{Arbeitsgruppe 08/15}
\chair{Lothar Laber}
\writer{Siggi Schreiber}
+\place{woauchimmer}
\date{9. Juni 1997}
\begintime{9:30}
\endtime{10:30}
diff --git a/Master/texmf-dist/doc/latex/protocol/protocol.pdf b/Master/texmf-dist/doc/latex/protocol/protocol.pdf
index d043edc3cef..d857423aac8 100644
--- a/Master/texmf-dist/doc/latex/protocol/protocol.pdf
+++ b/Master/texmf-dist/doc/latex/protocol/protocol.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/protocol/protocol.dtx b/Master/texmf-dist/source/latex/protocol/protocol.dtx
index a655fdda29e..7c86ce2896f 100644
--- a/Master/texmf-dist/source/latex/protocol/protocol.dtx
+++ b/Master/texmf-dist/source/latex/protocol/protocol.dtx
@@ -2,7 +2,7 @@
%
% Copyright (C) 1997 Projektgruppe ACIT, Lehrstuhl VII,
% Fachbereich Informatik, Universit"at Dortmund
-% 1997-1999,2006,2009 Thomas Leineweber (protocol@tleine.de)
+% 1997-1999,2006,2009-2010 Thomas Leineweber (protocol@tleine.de)
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -25,7 +25,7 @@
% der LaTeX-Klasse `protocol'.
% \fi
%
-% \CheckSum{289}
+% \CheckSum{349}
%% \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
@@ -59,7 +59,7 @@
% Nenne den Klassennamen und die Version.
% \begin{macrocode}
%<+protocol>\ProvidesClass{protocol}
-%<+protocol> [2009/04/24 v1.10
+%<+protocol> [2010/04/21 v1.11
%<+protocol> LaTeX-Class fuer Sitzungs-Protokolle TL]
% \end{macrocode}
%
@@ -100,9 +100,10 @@
% \changes{v1.6}{1999/02/05}{"Anderungen von Norbert G"overt eingebaut.}
% \changes{v1.6a}{1999/02/19}{Versuch, die Befehlsnamen anzugleichen}
% \changes{v1.7}{1999/07/30}{Endg"ultige Befehlsnamen festgelegt}
+% \changes{v1.11}{2010/04/21}{Neues Macro \cs{place}, um den Ort der Sitzung anzugeben}
% \iffalse
% Copyright (C) 1997 Projektgruppe ACIT, Universit"at Dortmund
-% 1997-1999,2006,2009 Thomas Leineweber (protocol@tleine.de)
+% 1997-1999,2006,2009-2010 Thomas Leineweber (protocol@tleine.de)
% all rights reserved.
% \fi
%
@@ -136,6 +137,14 @@
\DeclareOption{nonext}
{\AtBeginDocument{\let\@makefoot\relax}}
% \end{macrocode}
+% Die Option [signatures] sorgt daf"ur, dass am Ende des Protokolls Platz
+% für die Unterschriften von Sitzungsleiter und Protokollführer eingebaut wird.
+% \changes{v1.11}{2010/04/21}{Zus"atzliche Option signatures f"ur Unterschriftenzeile}
+% \begin{macrocode}
+\DeclareOption{signatures}
+ {\AtBeginDocument{\AtEndDocument{\protocol@signatures}}}
+% \end{macrocode}
+
% Alle anderen Optionen werden an die Klasse scrartcl weitergegeben.
% \changes{v1.8}{2004/02/05}{Basisklasse article durch scrartcl ersetzt.}
% \begin{macrocode}
@@ -170,6 +179,8 @@
% \begin{macro}{\writer}
% \changes{v1.6a}{1999/02/19}{\cs{protokoll} in \cs{writer} umbenannt}
% \begin{macro}{\date}
+% \begin{macro}{\place}
+% \changes{v1.11}{2010/04/21}{Neues Makro \cs{place}}
% \begin{macro}{\begintime}
% \changes{v1.6a}{1999/02/19}{\cs{beginn} in \cs{begintime} umbenannt}
% \begin{macro}{\endtime}
@@ -200,6 +211,10 @@
% \item |\date{10. Juni 1997}| : Das Datum der Sitzung. Hierf"ur wird die
% Standarddeklaration aus der Klasse article genommen. Wenn |\date|
% nicht deklariert wird, wird das aktuelle Datum genommen.
+% \item |\place{Raum 4711}| : Ort der Sitzung, wenn nicht gesetzt, wird kein Sitzungsort ausgegeben.
+% \begin{macrocode}
+\def\place#1{\gdef\protocol@place{#1}}
+% \end{macrocode}
% \item |\begintime{08:30}| : Beginn der Sitzung. Mu"s ebenfalls
% gesetzt werden.
% \begin{macrocode}
@@ -234,6 +249,7 @@
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
%
% \subsection{Interne Befehle zur Umsetzung}
% \begin{macro}{\@groupname}
@@ -241,6 +257,7 @@
% \changes{v1.5}{1998/01/22}{\cs{@pgname} in \cs{@groupname} geaendert}
% \begin{macro}{\@chairman}
% \begin{macro}{\@writer}
+% \begin{macro}{\protocol@place}
% \begin{macro}{\@nextdate}
% \begin{macro}{\@nextplace}
% \changes{v1.6}{1999/02/05}{Neues Makro \cs{@nextplace}}
@@ -256,6 +273,7 @@
\def\@groupname{\ClassWarning{protocol}{No \noexpand\groupname given}}
\def\@chair{\ClassWarning{protocol}{No \noexpand\chair given}}
\def\@writer{\ClassWarning{protocol}{No \noexpand\writer given}}
+\global\let\protocol@place\@empty
\global\let\@nextdate\@empty
\gdef\@nextplace{\ClassWarning{protocol}{No \noexpand\nextplace given}}
\gdef\@nexttime{\ClassWarning{protocol}{No \noexpand\nexttime given}}
@@ -270,6 +288,7 @@
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
%
%
% \subsection{Deklarationen zur Ausgabe der Daten}
@@ -309,9 +328,11 @@
\global\let\makehead\relax
\global\let\@makehead\relax
\global\let\chairman\relax
- \global\let\@chair\@empty
+ %\global\let\@chair\@empty
\global\let\writer\relax
- \global\let\@writer\@empty
+ %\global\let\@writer\@empty
+ \global\let\place\relax
+ \global\let\protocol@place\@empty
\global\let\begintime\relax
\global\let\@begintime\@empty
\global\let\endtime\relax
@@ -341,10 +362,18 @@
\end{center}%
\par
\vskip 2em{%
+ \ifx\protocol@place\@empty
\noindent\begin{tabular}{@{}ll}
Beginn: & \@begintime\ Uhr \\
Ende: & \@endtime\ Uhr \\
- \end{tabular}\par}\vskip 0.5cm}
+ \end{tabular}
+ \else
+ \noindent\begin{tabular}{@{}ll}
+ Beginn: & \@begintime\ Uhr \\
+ Ende: & \@endtime\ Uhr \\
+ Ort: & \protocol@place \\
+ \end{tabular}
+ \fi\par}\vskip 0.5cm}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -370,6 +399,14 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\protocol@signatures}
+% \begin{macrocode}
+\newcommand{\protocol@signatures}{\vspace{20mm}\par\noindent\hrulefill\hrulefill\hfill\hrulefill\hrulefill\\
+ \@chair\hfill\@writer\\
+ (Sitzungsleitung)\hfill{}(Protokoll)\\[-1cm]\mbox{}}
+% \end{macrocode}
+% \end{macro}
+
% \subsection{Die Umgebung Persons}
%
% \begin{environment}{Persons}
diff --git a/Master/texmf-dist/source/latex/protocol/protocol.ins b/Master/texmf-dist/source/latex/protocol/protocol.ins
index 5773e5146db..4998260971a 100644
--- a/Master/texmf-dist/source/latex/protocol/protocol.ins
+++ b/Master/texmf-dist/source/latex/protocol/protocol.ins
@@ -5,7 +5,7 @@
%%
%% Copyright (C) 1997 Projektgruppe ACIT, Lehrstuhl VII,
%% Fachbereich Informatik, Universit"at Dortmund
-%% 1997-1999,2006,2009 Thomas Leineweber (protocol@tleine.de)
+%% 1997-1999,2006,2009-2010 Thomas Leineweber (protocol@tleine.de)
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -32,7 +32,7 @@
This is a generated file.
Copyright (C) 1997 Projektgruppe ACIT, Lehrstuhl VII,
Fachbereich Informatik, Universit"at Dortmund
- 1997-1999,2006,2009 Thomas Leineweber (protocol@tleine.de)
+ 1997-1999,2006,2009-2010 Thomas Leineweber (protocol@tleine.de)
This work 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/tex/latex/protocol/protocol.cls b/Master/texmf-dist/tex/latex/protocol/protocol.cls
index 896f9566379..9f8c8d03858 100644
--- a/Master/texmf-dist/tex/latex/protocol/protocol.cls
+++ b/Master/texmf-dist/tex/latex/protocol/protocol.cls
@@ -9,7 +9,7 @@
%% This is a generated file.
%% Copyright (C) 1997 Projektgruppe ACIT, Lehrstuhl VII,
%% Fachbereich Informatik, Universit"at Dortmund
-%% 1997-1999,2006,2009 Thomas Leineweber (protocol@tleine.de)
+%% 1997-1999,2006,2009-2010 Thomas Leineweber (protocol@tleine.de)
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -43,7 +43,7 @@
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{protocol}
- [2009/04/24 v1.10
+ [2010/04/21 v1.11
LaTeX-Class fuer Sitzungs-Protokolle TL]
\DeclareOption{a5paper}
{\ClassError{protocol}{Option `a5paper' not supported}{}}
@@ -55,6 +55,9 @@
{\ClassError{protocol}{Option `titlepage' not supported}{}}
\DeclareOption{nonext}
{\AtBeginDocument{\let\@makefoot\relax}}
+\DeclareOption{signatures}
+ {\AtBeginDocument{\AtEndDocument{\protocol@signatures}}}
+
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}}
\ProcessOptions\relax
\PassOptionsToClass{halfparskip}{scrartcl}
@@ -62,6 +65,7 @@
\def\groupname#1{\gdef\@groupname{#1}\gdef\ProtocolGroupName{#1}}
\def\chair#1{\gdef\@chair{#1}}
\def\writer#1{\gdef\@writer{#1}}
+\def\place#1{\gdef\protocol@place{#1}}
\def\begintime#1{\gdef\@begintime{#1}}
\def\endtime#1{\gdef\@endtime{#1}}
\def\nextdate#1{\gdef\@nextdate{#1}}
@@ -70,6 +74,7 @@
\def\@groupname{\ClassWarning{protocol}{No \noexpand\groupname given}}
\def\@chair{\ClassWarning{protocol}{No \noexpand\chair given}}
\def\@writer{\ClassWarning{protocol}{No \noexpand\writer given}}
+\global\let\protocol@place\@empty
\global\let\@nextdate\@empty
\gdef\@nextplace{\ClassWarning{protocol}{No \noexpand\nextplace given}}
\gdef\@nexttime{\ClassWarning{protocol}{No \noexpand\nexttime given}}
@@ -102,9 +107,11 @@
\global\let\makehead\relax
\global\let\@makehead\relax
\global\let\chairman\relax
- \global\let\@chair\@empty
+ %\global\let\@chair\@empty
\global\let\writer\relax
- \global\let\@writer\@empty
+ %\global\let\@writer\@empty
+ \global\let\place\relax
+ \global\let\protocol@place\@empty
\global\let\begintime\relax
\global\let\@begintime\@empty
\global\let\endtime\relax
@@ -130,10 +137,18 @@ Protokoll der Sitzung vom \@date \par}%
\end{center}%
\par
\vskip 2em{%
+ \ifx\protocol@place\@empty
\noindent\begin{tabular}{@{}ll}
Beginn: & \@begintime\ Uhr \\
Ende: & \@endtime\ Uhr \\
- \end{tabular}\par}\vskip 0.5cm}
+ \end{tabular}
+ \else
+ \noindent\begin{tabular}{@{}ll}
+ Beginn: & \@begintime\ Uhr \\
+ Ende: & \@endtime\ Uhr \\
+ Ort: & \protocol@place \\
+ \end{tabular}
+ \fi\par}\vskip 0.5cm}
\newcommand{\@makefoot}{
\ifx\@nextdate\@empty
\section*{N\"achste Sitzung}
@@ -143,6 +158,10 @@ Protokoll der Sitzung vom \@date \par}%
findet am \@nextdate\ um \@nexttime\ Uhr statt. Ort:~\@nextplace.
\fi
}
+\newcommand{\protocol@signatures}{\vspace{20mm}\par\noindent\hrulefill\hrulefill\hfill\hrulefill\hrulefill\\
+ \@chair\hfill\@writer\\
+ (Sitzungsleitung)\hfill{}(Protokoll)\\[-1cm]\mbox{}}
+
\newenvironment{Persons}{\section*{Anwesenheit:}}{}
\newenvironment{Absent}{\section*{Abwesenheit:}}{}
\AtBeginDocument{\makehead}
diff --git a/Master/texmf-dist/tex/texinfo/texinfo.tex b/Master/texmf-dist/tex/texinfo/texinfo.tex
index 9bff20bebf4..cb29cc68c02 100644
--- a/Master/texmf-dist/tex/texinfo/texinfo.tex
+++ b/Master/texmf-dist/tex/texinfo/texinfo.tex
@@ -3,7 +3,7 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2010-03-25.16}
+\def\texinfoversion{2010-04-22.18}
%
% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -65,7 +65,6 @@
\everyjob{\message{[Texinfo version \texinfoversion]}%
\catcode`+=\active \catcode`\_=\active}
-
\chardef\other=12
% We never want plain's \outer definition of \+ in Texinfo.
@@ -198,36 +197,7 @@
% that mark overfull boxes (in case you have decided
% that the text looks ok even though it passes the margin).
%
-\def\finalout{\overfullrule=0pt}
-
-% @| inserts a changebar to the left of the current line. It should
-% surround any changed text. This approach does *not* work if the
-% change spans more than two lines of output. To handle that, we would
-% have adopt a much more difficult approach (putting marks into the main
-% vertical list for the beginning and end of each change).
-%
-\def\|{%
- % \vadjust can only be used in horizontal mode.
- \leavevmode
- %
- % Append this vertical mode material after the current line in the output.
- \vadjust{%
- % We want to insert a rule with the height and depth of the current
- % leading; that is exactly what \strutbox is supposed to record.
- \vskip-\baselineskip
- %
- % \vadjust-items are inserted at the left edge of the type. So
- % the \llap here moves out into the left-hand margin.
- \llap{%
- %
- % For a thicker or thinner bar, change the `1pt'.
- \vrule height\baselineskip width1pt
- %
- % This is the space between the bar and the text.
- \hskip 12pt
- }%
- }%
-}
+\def\finalout{\overfullrule=0pt }
% Sometimes it is convenient to have everything in the transcript file
% and nothing on the terminal. We don't just call \tracingall here,
@@ -266,7 +236,6 @@
\def\bigbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\bigskipamount
\removelastskip\penalty-200\bigskip\fi\fi}
-% For @cropmarks command.
% Do @cropmarks to get crop marks.
%
\newif\ifcropmarks
@@ -598,85 +567,6 @@
\newhelp\EMsimple{Press RETURN to continue.}
-%% Simple single-character @ commands
-
-% @@ prints an @
-% Kludge this until the fonts are right (grr).
-\def\@{{\tt\char64}}
-
-% This is turned off because it was never documented
-% and you can use @w{...} around a quote to suppress ligatures.
-%% Define @` and @' to be the same as ` and '
-%% but suppressing ligatures.
-%\def\`{{`}}
-%\def\'{{'}}
-
-% Used to generate quoted braces.
-\def\mylbrace {{\tt\char123}}
-\def\myrbrace {{\tt\char125}}
-\let\{=\mylbrace
-\let\}=\myrbrace
-\begingroup
- % Definitions to produce \{ and \} commands for indices,
- % and @{ and @} for the aux/toc files.
- \catcode`\{ = \other \catcode`\} = \other
- \catcode`\[ = 1 \catcode`\] = 2
- \catcode`\! = 0 \catcode`\\ = \other
- !gdef!lbracecmd[\{]%
- !gdef!rbracecmd[\}]%
- !gdef!lbraceatcmd[@{]%
- !gdef!rbraceatcmd[@}]%
-!endgroup
-
-% @comma{} to avoid , parsing problems.
-\let\comma = ,
-
-% Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent
-% Others are defined by plain TeX: @` @' @" @^ @~ @= @u @v @H.
-\let\, = \c
-\let\dotaccent = \.
-\def\ringaccent#1{{\accent23 #1}}
-\let\tieaccent = \t
-\let\ubaraccent = \b
-\let\udotaccent = \d
-
-% Other special characters: @questiondown @exclamdown @ordf @ordm
-% Plain TeX defines: @AA @AE @O @OE @L (plus lowercase versions) @ss.
-\def\questiondown{?`}
-\def\exclamdown{!`}
-\def\ordf{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{a}}}
-\def\ordm{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{o}}}
-
-% Dotless i and dotless j, used for accents.
-\def\imacro{i}
-\def\jmacro{j}
-\def\dotless#1{%
- \def\temp{#1}%
- \ifx\temp\imacro \ifmmode\imath \else\ptexi \fi
- \else\ifx\temp\jmacro \ifmmode\jmath \else\j \fi
- \else \errmessage{@dotless can be used only with i or j}%
- \fi\fi
-}
-
-% The \TeX{} logo, as in plain, but resetting the spacing so that a
-% period following counts as ending a sentence. (Idea found in latex.)
-%
-\edef\TeX{\TeX \spacefactor=1000 }
-
-% @LaTeX{} logo. Not quite the same results as the definition in
-% latex.ltx, since we use a different font for the raised A; it's most
-% convenient for us to use an explicitly smaller font, rather than using
-% the \scriptstyle font (since we don't reset \scriptstyle and
-% \scriptscriptstyle).
-%
-\def\LaTeX{%
- L\kern-.36em
- {\setbox0=\hbox{T}%
- \vbox to \ht0{\hbox{\selectfonts\lllsize A}\vss}}%
- \kern-.15em
- \TeX
-}
-
% Be sure we're in horizontal mode when doing a tie, since we make space
% equivalent to this in @example-like environments. Otherwise, a space
% at the beginning of a line will start with \penalty -- and
@@ -872,7 +762,7 @@ where each line of input produces a line of output.}
% @inmargin{WHICH}{TEXT} puts TEXT in the WHICH margin next to the current
% paragraph. For more general purposes, use the \margin insertion
-% class. WHICH is `l' or `r'.
+% class. WHICH is `l' or `r'. Not documented, written for gawk manual.
%
\newskip\inmarginspacing \inmarginspacing=1cm
\def\strutdepth{\dp\strutbox}
@@ -919,6 +809,36 @@ where each line of input produces a line of output.}
\temp
}
+% @| inserts a changebar to the left of the current line. It should
+% surround any changed text. This approach does *not* work if the
+% change spans more than two lines of output. To handle that, we would
+% have adopt a much more difficult approach (putting marks into the main
+% vertical list for the beginning and end of each change). This command
+% is not documented, not supported, and doesn't work.
+%
+\def\|{%
+ % \vadjust can only be used in horizontal mode.
+ \leavevmode
+ %
+ % Append this vertical mode material after the current line in the output.
+ \vadjust{%
+ % We want to insert a rule with the height and depth of the current
+ % leading; that is exactly what \strutbox is supposed to record.
+ \vskip-\baselineskip
+ %
+ % \vadjust-items are inserted at the left edge of the type. So
+ % the \llap here moves out into the left-hand margin.
+ \llap{%
+ %
+ % For a thicker or thinner bar, change the `1pt'.
+ \vrule height\baselineskip width1pt
+ %
+ % This is the space between the bar and the text.
+ \hskip 12pt
+ }%
+ }%
+}
+
% @include FILE -- \input text of FILE.
%
\def\include{\parseargusing\filenamecatcodes\includezzz}
@@ -1094,109 +1014,6 @@ where each line of input produces a line of output.}
}
-% @asis just yields its argument. Used with @table, for example.
-%
-\def\asis#1{#1}
-
-% @math outputs its argument in math mode.
-%
-% One complication: _ usually means subscripts, but it could also mean
-% an actual _ character, as in @math{@var{some_variable} + 1}. So make
-% _ active, and distinguish by seeing if the current family is \slfam,
-% which is what @var uses.
-{
- \catcode`\_ = \active
- \gdef\mathunderscore{%
- \catcode`\_=\active
- \def_{\ifnum\fam=\slfam \_\else\sb\fi}%
- }
-}
-% Another complication: we want \\ (and @\) to output a \ character.
-% FYI, plain.tex uses \\ as a temporary control sequence (why?), but
-% this is not advertised and we don't care. Texinfo does not
-% otherwise define @\.
-%
-% The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\.
-\def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi}
-%
-\def\math{%
- \tex
- \mathunderscore
- \let\\ = \mathbackslash
- \mathactive
- % make the texinfo accent commands work in math mode
- \let\"=\ddot
- \let\'=\acute
- \let\==\bar
- \let\^=\hat
- \let\`=\grave
- \let\u=\breve
- \let\v=\check
- \let\~=\tilde
- \let\dotaccent=\dot
- $\finishmath
-}
-\def\finishmath#1{#1$\endgroup} % Close the group opened by \tex.
-
-% Some active characters (such as <) are spaced differently in math.
-% We have to reset their definitions in case the @math was an argument
-% to a command which sets the catcodes (such as @item or @section).
-%
-{
- \catcode`^ = \active
- \catcode`< = \active
- \catcode`> = \active
- \catcode`+ = \active
- \catcode`' = \active
- \gdef\mathactive{%
- \let^ = \ptexhat
- \let< = \ptexless
- \let> = \ptexgtr
- \let+ = \ptexplus
- \let' = \ptexquoteright
- }
-}
-
-% Some math mode symbols.
-\def\bullet{$\ptexbullet$}
-\def\geq{\ifmmode \ge\else $\ge$\fi}
-\def\leq{\ifmmode \le\else $\le$\fi}
-\def\minus{\ifmmode -\else $-$\fi}
-
-% @dots{} outputs an ellipsis using the current font.
-% We do .5em per period so that it has the same spacing in the cm
-% typewriter fonts as three actual period characters; on the other hand,
-% in other typewriter fonts three periods are wider than 1.5em. So do
-% whichever is larger.
-%
-\def\dots{%
- \leavevmode
- \setbox0=\hbox{...}% get width of three periods
- \ifdim\wd0 > 1.5em
- \dimen0 = \wd0
- \else
- \dimen0 = 1.5em
- \fi
- \hbox to \dimen0{%
- \hskip 0pt plus.25fil
- .\hskip 0pt plus1fil
- .\hskip 0pt plus1fil
- .\hskip 0pt plus.5fil
- }%
-}
-
-% @enddots{} is an end-of-sentence ellipsis.
-%
-\def\enddots{%
- \dots
- \spacefactor=\endofsentencespacefactor
-}
-
-% @comma{} is so commas can be inserted into text without messing up
-% Texinfo's parsing.
-%
-\let\comma = ,
-
% @refill is a no-op.
\let\refill=\relax
@@ -2505,7 +2322,7 @@ end
% Font commands.
-% #1 is the font command (\sl vs. \it), #2 is the text to slant.
+% #1 is the font command (\sl or \it), #2 is the text to slant.
% If we are in a monospaced environment, however, 1) always use \ttsl,
% and 2) do not add an italic correction.
\def\dosmartslant#1#2{%
@@ -2830,8 +2647,178 @@ end
\fi
}
+% @asis just yields its argument. Used with @table, for example.
+%
+\def\asis#1{#1}
+
+% @math outputs its argument in math mode.
+%
+% One complication: _ usually means subscripts, but it could also mean
+% an actual _ character, as in @math{@var{some_variable} + 1}. So make
+% _ active, and distinguish by seeing if the current family is \slfam,
+% which is what @var uses.
+{
+ \catcode`\_ = \active
+ \gdef\mathunderscore{%
+ \catcode`\_=\active
+ \def_{\ifnum\fam=\slfam \_\else\sb\fi}%
+ }
+}
+% Another complication: we want \\ (and @\) to output a \ character.
+% FYI, plain.tex uses \\ as a temporary control sequence (why?), but
+% this is not advertised and we don't care. Texinfo does not
+% otherwise define @\.
+%
+% The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\.
+\def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi}
+%
+\def\math{%
+ \tex
+ \mathunderscore
+ \let\\ = \mathbackslash
+ \mathactive
+ % make the texinfo accent commands work in math mode
+ \let\"=\ddot
+ \let\'=\acute
+ \let\==\bar
+ \let\^=\hat
+ \let\`=\grave
+ \let\u=\breve
+ \let\v=\check
+ \let\~=\tilde
+ \let\dotaccent=\dot
+ $\finishmath
+}
+\def\finishmath#1{#1$\endgroup} % Close the group opened by \tex.
+
+% Some active characters (such as <) are spaced differently in math.
+% We have to reset their definitions in case the @math was an argument
+% to a command which sets the catcodes (such as @item or @section).
+%
+{
+ \catcode`^ = \active
+ \catcode`< = \active
+ \catcode`> = \active
+ \catcode`+ = \active
+ \catcode`' = \active
+ \gdef\mathactive{%
+ \let^ = \ptexhat
+ \let< = \ptexless
+ \let> = \ptexgtr
+ \let+ = \ptexplus
+ \let' = \ptexquoteright
+ }
+}
+
\message{glyphs,}
+% and logos.
+
+% @@ prints an @.
+\def\@{\char64 }
+
+% Used to generate quoted braces. Unless we're in typewriter, use
+% \ecfont because the CM text fonts do not have braces, and we don't
+% want to switch into math.
+\def\mylbrace{{\ifmonospace\else\ecfont\fi \char123}}
+\def\myrbrace{{\ifmonospace\else\ecfont\fi \char125}}
+\let\{=\mylbrace
+\let\}=\myrbrace
+\begingroup
+ % Definitions to produce \{ and \} commands for indices,
+ % and @{ and @} for the aux/toc files.
+ \catcode`\{ = \other \catcode`\} = \other
+ \catcode`\[ = 1 \catcode`\] = 2
+ \catcode`\! = 0 \catcode`\\ = \other
+ !gdef!lbracecmd[\{]%
+ !gdef!rbracecmd[\}]%
+ !gdef!lbraceatcmd[@{]%
+ !gdef!rbraceatcmd[@}]%
+!endgroup
+
+% @comma{} to avoid , parsing problems.
+\let\comma = ,
+
+% Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent
+% Others are defined by plain TeX: @` @' @" @^ @~ @= @u @v @H.
+\let\, = \c
+\let\dotaccent = \.
+\def\ringaccent#1{{\accent23 #1}}
+\let\tieaccent = \t
+\let\ubaraccent = \b
+\let\udotaccent = \d
+
+% Other special characters: @questiondown @exclamdown @ordf @ordm
+% Plain TeX defines: @AA @AE @O @OE @L (plus lowercase versions) @ss.
+\def\questiondown{?`}
+\def\exclamdown{!`}
+\def\ordf{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{a}}}
+\def\ordm{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{o}}}
+
+% Dotless i and dotless j, used for accents.
+\def\imacro{i}
+\def\jmacro{j}
+\def\dotless#1{%
+ \def\temp{#1}%
+ \ifx\temp\imacro \ifmmode\imath \else\ptexi \fi
+ \else\ifx\temp\jmacro \ifmmode\jmath \else\j \fi
+ \else \errmessage{@dotless can be used only with i or j}%
+ \fi\fi
+}
+
+% The \TeX{} logo, as in plain, but resetting the spacing so that a
+% period following counts as ending a sentence. (Idea found in latex.)
+%
+\edef\TeX{\TeX \spacefactor=1000 }
+
+% @LaTeX{} logo. Not quite the same results as the definition in
+% latex.ltx, since we use a different font for the raised A; it's most
+% convenient for us to use an explicitly smaller font, rather than using
+% the \scriptstyle font (since we don't reset \scriptstyle and
+% \scriptscriptstyle).
+%
+\def\LaTeX{%
+ L\kern-.36em
+ {\setbox0=\hbox{T}%
+ \vbox to \ht0{\hbox{\selectfonts\lllsize A}\vss}}%
+ \kern-.15em
+ \TeX
+}
+
+% Some math mode symbols.
+\def\bullet{$\ptexbullet$}
+\def\geq{\ifmmode \ge\else $\ge$\fi}
+\def\leq{\ifmmode \le\else $\le$\fi}
+\def\minus{\ifmmode -\else $-$\fi}
+
+% @dots{} outputs an ellipsis using the current font.
+% We do .5em per period so that it has the same spacing in the cm
+% typewriter fonts as three actual period characters; on the other hand,
+% in other typewriter fonts three periods are wider than 1.5em. So do
+% whichever is larger.
+%
+\def\dots{%
+ \leavevmode
+ \setbox0=\hbox{...}% get width of three periods
+ \ifdim\wd0 > 1.5em
+ \dimen0 = \wd0
+ \else
+ \dimen0 = 1.5em
+ \fi
+ \hbox to \dimen0{%
+ \hskip 0pt plus.25fil
+ .\hskip 0pt plus1fil
+ .\hskip 0pt plus1fil
+ .\hskip 0pt plus.5fil
+ }%
+}
+
+% @enddots{} is an end-of-sentence ellipsis.
+%
+\def\enddots{%
+ \dots
+ \spacefactor=\endofsentencespacefactor
+}
% @point{}, @result{}, @expansion{}, @print{}, @equiv{}.
%
@@ -4149,11 +4136,14 @@ end
\def\@{@}% change to @@ when we switch to @ as escape char in index files.
\def\ {\realbackslash\space }%
%
- % Need these in case \tex is in effect and \{ is a \delimiter again.
- % But can't use \lbracecmd and \rbracecmd because texindex assumes
- % braces and backslashes are used only as delimiters.
- \let\{ = \mylbrace
- \let\} = \myrbrace
+ % Need these unexpandable (because we define \tt as a dummy)
+ % definitions when @{ or @} appear in index entry text. Also, more
+ % complicated, when \tex is in effect and \{ is a \delimiter again.
+ % We can't use \lbracecmd and \rbracecmd because texindex assumes
+ % braces and backslashes are used only as delimiters. Perhaps we
+ % should define @lbrace and @rbrace commands a la @comma.
+ \def\{{{\tt\char123}}%
+ \def\}{{\tt\char125}}%
%
% I don't entirely understand this, but when an index entry is
% generated from a macro call, the \endinput which \scanmacro inserts
@@ -8951,8 +8941,8 @@ directory should work if nowhere else does.}
% Prevent underfull vbox error messages.
\vbadness = 10000
-% Don't be so finicky about underfull hboxes, either.
-\hbadness = 2000
+% Don't be very finicky about underfull hboxes, either.
+\hbadness = 6666
% Following George Bush, get rid of widows and orphans.
\widowpenalty=10000