summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/eplain/btxmac.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-05-15 22:07:24 +0000
committerKarl Berry <karl@freefriends.org>2016-05-15 22:07:24 +0000
commit508373bc061209ca4f72fe1b73296cf5efb7ae7d (patch)
tree8bb8c9f6352aaed24299cf4b3af223d37fefa9b1 /Master/texmf-dist/tex/eplain/btxmac.tex
parentf64b201d1382d2009bef44578f44271d3a9aa3e0 (diff)
eplain (15may16)
git-svn-id: svn://tug.org/texlive/trunk@41154 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/eplain/btxmac.tex')
-rw-r--r--Master/texmf-dist/tex/eplain/btxmac.tex82
1 files changed, 46 insertions, 36 deletions
diff --git a/Master/texmf-dist/tex/eplain/btxmac.tex b/Master/texmf-dist/tex/eplain/btxmac.tex
index 2507dae85f3..2799da70fce 100644
--- a/Master/texmf-dist/tex/eplain/btxmac.tex
+++ b/Master/texmf-dist/tex/eplain/btxmac.tex
@@ -1,14 +1,14 @@
%% @texfile{
%% author = "Karl Berry and Oren Patashnik",
-%% version = "0.99n",
-%% date = "30 September 2013",
+%% version = "0.99o",
+%% date = "12 May 2016",
%% filename = "btxmac.tex",
%% address = "tex-eplain@tug.org",
%% 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 1990, 1991, 1992, 1995, 2004, 2007, 2013 Karl Berry &
+% BibTeX-for-TeX macros for BibTeX 0.99c, TeX 3.0 or later.
+% Copyright 1990, 1991, 1992, 1995, 2005, 2007, 2013, 2016 Karl Berry &
% Oren Patashnik.
%
% Unlimited copying and redistribution of this file are permitted as
@@ -139,14 +139,24 @@
% 14-Mar-92 0.99j, made 0.99i's use of `\\' local to btxmac.tex.
% 13-Nov-95 0.99k, defined \begin and \end (while reading bbl file) only if
% it wasn't already defined.
-% 04-Aug-04 0.99l, defined \renewcommand and \providecommand, since
-% some AMS style files use them. Also defined
-% \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.
-%
+% 11-Aug-03 0.99l, defined \renewcommand and \providecommand, since some AMS
+% style files use them. Also defined \emph, \textbf, and
+% \mbox, since many .bib files use them. This version was
+% never actually released, but these changes appear
+% starting with 0.99k-18aug05.
+% 18-Aug-05 0.99k-18aug05, made the \emph, etc., definitions effective only
+% if not already defined. Provided
+% \printcite{pre,post}item, \bblitemhook.
+% 09-Sep-07 0.99k-09sep07, executed \@citedef in a group to avoid potential
+% save-stack overflow.
+% 07-Feb-13 0.99m, made \newcommand and \providecommand be \long, and not
+% use \edef. Defined \bbltextbf.
+% 30-Sep-13 0.99n, made \@futurenonspacelet be \long,
+% renamed \@optionaltemp to \@optionalusercs,
+% ignored spaces after the optional argument.
+% 12-May-16 0.99o, renamed \@newcommand and others to \@btx..., to avoid
+% conflict with Babel's file plain.def.
+%
% The LaTeX-related commands defined in this file include
% (a) the four commands that a user types (\bibliography,
% \bibliographystyle, \cite, and \nocite);
@@ -156,7 +166,7 @@
% facility, so these macros ignore that command); and
% (c) the LaTeX commands (\newcommand, \renewcommand, \providecommand)
% that are written by a standard (alpha) or AMS bibliography style.
-% (d) a few more LaTeX commands (\emph, \textbf, \mbox) which many .bib
+% (d) a few more LaTeX commands (\emph, \mbox, \textbf) which many .bib
% files use.
%
% The definitions here are not the same as the corresponding LaTeX
@@ -520,7 +530,7 @@
% commands, \csname...\endcsname makes them equivalent to \relax
% locally in that group; when we globally redefine them, TeX enters
% the definitions on the save stack, once for each label. When done
-% in the topmost group, this can overflow stack of any size, given
+% in the topmost group, this can overflow a stack of any size, given
% sufficient number of label definitions. So, we put these
% \csname...\endcsname's inside another group, to pop the stack for
% every label.
@@ -752,7 +762,7 @@
% mentioned earlier, this \newcommand will redefine a preexisting
% command; that's different from how LaTeX's \newcommand behaves.
%
-\@innernewcount\@numparams
+\@innernewcount\@btxnumparams
%
% \newcommand{\foo}[n]{text} defines the control sequence \foo to have n
% parameters, and replacement text `text'. In LaTeX, this command gives
@@ -762,8 +772,8 @@
%
\ifx\newcommand\undefined
\long\def\newcommand#1{%
- \def\@commandname{#1}%
- \@getoptionalarg\@continuenewcommand
+ \def\@btxcommandname{#1}%
+ \@getoptionalarg\@btxcontinuenewcommand
}%
\fi
%
@@ -781,9 +791,9 @@
%
\ifx\providecommand\undefined
\long\def\providecommand#1{%
- \def\@commandname{#1}%
+ \def\@btxcommandname{#1}%
%
- \expandafter\ifx\@commandname \@undefined
+ \expandafter\ifx\@btxcommandname \@undefined
\let\cs=\@continuenewcommand % undefined, so we'll define it
\else
\let\cs=\@gobble % already defined, so ignore it
@@ -795,31 +805,31 @@
%
% Figure out if this definition has parameters.
%
-\def\@continuenewcommand{%
+\def\@btxcontinuenewcommand{%
% If no optional argument, we have zero parameters. Otherwise, we
% have that many.
- \@numparams = \ifx\@optionalarg\empty 0\else\@optionalarg \fi \relax
- \@newcommand
+ \@btxnumparams = \ifx\@optionalarg\empty 0\else\@optionalarg \fi \relax
+ \@btxnewcommand
}%
%
-% \@numparams is how many arguments this command has. The name of the
-% command is \@commandname. The replacement text for the new macro is #1.
+% \@btxnumparams is how many arguments this command has. The name of the
+% command is \@btxcommandname. The replacement text for the new macro is #1.
%
-\def\@newcommand#1{%
- \def\@startdef{\expandafter\def\@commandname}%
- \ifnum\@numparams=0
- \let\@paramdef = \empty
+\def\@btxnewcommand#1{%
+ \def\@btxstartdef{\expandafter\def\@btxcommandname}%
+ \ifnum\@btxnumparams=0
+ \let\@btxparamdef = \empty
\else
- \ifnum\@numparams>9
- \errmessage{\the\@numparams\space is too many parameters}%
+ \ifnum\@btxnumparams>9
+ \errmessage{\the\@btxnumparams\space is too many parameters}%
\else
- \ifnum\@numparams<0
- \errmessage{\the\@numparams\space is too few parameters}%
+ \ifnum\@btxnumparams<0
+ \errmessage{\the\@btxnumparams\space is too few parameters}%
\else
- \edef\@paramdef{%
- % This is disgusting, but \loop doesn't work inside \edef,
+ \edef\@btxparamdef{%
+ % This is sad, but \loop doesn't work inside \edef,
% because \body isn't defined.
- \ifcase\@numparams
+ \ifcase\@btxnumparams
\empty No arguments.
\or ####1%
\or ####1####2%
@@ -835,7 +845,7 @@
\fi
\fi
\fi
- \expandafter\@startdef\@paramdef{#1}%
+ \expandafter\@btxstartdef\@btxparamdef{#1}%
}%
%
%% [[[end of BibTeX-specific stuff]]]