diff options
author | Karl Berry <karl@freefriends.org> | 2007-04-26 12:39:02 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2007-04-26 12:39:02 +0000 |
commit | 12b887dd18265b4fa23960d385992f4bf0001959 (patch) | |
tree | 39693279c44d1cdbf7ef345639de540f6909d828 /Master/texmf-dist | |
parent | d4543aa76817fbab919ceddab409f6e5d5d8e450 (diff) |
custom-bib 420 (25apr07)
git-svn-id: svn://tug.org/texlive/trunk@4195 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
l--------- | Master/texmf-dist/doc/latex/custom-bib/README | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/custom-bib/README.420 (renamed from Master/texmf-dist/doc/latex/custom-bib/README.414) | 23 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/custom-bib/makebst.pdf | bin | 197158 -> 172518 bytes | |||
-rw-r--r-- | Master/texmf-dist/tex/latex/custom-bib/merlin.mbs | 284 | ||||
-rw-r--r-- | Master/texmf-dist/tpm/custom-bib.tpm | 8 |
5 files changed, 288 insertions, 29 deletions
diff --git a/Master/texmf-dist/doc/latex/custom-bib/README b/Master/texmf-dist/doc/latex/custom-bib/README index 0cf6485debd..439753d165c 120000 --- a/Master/texmf-dist/doc/latex/custom-bib/README +++ b/Master/texmf-dist/doc/latex/custom-bib/README @@ -1 +1 @@ -README.414
\ No newline at end of file +README.420
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/custom-bib/README.414 b/Master/texmf-dist/doc/latex/custom-bib/README.420 index a37c82fd5c0..8a763099723 100644 --- a/Master/texmf-dist/doc/latex/custom-bib/README.414 +++ b/Master/texmf-dist/doc/latex/custom-bib/README.420 @@ -3,13 +3,9 @@ **** INFO ****** (Work on version 4.x has been supported by the American Physical Society) -Current version is 4.14 +Current version is 4.20 ***************** -Changes: Fix a bug in inbook and incollection that suppressed chapter under - certain conditions - Add option to put a colon after article and/or book titles - Add option to format names as Jones, AB (the comma was - previously not possible) +See list of changes below ***************** This is the custom-bib package for generating customized BibTeX bibliography @@ -514,7 +510,20 @@ Refinements added to version 4.14 - add option to format names as Jones, A.B. (comma, no spaces in initials) - add option to suppress comma before et al in reference list. -October 17, 2005 +Refinements added to version 4.15 + - add option to allow new type: presentation. This is for conference talks which are + not otherwise published. Requires author, title, month, year, organization, address; + may also have key (= author number for the speaker, this name is highlighted), + type = oral or poster etc + +Refinements added to version 4.16 + - fix minor bug in proceedings, that suppressed number and series under circumstance. + +Refinements added to version 4.20 + - add option to allow citation to have more than one author before et al. added. + - add option to allow truncation for more than two, three, four, or five authors. + +April 24, 2007 Patrick W. Daly Max-Planck-Institut f\"ur Sonnensystemforschung D-37191 Katlenburg-Lindau, Germany diff --git a/Master/texmf-dist/doc/latex/custom-bib/makebst.pdf b/Master/texmf-dist/doc/latex/custom-bib/makebst.pdf Binary files differindex 3015b6e6efd..e3269954175 100644 --- a/Master/texmf-dist/doc/latex/custom-bib/makebst.pdf +++ b/Master/texmf-dist/doc/latex/custom-bib/makebst.pdf diff --git a/Master/texmf-dist/tex/latex/custom-bib/merlin.mbs b/Master/texmf-dist/tex/latex/custom-bib/merlin.mbs index 6e5014dc22b..f1c9cd61aac 100644 --- a/Master/texmf-dist/tex/latex/custom-bib/merlin.mbs +++ b/Master/texmf-dist/tex/latex/custom-bib/merlin.mbs @@ -1,6 +1,6 @@ -%\iffalse THIS IS A META COMMENT +%\iffalse THIS IS A META COMMENT -*- TeX -*- -*- DTX -*- % File: merlin.mbs -%% Copyright 1994-2005 Patrick W Daly +%% Copyright 1994-2007 Patrick W Daly % Max-Planck-Institut f\"ur Sonnensystemforschung % Max-Planck-Str. 2 % D-37191 Katlenburg-Lindau @@ -44,7 +44,7 @@ % =============================================================== % Name and version information of the main mbs file: %\fi - % \ProvidesFile{merlin.mbs}[2005/10/17 4.14 (PWD, AO, DPC)] + % \ProvidesFile{merlin.mbs}[2007/04/24 4.20 (PWD, AO, DPC)] %\iffalse %</!tail> %<*a&!a> @@ -88,7 +88,7 @@ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % -% \CheckSum{450} +% \CheckSum{516} % \setcounter{StandardModuleDepth}{1} % \setcounter{IndexColumns}{2} % \setlength{\IndexMin}{10cm} @@ -248,7 +248,7 @@ % \texttt{pp-last} and \texttt{dt-beg}} % \changes{4.06}{2003 Apr 2}{PWD: add \texttt{nmd-2} and \texttt{nmd-3} for use with \texttt{nmdash}} % \changes{4.10}{2003 May 28}{PWD: add DOI} -% \changes{4.10}{2003 June 3}{PWD: use \texttt{\backslash providecommand} +% \changes{4.10}{2003 June 3}{PWD: use \texttt{\protect\bslash providecommand} % instead of \TeX\ commands, but provide \texttt{noprov} option to undo it.} % \changes{4.10}{2003 June 3}{PWD: make \texttt{eid} available not just for Rev\TeX} % \changes{4.10}{2003 June 11}{PWD: add \texttt{pg-pre} for total book pages location} @@ -263,6 +263,10 @@ % \changes{4.13}{2004 Feb 9}{PWD: add option \texttt{tit-col} for colon after titles} % \changes{4.14}{2005 Oct 17}{PWD: add option \texttt{nm-rvvc}, spaceless initials with comma} % \changes{4.14}{2005 Oct 17}{PWD: add option \texttt{etal-xc} to suppress comma before et al.} +% \changes{4.15}{2006 Jan 4}{PWD: add option \texttt{pres} for conference talks, presentations} +% \changes{4.16}{2006 Feb 15}{PWD: fix bug in \texttt{proceedings} that suppress number/series at times} +% \changes{4.20}{2007 Apr 23}{PWD: add option to allow more than one author in cites before et al.} +% \changes{4.20}{2007 Apr 24}{PWD: allow variable number of authors before truncating citation} % % \pagestyle{myheadings} % \markboth{P. W. Daly}{A General Master Bibliography Style} @@ -849,6 +853,22 @@ % \item[annote] annotations enabled, with \texttt{annote} field. % \end{opt} % +% \textbf{Presentations:} +% add a non-standard type to handle talks (presentations). This is similar to the +% \texttt{inproceedings} but without \texttt{booktitle} and with the presenting +% author in bold face. This author is specified by the \texttt{key} entry, which +% is that author's position in the author list (1, 2, \dots). The type of presentation +% (oral or poster) is specified by the entry \texttt{type}. The date without year is given +% in \texttt{month}, which must be present. +% \begin{opt} +% \item[--] no presentations +% \item[pres] include a \texttt{presentation} type +% \item[pres-bf] (with \texttt{pres}) to put speaker in bold face +% \item[pres-it] (with \texttt{pres}) to put speaker in italics +% \item[pres-sc] (with \texttt{pres}) to put speaker in small caps +% \end{opt} +% Without any of the extra font options, the speaker's name is not highlighted. +% % \textbf{Missing names:} % If the author and/or editor is missing, the standard \texttt{.bst} files % use the \texttt{key} field in place of the names for purposes of ordering the @@ -894,7 +914,7 @@ % junior part last, after the (reversed) first name % \end{opt} % -% \textbf{Number of names:} normally all names listed (in reference list) +% \textbf{Number of names in bibliography:} normally all names listed (in reference list) % \begin{opt} % \item[nmlm] limit number of names % \item[x1...x90] (with \texttt{nmlm}) maximum number of names to appear; @@ -906,6 +926,17 @@ % one \texttt{m} number must be given, and {\tt x}$\le${\tt m} % \end{opt} % +% \textbf{Number of names in citation:} before \textsl{et al.} +% +% The default is to cite one or two names at most, but for three or more, to +% cite only one name with \textsl{et~ al.} +% \begin{opt} +% \item[mcite] to change the default +% \item[mct-1...mct-5] (with \texttt{mcite}) number of names preceding \textsl{et~al.} +% \item[mct-x2...mct-x5] (with \texttt{mcite}) max number of authors without truncating +% \end{opt} +% The default is equivalent to \texttt{mct-1} and \texttt{mct-x2}. +% % \textbf{Names font:} in the reference list % \begin{opt} % \item[--] default is names in normal typeface @@ -1532,6 +1563,23 @@ \endoptiongroup % \end{macrocode} % +% \subsection*{Presentations} +% Presentations are talks at meetings, oral or poster, that are not otherwise +% published. The author making the presentation is indicated with the \texttt{key} +% entry, which is the speaker's number within the author list. The font used +% to highlight the speaker is either bold or italics, depending on the secondary +% option, otherwise not highlighted. +% \begin{macrocode} +\beginoptiongroup{PRESENTATIONS:}{} +\optdef{*}{}{Do not add presentation type}{for conference talks} +\optdef{p}{pres}{Add presentation, speaker not highlighted}{} +\optdef{b}{pres,pres-bf}{Presentation, speaker bold face}{} +\optdef{i}{pres,pres-it}{Presentaion, speaker italic}{} +\optdef{c}{pres,pres-sc}{Presentaion, speaker in small caps}{} +\getans +\endoptiongroup +% \end{macrocode} +% % \subsection*{Ordering of the listed references} % Choices here depend on citation style. The default in both cases is % alphabetical order of all authors. For numerical style, one may also @@ -1710,7 +1758,7 @@ % \texttt{.bst} file itself (it might be possible, but I found it too complex), % this is done here. % \begin{macrocode} -\beginoptiongroup{NUMBER OF AUTHORS:}{} +\beginoptiongroup{NUMBER OF AUTHORS IN BIBLIOGRAPHY:}{} \optdef{*}{}{All authors}{included in listing} \optdef{l}{nmlm}{Limited authors}{(et al replaces missing names)} \getans @@ -1739,6 +1787,38 @@ % \end{macrocode} % +% Something that I finally add after being asked many times, is to allow for +% more than one name in the citation before inserting \textsl{et~al.} +% to allow more than 2 authors before truncating +% \begin{macrocode} +\beginoptiongroup{AUTHORS IN CITATIONS:}{} +\optdef{*}{}{One author et al}{for three or more authors} +\optdef{m}{mcite}{Some other truncation scheme}{} +\getans +\endoptiongroup +\mytempfalse +\if\ans m\mytemptrue\fi +\beginoptiongroup{MAX AUTHORS BEFORE ET AL: + (if regular cite not selected)} + {\ifmytemp*\fi}% +\optdef{*}{mct-1}{One et al}{} +\optdef{2}{mct-2}{One, Two et al}{} +\optdef{3}{mct-3}{One, Two, Three et al}{} +\optdef{4}{mct-4}{One, Two, Three, Four et al}{} +\optdef{5}{mct-5}{One, Two, Three, Four, Five et al}{} +\getans +\endoptiongroup +\beginoptiongroup{MAX AUTHORS WITHOUT ET AL: + (if regular cite not selected)} + {\ifmytemp*\fi}% +\optdef{*}{mct-x2}{Two authors without truncating}{} +\optdef{3}{mct-x3}{Three authors}{without truncating} +\optdef{4}{mct-x4}{Four authors}{without truncating} +\optdef{5}{mct-x5}{Five authors}{without truncating} +\getans +\endoptiongroup +% \end{macrocode} +% % \subsection*{Typeface of names} % The author names in the list of references normally appear in the current % typeface. This may be changed to small caps, bold, or italics. @@ -3415,7 +3495,7 @@ FUNCTION {emphasize} % The bold font command may be NFSS or the regular \LaTeX~2.09 declaration. %\changes{1.3(2.1)}{1994 Jul 1}{Add \texttt{nfss} option} % \begin{macrocode} -%<*nmft-bf|vol-bf|vol-2bf|lab-bf|dtbf> +%<*nmft-bf|vol-bf|vol-2bf|lab-bf|dtbf|pres-bf> FUNCTION {bolden} { duplicate$ empty$ { pop$ "" } @@ -3426,7 +3506,7 @@ FUNCTION {bolden} %</!html> if$ } -%</nmft-bf|vol-bf|vol-2bf|lab-bf|dtbf> +%</nmft-bf|vol-bf|vol-2bf|lab-bf|dtbf|pres-bf> % \end{macrocode} % \end{macro} % @@ -3434,7 +3514,7 @@ FUNCTION {bolden} % To put text into small caps. %\changes{3.0}{1995 Mar 3}{Add function} % \begin{macrocode} -%<*lab-sc|nmft-sc> +%<*lab-sc|nmft-sc|pres-sc> FUNCTION {scaps} { duplicate$ empty$ { pop$ "" } @@ -3445,7 +3525,7 @@ FUNCTION {scaps} %</!html> if$ } -%</lab-sc|nmft-sc> +%</lab-sc|nmft-sc|pres-sc> % \end{macrocode} % \end{macro} % @@ -4260,6 +4340,35 @@ FUNCTION {format.url} % \end{macrocode} % \end{macro} % +% \begin{macro}{`check.speaker'} +% \changes{4.15}{2006 Jan 4}{Add \texttt{presentation}, which needs this function +% to highlight speaker name} +% The \texttt{presentation} type uses the \texttt{key} entry to indicate which +% author is the speaker, as the sequence number in the author list. The speaker's +% name is put into a different font, depending on the extra option. If no font +% is specified, all names are the same. +% \begin{macrocode} +INTEGERS { nameptr namesleft numnames } + +%<*pres-bf|pres-it|pres-sc> +FUNCTION {check.speaker} +{ key empty$ 'skip$ + { key nameptr int.to.str$ = + { +%<pres-bf> bolden +%<pres-it&!pres-bf> emphasize +%<pres-sc&!pres-it&!pres-bf> scaps + } + 'skip$ + if$ + } + if$ +} + +%</pres-bf|pres-it|pres-sc> +% \end{macrocode} +% \end{macro} + % \begin{macro}{`format.names'} % \changes{1.5(2.3)}{1994 Sep 16}{Add \texttt{harvard} command for `and' with % new option \texttt{harnm}} @@ -4309,7 +4418,6 @@ FUNCTION {format.url} % just before the call. % \begin{macrocode} STRINGS { bibinfo} -INTEGERS { nameptr namesleft numnames } % \end{macrocode} % @@ -4541,6 +4649,12 @@ FUNCTION {format.names} * %</nmft&(fnm-rm|fnm-def)> bibinfo bibinfo.check +%<*pres-bf|pres-it|pres-sc> + type$ "presentation" = + { check.speaker } + 'skip$ + if$ +%</pres-bf|pres-it|pres-sc> 't := nameptr #1 > { @@ -5253,6 +5367,7 @@ FUNCTION {end.quote.btitle} % \changes{3.89}{1999 May 20}{Reset \texttt{t}; might still be ``others'' % from last format function} % \changes{3.98}{1999 May 28}{Fix bug with \texttt{harnm}, missing brace} +% \changes{4.20}{2007 Apr 23}{Format juniors to be same as for \texttt{format.lab.names}} % \begin{macrocode} %<*har|cay|nat> FUNCTION {format.full.names} @@ -5263,7 +5378,11 @@ FUNCTION {format.full.names} numnames 'namesleft := { namesleft #0 > } { s nameptr - "{vv~}{ll}" format.name$ +%<!jnrlab> "{vv~}{ll}" format.name$ +%<*jnrlab> +%<!nm-rv&!nm-rvv&!nm-rvx&!nm-rvcx> "{vv~}{ll}{, jj}" format.name$ +%<nm-rv|nm-rvv|nm-rvx|nm-rvcx> "{vv~}{ll}{ jj}" format.name$ +%</jnrlab> %<lab&and-rm> cite.name.font 't := nameptr #1 > @@ -7004,7 +7123,7 @@ FUNCTION {booklet} % \changes{4.13}{2004 Feb 9}{Restore chap specification with \texttt{dt-jnl} option.} % Restore the chapter specification (2004 Feb 9) after someone complained. % There are still some bugs here. If some date punctuation is specified, say -% with \texttt{yrp-semi) for a semi-colon after the year, this appears always, +% with \texttt{yrp-semi} for a semi-colon after the year, this appears always, % even if there is no text following. But then this to be an unlikely wish anyway, % since such punctuation options are best suited for \texttt{dt-beg}. % \begin{macrocode} @@ -7509,9 +7628,47 @@ FUNCTION {phdthesis} % \end{macrocode} % \end{macro} % +% \begin{macro}{`presentation'} +% \begin{macrocode} +%<*pres> +FUNCTION {presentation} +{ output.bibitem + format.authors output +%<ay> author format.key output +%<au-col> add.colon +%<nmdash> name.or.dash +%<!blk-com&!blk-tit&!blk-tita> new.block + format.title output +%<blk-com&tit-qq> end.quote.title +%<!blk-com&!blk-tit&!blk-tita> new.block +%<blk-tit&!tit-col> new.sentence +%<blk-tit&tit-col> add.colon + format.organization.address "organization and address" output.check + month "month" output.check + year "year" output.check +%<!blk-com&!blk-tit&!blk-tita> new.block +%<(blk-com|blk-tit|blk-tita)&blknt> new.sentence + format.note output + new.sentence + type missing$ 'skip$ + {"(" type capitalize * ")" * output} + if$ +%<*url-blk&!harnm> +%<!blk-com&!blk-tit&!blk-tita> new.block + format.url output +%</url-blk&!harnm> + fin.entry +%<(harnm|url-nl)&!revdata> write.url +} + +%</pres> +% \end{macrocode} +% \end{macro} +% % \begin{macro}{`proceedings'} % \changes{3.89d1}{1999 July 20}{AO: call \texttt{format.eprint}, and \texttt{format.url}.} % \changes{4.10}{2003 May 28}{Add \texttt{format.doi}} +% \changes{4.16}{2006 Feb 15}{For numerical, the number/series could be missing when editor there; fixed} % \begin{macrocode} %<*ay> FUNCTION {proceedings} @@ -7574,7 +7731,7 @@ FUNCTION {proceedings} %<!numser> format.number.series output editor empty$ { publisher empty$ - 'skip$ +%<numser> { format.number.series output } { %<!blk-com&!blk-tit&!blk-tita> new.sentence %<numser> format.number.series output @@ -7585,9 +7742,11 @@ FUNCTION {proceedings} { publisher empty$ { %<!blk-com&!blk-tit&!blk-tita> new.sentence +%<numser> format.number.series output format.organization.address output } { %<!blk-com&!blk-tit&!blk-tita> new.sentence +%<numser> format.number.series output organization "organization" bibinfo.check output format.publisher.address output } @@ -7855,8 +8014,10 @@ FUNCTION {format.lab.names} % \end{macrocode} % \changes{3.89}{1999 May 20}{Reset \texttt{t}; might still be ``others'' % from last format function} +% The function for the standard citation: one or two authors cited full, but for +% more than two, only the first with \emph{et~al.} given. % \begin{macrocode} -%<*ay> +%<*ay&!mcite> FUNCTION {format.lab.names} { 's := "" 't := @@ -7921,7 +8082,96 @@ FUNCTION {format.lab.names} %</lab&!and-rm> } -%</ay> +%</ay&!mcite> +% \end{macrocode} +% +% \changes{4.20}{2007 Apr 23}{Add citations with more than one author with \emph{et~al.}} +% \changes{4.20}{2007 Apr 24}{Select number of authors before truncating} +% The code for formating author--year citations with more than one author +% before \emph{et al.} or selecting a number other than two for truncating, +% is much the same as the \texttt{format.full.names} function. +% \begin{macrocode} +%<*ay&mcite> +FUNCTION {format.lab.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr +%<!jnrlab> "{vv~}{ll}" format.name$ +%<*jnrlab> +%<!nm-rv&!nm-rvv&!nm-rvx&!nm-rvcx> "{vv~}{ll}{, jj}" format.name$ +%<nm-rv|nm-rvv|nm-rvx|nm-rvcx> "{vv~}{ll}{ jj}" format.name$ +%</jnrlab> +%<lab&and-rm> cite.name.font + 't := + nameptr #1 > + { +%<mct-1> nameptr #2 = +%<mct-2> nameptr #3 = +%<mct-3> nameptr #4 = +%<mct-4> nameptr #5 = +%<mct-5> nameptr #6 = +%<mct-x2> numnames #2 > and +%<mct-x3> numnames #3 > and +%<mct-x4> numnames #4 > and +%<mct-x5> numnames #5 > and + { "others" 't := + #1 'namesleft := } + 'skip$ + if$ + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { +%<lab&!and-rm&(etal-it|etal-rm)> cite.name.font +%<*!etal-it> +%<lab&and-rm&!etal-rm> " " * bbl.etal cite.name.font * +%<!lab|!and-rm|etal-rm> " " * bbl.etal * +%</!etal-it> +%<etal-it> " " * bbl.etal emphasize * +%<lab&!and-rm&!(etal-it|etal-rm)> cite.name.font + } + { +%<*!harnm> +%<*!and-xcom> + numnames #2 > + { "," * } + 'skip$ + if$ +%</!and-xcom> +%<!amper> bbl.and +%<amper> "\&" +%</!harnm> +%<harnm> "\harvardand{}" + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +%<*lab&!and-rm> + t "others" = + 'skip$ + { cite.name.font } + if$ +%</lab&!and-rm> +} + +%</ay&mcite> % \end{macrocode} % \end{macro} % diff --git a/Master/texmf-dist/tpm/custom-bib.tpm b/Master/texmf-dist/tpm/custom-bib.tpm index 68ef83b9be5..930442e27b1 100644 --- a/Master/texmf-dist/tpm/custom-bib.tpm +++ b/Master/texmf-dist/tpm/custom-bib.tpm @@ -3,7 +3,7 @@ <rdf:Description about="http://texlive.dante.de/texlive/Package/custom-bib.zip"> <TPM:Name>custom-bib</TPM:Name> <TPM:Type>Package</TPM:Type> - <TPM:Date>2006/01/11 23:52:11</TPM:Date> + <TPM:Date>2007/04/26 12:38:37</TPM:Date> <TPM:Version>4.05</TPM:Version> <TPM:Creator>rahtz</TPM:Creator> <TPM:Title>Customised BibTeX styles.</TPM:Title> @@ -17,7 +17,7 @@ style. <TPM:Size>813589</TPM:Size> <TPM:License></TPM:License> <TPM:Build/> - <TPM:RunFiles size="506803"> + <TPM:RunFiles size="515554"> texmf-dist/tex/latex/custom-bib/catalan.mbs texmf-dist/tex/latex/custom-bib/dansk.mbs texmf-dist/tex/latex/custom-bib/dutch.mbs @@ -42,9 +42,9 @@ texmf-dist/tex/latex/custom-bib/spanish.mbs texmf-dist/tex/latex/custom-bib/suppjour.mbs texmf-dist/tpm/custom-bib.tpm </TPM:RunFiles> - <TPM:DocFiles size="248304"> + <TPM:DocFiles size="224496"> texmf-dist/doc/latex/custom-bib/README -texmf-dist/doc/latex/custom-bib/README.414 +texmf-dist/doc/latex/custom-bib/README.420 texmf-dist/doc/latex/custom-bib/makebst.pdf </TPM:DocFiles> <TPM:SourceFiles size="58482"> |