From c5626af2b77c391bf663c660b9a0b495ab53d941 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 15 Feb 2013 00:19:38 +0000 Subject: eplain (14feb13) git-svn-id: svn://tug.org/texlive/trunk@29110 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/eplain/btxmac.tex | 36 +-- Master/texmf-dist/tex/eplain/eplain.tex | 374 ++++++++++++++++++++------------ 2 files changed, 252 insertions(+), 158 deletions(-) (limited to 'Master/texmf-dist/tex/eplain') diff --git a/Master/texmf-dist/tex/eplain/btxmac.tex b/Master/texmf-dist/tex/eplain/btxmac.tex index c8772a176b2..88338ab8b39 100644 --- a/Master/texmf-dist/tex/eplain/btxmac.tex +++ b/Master/texmf-dist/tex/eplain/btxmac.tex @@ -1,16 +1,15 @@ %% @texfile{ %% author = "Karl Berry and Oren Patashnik", -%% version = "0.99k-09sep07", -%% date = "19 August 2005", +%% version = "0.99m", +%% date = "7 February 2013", %% filename = "btxmac.tex", %% address = "tex-eplain@tug.org", -%% checksum = "842 4571 33524", -%% codetable = "ISO/ASCII", %% supported = "yes", %% docstring = "Defines macros that make BibTeX work with plain TeX", %% } % BibTeX-for-TeX macros, version 0.99k, for BibTeX 0.99c, TeX 3.0 or later. -% Copyright (C) 1990, 1991, 1992, 1995, 2005 Karl Berry & Oren Patashnik. +% Copyright 1990, 1991, 1992, 1995, 2004, 2007, 2013 Karl Berry & +% Oren Patashnik. % % Unlimited copying and redistribution of this file are permitted as % long as this file is not modified. Modifications (and redistribution @@ -24,7 +23,7 @@ % (opbibtex@cs.stanford.edu). These macros will become frozen shortly % after BibTeX version 1.00 is released. % -% AMS-TEX WARNING: We tried very hard, for version .99i of these macros, +% AMS-TEX WARNING: We tried very hard, as of version .99i of these macros, % to make them compatible with AmS-TeX. We succeeded to the extent % that, if you use one of the standard bibliography styles, you probably % won't notice any problems with version 0.99i of btxmac.tex. But @@ -51,9 +50,9 @@ % the current btxmac.tex macros are sufficient, fine. But if there's a % demand for more robust BibTeX/AmS-TeX behavior, then someone who's % very familiar with the AmS-TeX package should probably make an -% amsbtxmc.tex version of the macros (remembering to follow the -% copyright restrictions above). Until then, if you're an AmS-TeX user, -% or a LaTeX or plain TeX user sharing files with an AmS-TeX user, beware. +% amsbtxmc.tex version of the macros. Until then, if you're an AmS-TeX +% user, or a LaTeX or plain TeX user sharing files with an AmS-TeX user, +% beware. % END OF AMS-TEX WARNING. % % To use these macros you should be familiar with how BibTeX interacts @@ -145,6 +144,8 @@ % \emph, \textbf, and \mbox, since many .bib files % use them. And made these definitions (and others) % only effective if not already defined. +% 07-Feb-13 0.99m, \newcommand and \providecommand should be \long, +% and not use \edef. Define \bbltextbf. % % The LaTeX-related commands defined in this file include % (a) the four commands that a user types (\bibliography, @@ -247,10 +248,9 @@ % So to start things off we turn `@' into a letter (category code 11), % keeping track of the old category code for future restoration. % (Simply resetting it to 12 when we leave these macros is -% insufficient.) The use of `\cite' as a temporary control sequence is -% a kludge, but it's a reasonably simple way to accomplish what we need -% without possibly overwriting something (without an `@' in its name) -% that might already be defined. +% insufficient.) We use `\cite' as a temporary control sequence to +% save the current catcode of @ to avoid possibly overwriting something +% (without an `@' in its name) that might already be defined. % \edef\cite{\the\catcode`@}% \catcode`@ = 11 @@ -683,7 +683,7 @@ \def\bblemph#1{{\bblem #1\/}} % % And bold. -\def\textbf#1{{\bf #1}} +\def\bbltextbf#1{{\bf #1}} % % \mbox is \hbox forcing horizontal mode. \def\bblmbox{\leavevmode\hbox} @@ -759,7 +759,7 @@ % arg) but we don't bother with either of these. % \ifx\newcommand\undefined -\def\newcommand#1{% +\long\def\newcommand#1{% \def\@commandname{#1}% \@getoptionalarg\@continuenewcommand }% @@ -770,7 +770,7 @@ % \newcommand. In LaTeX, it gives a warning if \foo is not already defined. % \ifx\renewcommand\undefined -\let\renewcommand = \newcommand + \let\renewcommand = \newcommand \fi % % @@ -778,7 +778,7 @@ % \foo is not already defined. % \ifx\providecommand\undefined -\def\providecommand#1{% +\long\def\providecommand#1{% \def\@commandname{#1}% % \expandafter\ifx\@commandname \@undefined @@ -804,7 +804,7 @@ % command is \@commandname. The replacement text for the new macro is #1. % \def\@newcommand#1{% - \def\@startdef{\expandafter\edef\@commandname}% + \def\@startdef{\expandafter\def\@commandname}% \ifnum\@numparams=0 \let\@paramdef = \empty \else diff --git a/Master/texmf-dist/tex/eplain/eplain.tex b/Master/texmf-dist/tex/eplain/eplain.tex index 236ea4efc32..d4caba1059b 100644 --- a/Master/texmf-dist/tex/eplain/eplain.tex +++ b/Master/texmf-dist/tex/eplain/eplain.tex @@ -1,10 +1,10 @@ %% @texfile{ %% author = "Karl Berry, Steven Smith, Oleg Katsitadze, and others", -%% version = "3.4", -%% date = "Sun Feb 21 15:52:21 PST 2010", +%% version = "3.5", +%% date = "Fri Feb 8 09:51:56 PST 2013", %% filename = "eplain.tex", %% email = "bug-eplain@tug.org", -%% checksum = "4251 9191 135013", +%% checksum = "4345 9735 139553", %% codetable = "ASCII", %% supported = "yes", %% docstring = "This file defines macros that extend and expand on @@ -33,13 +33,18 @@ %% %% This is a generated file. %% -%% Copyright (C) 2001, 2005-2009 by -%% Heiko Oberdiek +%% Project: ifpdf +%% Version: 2011/01/30 v2.3 +%% +%% Copyright (C) 2001, 2005-2011 by +%% Heiko Oberdiek %% %% This work 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 +%% version 1.3c of this license or (at your option) any later +%% version. This version of this license is in +%% http://www.latex-project.org/lppl/lppl-1-3c.txt +%% and the latest version of this license is in %% http://www.latex-project.org/lppl.txt %% and version 1.3 or later is part of all distributions of %% LaTeX version 2005/12/01 or later. @@ -48,52 +53,59 @@ %% %% This Current Maintainer of this work is Heiko Oberdiek. %% +%% The Base Interpreter refers to any `TeX-Format', +%% because some files are installed in TDS:tex/generic//. +%% %% This work consists of the main source file ifpdf.dtx %% and the derived files %% ifpdf.sty, ifpdf.pdf, ifpdf.ins, ifpdf.drv, ifpdf-test1.tex. %% -\begingroup - \catcode44 12 % , - \catcode45 12 % - - \catcode46 12 % . - \catcode58 12 % : - \catcode64 11 % @ +\begingroup\catcode61\catcode48\catcode32=10\relax% + \catcode13=5 % ^^M + \endlinechar=13 % + \catcode35=6 % # + \catcode39=12 % ' + \catcode44=12 % , + \catcode45=12 % - + \catcode46=12 % . + \catcode58=12 % : + \catcode64=11 % @ + \catcode123=1 % { + \catcode125=2 % } \expandafter\let\expandafter\x\csname ver@ifpdf.sty\endcsname - \ifcase 0% - \ifx\x\relax % plain + \ifx\x\relax % plain-TeX, first loading + \else + \def\empty{}% + \ifx\x\empty % LaTeX, first loading, \else - \ifx\x\empty % LaTeX + \expandafter\ifx\csname PackageInfo\endcsname\relax + \def\x#1#2{% + \immediate\write-1{Package #1 Info: #2.}% + }% \else - 1% + \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% \fi + \x{ifpdf}{The package is already loaded}% \fi - \else - \catcode35 6 % # - \catcode123 1 % { - \catcode125 2 % } - \expandafter\ifx\csname PackageInfo\endcsname\relax - \def\x#1#2{% - \immediate\write-1{Package #1 Info: #2.}% - }% - \else - \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% - \fi - \x{ifpdf}{The package is already loaded}% - \endgroup \fi -\endgroup -\begingroup - \catcode35 6 % # - \catcode40 12 % ( - \catcode41 12 % ) - \catcode44 12 % , - \catcode45 12 % - - \catcode46 12 % . - \catcode47 12 % / - \catcode58 12 % : - \catcode64 11 % @ - \catcode123 1 % { - \catcode125 2 % } +\endgroup% +\begingroup\catcode61\catcode48\catcode32=10\relax% + \catcode13=5 % ^^M + \endlinechar=13 % + \catcode35=6 % # + \catcode39=12 % ' + \catcode40=12 % ( + \catcode41=12 % ) + \catcode44=12 % , + \catcode45=12 % - + \catcode46=12 % . + \catcode47=12 % / + \catcode58=12 % : + \catcode64=11 % @ + \catcode91=12 % [ + \catcode93=12 % ] + \catcode123=1 % { + \catcode125=2 % } \expandafter\ifx\csname ProvidesPackage\endcsname\relax \def\x#1#2#3[#4]{\endgroup \xdef#1{#4}% @@ -111,29 +123,38 @@ \fi \expandafter\x\csname ver@ifpdf.sty\endcsname \ProvidesPackage{ifpdf}% - [2009/04/10 v2.0 Provides the ifpdf switch (HO)] -\begingroup - \catcode123 1 % { - \catcode125 2 % } + [2011/01/30 v2.3 Provides the ifpdf switch (HO)]% +\begingroup\catcode61\catcode48\catcode32=10\relax% + \catcode13=5 % ^^M + \endlinechar=13 % + \catcode123=1 % { + \catcode125=2 % } + \catcode64=11 % @ \def\x{\endgroup \expandafter\edef\csname ifpdf@AtEnd\endcsname{% - \catcode35 \the\catcode35\relax - \catcode64 \the\catcode64\relax - \catcode123 \the\catcode123\relax - \catcode125 \the\catcode125\relax + \endlinechar=\the\endlinechar\relax + \catcode13=\the\catcode13\relax + \catcode32=\the\catcode32\relax + \catcode35=\the\catcode35\relax + \catcode61=\the\catcode61\relax + \catcode64=\the\catcode64\relax + \catcode123=\the\catcode123\relax + \catcode125=\the\catcode125\relax }% }% -\x -\catcode35 6 % # -\catcode64 11 % @ -\catcode123 1 % { -\catcode125 2 % } +\x\catcode61\catcode48\catcode32=10\relax% +\catcode13=5 % ^^M +\endlinechar=13 % +\catcode35=6 % # +\catcode64=11 % @ +\catcode123=1 % { +\catcode125=2 % } \def\TMP@EnsureCode#1#2{% \edef\ifpdf@AtEnd{% \ifpdf@AtEnd - \catcode#1 \the\catcode#1\relax + \catcode#1=\the\catcode#1\relax }% - \catcode#1 #2\relax + \catcode#1=#2\relax } \TMP@EnsureCode{10}{12}% ^^J \TMP@EnsureCode{39}{12}% ' @@ -145,7 +166,8 @@ \TMP@EnsureCode{47}{12}% / \TMP@EnsureCode{58}{12}% : \TMP@EnsureCode{60}{12}% < -\TMP@EnsureCode{61}{12}% = +\TMP@EnsureCode{91}{12}% [ +\TMP@EnsureCode{93}{12}% ] \TMP@EnsureCode{94}{7}% ^ \TMP@EnsureCode{96}{12}% ` \begingroup @@ -171,34 +193,57 @@ therefore package loading is aborted.% }% \endgroup - \ifpdf@AtEnd - \fi + \expandafter\ifpdf@AtEnd + \fi% \endgroup \begingroup + \def\skip#1\relax\begingroup{}% \expandafter\ifx\csname pdfoutput\endcsname\relax \else - \def\skip#1\relax\endgroup{\csname fi\endcsname\endgroup}% - \skip + \expandafter\skip \fi \expandafter\ifx\csname directlua\endcsname\relax - \def\skip#1\endgroup{\csname fi\endcsname\endgroup}% - \skip + \expandafter\skip \fi - \expandafter\ifx\csname RequirePackage\endcsname\relax - \input ifluatex.sty\relax +\endgroup +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname RequirePackage\endcsname\relax + \def\TMP@RequirePackage#1[#2]{% + \begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname ver@#1.sty\endcsname\relax + \input #1.sty\relax + \fi + }% + \TMP@RequirePackage{ifluatex}[2009/04/10]% +\else + \RequirePackage{ifluatex}[2009/04/10]% +\fi +\ifluatex + \ifnum\luatexversion<36 % \else - \RequirePackage{ifluatex}[2009/04/10]% - \fi - \ifluatex - \ifnum\luatexversion<36 % - \else + \begingroup \directlua{tex.enableprimitives('ifpdf', {'pdfoutput'})}% \global\let\pdfoutput\ifpdfpdfoutput - \fi + \endgroup \fi - \relax -\endgroup -\newif\ifpdf +\fi +\relax\begingroup\endgroup +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname newif\endcsname\relax + \edef\pdffalse{% + \let + \expandafter\noexpand\csname ifpdf\endcsname + \expandafter\noexpand\csname iffalse\endcsname + }% + \edef\pdftrue{% + \let + \expandafter\noexpand\csname ifpdf\endcsname + \expandafter\noexpand\csname iftrue\endcsname + }% + \pdffalse +\else + \csname newif\expandafter\endcsname\csname ifpdf\endcsname +\fi \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname pdfoutput\endcsname\relax \else @@ -210,12 +255,9 @@ \begingroup \expandafter\ifx\csname pdfoutput\endcsname\relax \else - \escapechar=-1 % + \escapechar=92 % \edef\m{\meaning\pdfoutput}% - \edef\p{% - \string p\string d\string f% - \string o\string u\string t\string p\string u\string t% - }% + \edef\p{\string\pdfoutput}% \ifx\m\p \else \expandafter\ifx\csname PackageWarningNoLine\endcsname\relax @@ -226,7 +268,7 @@ }% \fi \PackageWarningNoLine{ifpdf}{% - Someone has redefined \string\\pdfoutput% + Someone has redefined \string\pdfoutput% }% \fi \fi @@ -239,9 +281,9 @@ \let\x\PackageInfo \expandafter\let\csname on@line\endcsname\empty \fi - \x{ifpdf}{pdfTeX in pdf mode \ifpdf\else not \fi detected}% + \x{ifpdf}{pdfTeX in PDF mode is \ifpdf\else not \fi detected}% \endgroup -\ifpdf@AtEnd +\ifpdf@AtEnd% %% %% End of file `ifpdf.sty'. \def\makeactive#1{\catcode`#1 = \active \ignorespaces}% @@ -358,12 +400,10 @@ \fi %% @texfile{ %% author = "Karl Berry and Oren Patashnik", -%% version = "0.99k-09sep07", -%% date = "19 August 2005", +%% version = "0.99m", +%% date = "7 February 2013", %% filename = "btxmac.tex", %% address = "tex-eplain@tug.org", -%% checksum = "842 4571 33524", -%% codetable = "ISO/ASCII", %% supported = "yes", %% docstring = "Defines macros that make BibTeX work with plain TeX", %% } @@ -585,7 +625,7 @@ \def\bblrm{\rm}% \def\bblem{\it}% \def\bblemph#1{{\bblem #1\/}} -\def\textbf#1{{\bf #1}} +\def\bbltextbf#1{{\bf #1}} \def\bblmbox{\leavevmode\hbox} \def\bblsc{\ifx\@scfont\@undefined \font\@scfont = cmcsc10 @@ -604,16 +644,16 @@ \let\citation = \@gobble \@innernewcount\@numparams \ifx\newcommand\undefined -\def\newcommand#1{% +\long\def\newcommand#1{% \def\@commandname{#1}% \@getoptionalarg\@continuenewcommand }% \fi \ifx\renewcommand\undefined -\let\renewcommand = \newcommand + \let\renewcommand = \newcommand \fi \ifx\providecommand\undefined -\def\providecommand#1{% +\long\def\providecommand#1{% \def\@commandname{#1}% \expandafter\ifx\@commandname \@undefined \let\cs=\@continuenewcommand % undefined, so we'll define it @@ -628,7 +668,7 @@ \@newcommand }% \def\@newcommand#1{% - \def\@startdef{\expandafter\edef\@commandname}% + \def\@startdef{\expandafter\def\@commandname}% \ifnum\@numparams=0 \let\@paramdef = \empty \else @@ -995,20 +1035,25 @@ \ifx\SLiTeX\undefined \let\SLiTeX=\SLITEX \fi \ifx\SliTeX\undefined \let\SliTeX=\SLITEX \fi \ifx\SLITeX\undefined \let\SLITeX=\SLITEX \fi -%%% @texfile{ +%%% @TeX-style-file +%%% { %%% author = "Philip Taylor", -%%% version = "3.04", -%%% date = "25 July 1992", -%%% time = "17:07 EDT", +%%% version = "3.05", +%%% date = "7 April 2011", +%%% time = "15:59:31 BST", %%% filename = "path.sty", -%%% address = "The Computer Centre -%%% RHBNC, University of London -%%% Egham Hill -%%% Egham, Surrey TW20 0EX, ENGLAND", -%%% telephone = "Tel: +44 784 443172", -%%% FAX = "Fax: +44 784 434348", -%%% checksum = "41143 321 1758 13526", -%%% email = "P.Taylor@Vax.Rhbnc.Ac.Uk (Internet)", +%%% license = "Unlimited copying and redistribution of this +%%% file are permitted as long as this file is +%%% not modified. Modifications are permitted, +%%% but only if the resulting file is not named +%%% path.sty regardless of case", +%%% address = "c/o The Hellenic Institute +%%% Royal Holloway, University of London +%%% Egham Hull, Egham +%%% Surrey TW20 0EX +%%% United Kingdom", +%%% telephone = "Tel: +44 1622 820 735", +%%% email = "P.Taylor@Rhul.Ac.Uk", %%% codetable = "ISO/ASCII", %%% keywords = "file name, filename, path name, pathname, %%% discretionary, discretionaries", @@ -1017,9 +1062,7 @@ %%% addresses tend to be long strings that %%% cause line breaking problems for TeX. %%% Sometimes rather long strings are -%%% encountered; here are two examples: -%%% -%%% Friesland%rz.informatik.uni-hamburg.dbp.de%germany.csnet@relay.cs.net +%%% encountered, such as: %%% %%% mighty-mouse-gw.scrc.symbolics.com %%% @@ -1034,7 +1077,8 @@ %%% %%% \discretionaries |~!@$%^&*()_+`-=#{"}[]:;'<>,.?\/| %%% -%%% However, you can change it as needed, for example: +%%% However, you can change it as needed, for +%%% example %%% %%% \discretionaries +@%!.+ %%% @@ -1057,42 +1101,64 @@ %%% \specialpathdelimitersfalse is the normal %%% setting. %%% -%%% This file may be used in Plain TeX or AmSTeX by +%%% This file may be used in Plain TeX or AmSTeX +%%% by %%% %%% \input path.sty %%% %%% and in LaTeX by %%% -%%% \documentstyle[...,path,...]{...} +%%% \usepackage {path} %%% -%%% The checksum field above contains a CRC-16 -%%% checksum as the first value, followed by the -%%% equivalent of the standard UNIX wc (word +%%% The checksum field above, if present, contains +%%% a CRC-16 checksum as the first value, followed +%%% by the equivalent of the standard UNIX wc (word %%% count) utility output of lines, words, and %%% characters. This is produced by Robert -%%% Solovay's checksum utility.} +%%% Solovay's checksum utility. +%%% } %%% } -\edef\path{\the\catcode`@}% -\catcode`@ = 11 -\let\@oldatcatcode = \path +%%% ==================================================================== +%%% The use of `\path' as a temporary control sequence is a kludge, but +%%% it's a reasonably simple way to accomplish making @ a letter (to +%%% provide ``concealed'' control sequences) without overwriting something +%%% (without an `@' in its name) that might already be defined. +\edef \path {\the \catcode `\@}% +\catcode `\@ = 11 +\let \oldc@tcode = \path +%%% Make commercial-at a letter to provide concealed control sequences +\catcode `\@ = 11 +%%% and then declare two \count variables with concealed names \newcount \c@tcode \newcount \c@unter +%%% and a boolean variable with an open name, to specify the nature of +%%% the delimiters which will be associated with the \path command \newif \ifspecialpathdelimiters +%%% If desired, you can define \pathafterhook to take +\let \pathafterhook = \relax +%%% We need to define control sequences which expand to both +%%% active and passive spaces ... \begingroup \catcode `\ = 10 -\gdef \passivesp@ce { }% +\gdef \passivesp@ce { } \catcode `\ = 13\relax% \gdef\activesp@ce{ }% \endgroup -\def \discretionaries % +%%% \discretionaries will define a macro \discr@ti@n@ri@s which will +%%% make every character between the first and final a +%%% discretionary breakpoint. +\def \discretionaries %%% {\begingroup \c@tcodes = 13 \discr@tionaries - }% -\def \discr@tionaries #1% - {\def \discr@ti@naries ##1#1% + } +%%% \discr@tionaries will receive as parameter the initial +%%% which will delimit the set of discretionaries; this +%%% will be active. +\def \discr@tionaries #1%%% + {\def \discr@ti@naries ##1#1%%% {\endgroup - \def \discr@ti@n@ries ####1% or + \def \discr@ti@n@ries ####1%%% or {\if \noexpand ####1\noexpand #1% \let \n@xt = \relax \else @@ -1106,8 +1172,15 @@ \def \discr@ti@n@ri@s {\discr@ti@n@ries ##1#1}% }% \discr@ti@naries - }% -\let\pathafterhook = \relax + } +%%% \path, which is the user interface to \p@th, first checks +%%% to see whether \specialpathdelimiters is or ; +%%% if , it needs to take special action to ensure that +%%% \stress {all} characters (apart from ) are acceptable +%%% as delimiters; this is very time-consuming, and should be +%%% avoided if at all possible. It also defines \endp@th, to +%%% close the appropriate number of groups, and finally transfers +%%% control to \p@th \def \path {\ifspecialpathdelimiters \begingroup @@ -1117,8 +1190,14 @@ \def \endp@th {\endgroup \pathafterhook}% \fi \p@th - }% -\def \p@th #1% + } +%%% \p@th, which has essentially the same syntax as \discretionaries, +%%% expects to be followed by a , a , and a second instance +%%% of ; it will typeset in the \tt font with hyphenation +%%% inhibited --- breaks (but not true hyphenation) are allowed at any +%%% or all of the special characters which have +%%% previously been declared as \discretionaries. +\def \p@th #1%%% {\begingroup \tt \c@tcode = \catcode `#1 @@ -1131,8 +1210,17 @@ \endp@th }% \p@@th - }% -\def \c@tcodes {\afterassignment \c@tc@des \c@tcode}% + } +%%% \c@tcodes expects to be followed by the r-h-s of a numeric +%%% assignment optionally including the assignment operator; it saves +%%% the value of the r-h-s in \c@tcode, and invokes \c@tc@des. +\def \c@tcodes {\afterassignment \c@tc@des \c@tcode} +%%% \c@tc@des uses the value saved in \c@tcode, and assigns it to the +%%% \catcode of all characters with the single exception of , +%%% which retains its normal catcode of 10; on exit, every single +%%% character apart from will have the catcode which followed +%%% \c@tcodes. The code is optimised to avoid unnecessary usage of +%%% save-stack space. \def \c@tc@des {\c@unter = 0 \loop @@ -1144,9 +1232,13 @@ \advance \c@unter by 1 \repeat \catcode `\ = 10 - }% -\catcode `\@ = \@oldatcatcode -\discretionaries |~!@$%^&*()_+`-=#{}[]:";'<>,.?\/|% + } +%%% We restore the original catcode of commercial-at +\catcode `\@ = \oldc@tcode +%%% Define a default set of discretionary break characters +%%% to include all punctuation characters except vertical +%%% bar +\discretionaries |~!@$%^&*()_+`-=#{}[]:";'<>,.?\/| \ifx\eTeX\undefined \def\eTeX{\hbox{\mathsurround=0pt $\varepsilon$-\kern-.125em\TeX}}% \fi @@ -3163,11 +3255,12 @@ \newdimen\temp@dimen \def\columnfill{% \par - \dimen@=\pagetotal % The height of the text set so far. - \temp@dimen = \vsize % = \@numcolumns * columnheight - \divide\temp@dimen by \@numcolumns % find out column height + \dimen@ = \pagetotal % The height of the text so far. + \temp@dimen = \vsize % = \@numcolumns * columnheight + \advance\temp@dimen by -\@col@extraheight + \divide\temp@dimen by \@numcolumns % Compute column height \loop - \ifdim \dimen@ > \temp@dimen + \ifdim \dimen@ > \temp@dimen % more material than a column? \advance \dimen@ by -\temp@dimen \advance \dimen@ by \topskip % fudge factor \repeat @@ -3175,11 +3268,11 @@ \advance \temp@dimen by -\prevdepth \@saveclubpenalty \clubpenalty=10000\relax - \hrule height\temp@dimen width0pt depth0pt\relax + \hrule height\temp@dimen width0pt depth0pt\relax % fill space with rule \nointerlineskip \par \nointerlineskip - \penalty0\vfil % To allow a page break here. + \allowbreak \vfil % To allow a page break here. \relax }% \def\@hldest{% @@ -4006,6 +4099,7 @@ \global\let\usepackage\fake@usepackage \let\packageinput=\input \let\input=\eplaininput + \ifx\resetatcatcode\@undefined \else\resetatcatcode \fi }% \def\fake@usepackage{\errmessage{You should not use \string\usepackage\space outside of^^J \@spaces\string\beginpackages...\string\endpackages\space environment}% @@ -4247,5 +4341,5 @@ \def\fmtname{eplain}% \def\eplain{t}% {\edef\plainversion{\fmtversion}% - \xdef\fmtversion{3.4: 21 February 2010 (and plain \plainversion)}% + \xdef\fmtversion{3.5: 8 February 2013 (and plain \plainversion)}% }% -- cgit v1.2.3