|
|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T c
Length: 3867 (0xf1b)
Types: TextFile
Names: »cite.sty«
└─⟦52210d11f⟧ Bits:30007239 EUUGD2: TeX 3 1992-12
└─⟦this⟧ »latex-style/cite.sty«
% CITE.STY -- compress numerical citations.
% See also OVERCITE.STY.
%
% Copyright (C) 1989 by Donald Arseneau
% These macros may be freely transmitted, reproduced, or modified for
% non-commercial purposes provided that this notice is left intact.
%
% Instructions follow \endinput.
% ----------------------------------
%
% Pull out the code that writes the aux file citation and formats
% the number. \citen can be used by itself to give citation numbers
% without the other formatting; e.g., "See also ref.~\citen{junk}."
%
\def\citen#1{%
\if@filesw \immediate \write \@auxout {\string \citation {#1}}\fi
\@tempcntb\m@ne \let\@h@ld\relax \def\@citea{}%
\@for \@citeb:=#1\do {%
\@ifundefined {b@\@citeb}%
{\@h@ld\@citea\@tempcntb\m@ne{\bf ?}%
\@warning {Citation `\@citeb ' on page \thepage \space undefined}}%
% else
{\@tempcnta\@tempcntb \advance\@tempcnta\@ne
\setbox\z@\hbox\bgroup\ifcat0\csname b@\@citeb \endcsname \relax
\egroup \@tempcntb\number\csname b@\@citeb \endcsname \relax
\else \egroup \@tempcntb\m@ne \fi
\ifnum\@tempcnta=\@tempcntb % Number follows previous--hold on to it
\ifx\@h@ld\relax
% % first pair of successives
\edef \@h@ld{\@citea\csname b@\@citeb\endcsname}%
\else
% % compressible list of successives
% % use \hbox to avoid easy \exhyphenpenalty breaks on-line
\edef\@h@ld{\hbox{--}\penalty\@highpenalty
\csname b@\@citeb\endcsname}%
\fi
\else % non-successor--dump what's held and do this one
\@h@ld\@citea\csname b@\@citeb \endcsname
\let\@h@ld\relax
\fi}%
%% To put space after the comma, use:
\def\@citea{,\penalty\@highpenalty\hskip.13em plus.13em minus.13em}%
%% For no space after comma, use:
%% \def\@citea{,\penalty\@highpenalty}% penalty is for on-line with note.
%%
}\@h@ld}
%
% Replacement for \@citex:
%
\def\@citex[#1]#2{\@cite{\citen{#2}}{#1}}%
%
% Replacement for \@cite
%
\def\@cite#1#2{\leavevmode\unskip
\ifnum\lastpenalty=\z@\penalty\@highpenalty\fi% highpenalty before
\ [{\multiply\@highpenalty 3 #1% % triple-highpenalties within.
\if@tempswa,\penalty\@highpenalty\ #2\fi}]} % and before note.
%
\endinput
%
%
% CITE.STY
%
% Modify LaTeX's normal citation mechanism to:
%
% o Allow, but strongly discourage, line breaks within a series of
% citations. Each number is separated by a comma and a small space.
% A break at the beginning of an optional note is discouraged also.
%
% o Compress lists of three or more consecutive numbers to one number
% range which can be split, with difficulty, after the dash. No sorting
% to optimize compression is done. All numbers should be greater than
% zero. E.g., if you used to get [5,6,7,9,8,Einstein,6], then this style
% will give you [5--7,9,8,Einstein,6].
%
% o Always puts an interword space before the citation and allow a
% highpenalty break there (unless you specifically forbid it with ~).
% E.g., Something really stupid \cite{Larry,Curly,Moe}.
% ^-- This space doesn't matter.
%
% To get just the numbers (and write to the aux file) without the
% extra formatting, use \citen just like \cite.
%
% Linebreaks are allowed with triple-highpenalties after dashes
% and commas, but these may have to be taken if TeX sees no other
% viable breakpoints. If you think citations are being split
% unnecessarily, try using \sloppy or a sloppypar environment.
%
% FRAGILE!
%
% Send problem reports to asnd@triumfcl.bitnet or Arseneau@mtsg.ubc.ca
%
% test integrity:
% brackets: round, square, curly, angle: () [] {} <>
% backslash, slash, vertical, hat, tilde: \ / | ^ ~