texlive[57925] Master/texmf-dist: bath-bst (25feb21)
commits+karl at tug.org
commits+karl at tug.org
Thu Feb 25 23:08:34 CET 2021
Revision: 57925
http://tug.org/svn/texlive?view=revision&revision=57925
Author: karl
Date: 2021-02-25 23:08:34 +0100 (Thu, 25 Feb 2021)
Log Message:
-----------
bath-bst (25feb21)
Modified Paths:
--------------
trunk/Master/texmf-dist/bibtex/bst/bath-bst/bath.bst
trunk/Master/texmf-dist/bibtex/bst/bath-bst/bathx.bst
trunk/Master/texmf-dist/doc/bibtex/bath-bst/README.md
trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst-v1.bib
trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst-v1.pdf
trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst-v1.tex
trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst.bib
trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst.pdf
trunk/Master/texmf-dist/source/bibtex/bath-bst/bath-bst.dtx
Removed Paths:
-------------
trunk/Master/texmf-dist/source/bibtex/bath-bst/bath-bst.ins
Modified: trunk/Master/texmf-dist/bibtex/bst/bath-bst/bath.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/bath-bst/bath.bst 2021-02-25 22:08:09 UTC (rev 57924)
+++ trunk/Master/texmf-dist/bibtex/bst/bath-bst/bath.bst 2021-02-25 22:08:34 UTC (rev 57925)
@@ -238,22 +238,21 @@
if$
}
FUNCTION {is.online}
-{ type$ "software" =
- { #0 }
- { url empty$ doi empty$ and
- { type$ "online" =
- { #1 }
- { #0 }
- if$
- }
+{ url empty$ doi empty$ and
+ { type$ "online" =
{ #1 }
+ { #0 }
if$
}
+ { #1 }
if$
}
FUNCTION {bbl.and}
{ "and"}
+FUNCTION {bbl.byeditor}
+{ "Ed. by" }
+
FUNCTION {bbl.etal}
{ "et~al." }
@@ -485,6 +484,14 @@
FUNCTION {format.authors}
{ author "author" format.names
}
+FUNCTION {format.byeditors}
+{ editor "editor" format.names.ed duplicate$ empty$ 'skip$
+ { bbl.byeditor
+ " " *
+ swap$ *
+ }
+ if$
+}
FUNCTION {get.bbl.editor}
{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }
FUNCTION {format.editors}
@@ -661,6 +668,10 @@
continue.clause
format.titleaddon output
continue.clause
+ type$ "reference" =
+ { format.byeditors output }
+ 'skip$
+ if$
format.translators output
}
FUNCTION {word.in}
@@ -667,17 +678,23 @@
{ bbl.in capitalize
":" *
" " * }
-FUNCTION {format.booktitle}
+FUNCTION {format.label.booktitle}
{ booktitle
duplicate$ empty$ 'skip$
{ "t" change.case$ }
if$
"booktitle" bibinfo.check
+}
+FUNCTION {format.booktitle}
+{ format.label.booktitle
emphasize
}
FUNCTION {format.in.ed.booktitle}
-{ format.booktitle duplicate$ empty$ 'skip$
- { editor "editor" format.names.ed duplicate$ empty$ 'pop$
+{ format.booktitle
+ duplicate$ empty$
+ 'skip$
+ {
+ editor "editor" format.names.ed duplicate$ empty$ 'pop$
{ "," *
" " *
get.bbl.editor add.period$
@@ -1506,13 +1523,17 @@
{ output.bibitem
author empty$
{ editor empty$
- { format.btitle "title" output.check
+ type$ "reference" =
+ or
+ { type$ "reference" =
+ { format.title "title" output.check }
+ { format.btitle "title" output.check }
+ if$
format.date "year" output.check
year empty$ 'skip$ { date.block } if$
get.title.addenda
}
{ format.editors "author and editor" output.check
- editor format.key output
format.date "year" output.check
date.block
format.btitle "title" output.check
@@ -1598,6 +1619,8 @@
date.block
format.btitle "title" output.check
get.title.addenda
+ new.block
+ format.edition output
crossref missing$
{ format.publisher.address output
format.bvolume output
@@ -1611,7 +1634,6 @@
format.book.crossref output.nonnull
}
if$
- format.edition output
new.block
format.note output
new.block
@@ -1621,22 +1643,49 @@
}
FUNCTION {incollection}
{ output.bibitem
- format.authors "author" output.check
- author format.key output
- format.date "year" output.check
- date.block
- format.title "title" output.check
- get.title.addenda
+ author empty$
+ { type$ "inreference" =
+ { format.label.booktitle output }
+ { format.title "title" output.check }
+ if$
+ format.date "year" output.check
+ year empty$ 'skip$ { date.block } if$
+ type$ "inreference" =
+ 'skip$
+ { get.title.addenda }
+ if$
+ }
+ { format.authors output.nonnull
+ format.date "year" output.check
+ date.block
+ format.title "title" output.check
+ get.title.addenda
+ }
+ if$
new.block
crossref missing$
- { format.in.ed.booktitle "booktitle" output.check
+ { type$ "inreference" =
+ author empty$
+ and
+ { format.byeditors output }
+ { format.in.ed.booktitle "booktitle" output.check }
+ if$
new.block
+ format.edition output
+ new.block
+ type$ "inreference" =
+ author empty$
+ and
+ { format.btitle "title" output.check
+ get.title.addenda
+ new.block
+ }
+ 'skip$
+ if$
format.publisher.address output
format.bvolume output
format.number.series output
format.chapter.pages output
- new.sentence
- format.edition output
}
{ format.incoll.inproc.crossref output.nonnull
format.chapter.pages output
@@ -2052,6 +2101,9 @@
'article
if$
}
+FUNCTION {collection} { book }
+FUNCTION {reference} { book }
+FUNCTION {inreference} { incollection }
FUNCTION {audio} { booklet }
FUNCTION {movie} { booklet }
FUNCTION {music} { booklet }
@@ -2161,18 +2213,28 @@
FUNCTION {author.key.label}
{ author empty$
{ key empty$
- { title empty$
- { cite$ #1 #3 substring$ }
- { title
- type$ "article" =
- type$ "incollection" =
- or
- type$ "inproceedings" =
- or
- type$ "misc" =
- or
- 'skip$
- { emphasize }
+ { type$ "inreference" =
+ booktitle empty$ not
+ and
+ { booktitle }
+ { title empty$
+ { cite$ #1 #3 substring$ }
+ { title
+ type$ "article" =
+ type$ "incollection" =
+ or
+ type$ "inproceedings" =
+ or
+ type$ "reference" =
+ author empty$
+ and
+ or
+ type$ "misc" =
+ or
+ 'skip$
+ { emphasize }
+ if$
+ }
if$
}
if$
@@ -2283,15 +2345,21 @@
}
FUNCTION {author.sort}
{ author empty$
- { title empty$
- { key empty$
- { "to sort, need author, title, or key in " cite$ * warning$
- ""
+ { type$ "inreference" =
+ booktitle empty$ not
+ and
+ { booktitle sort.format.title }
+ { title empty$
+ { key empty$
+ { "to sort, need author, title, or key in " cite$ * warning$
+ ""
+ }
+ { key sortify }
+ if$
}
- { key sortify }
+ { title sort.format.title }
if$
}
- { title sort.format.title }
if$
}
{ author sort.format.names }
@@ -2425,6 +2493,6 @@
}
EXECUTE {end.bib}
%%
-%% Copyright (C) 2020 by University of Bath
+%% Copyright (C) 2016-2021 by University of Bath
%%
%% End of file `bath.bst'.
Modified: trunk/Master/texmf-dist/bibtex/bst/bath-bst/bathx.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/bath-bst/bathx.bst 2021-02-25 22:08:09 UTC (rev 57924)
+++ trunk/Master/texmf-dist/bibtex/bst/bath-bst/bathx.bst 2021-02-25 22:08:34 UTC (rev 57925)
@@ -238,22 +238,21 @@
if$
}
FUNCTION {is.online}
-{ type$ "software" =
- { #0 }
- { url empty$ doi empty$ and
- { type$ "online" =
- { #1 }
- { #0 }
- if$
- }
+{ url empty$ doi empty$ and
+ { type$ "online" =
{ #1 }
+ { #0 }
if$
}
+ { #1 }
if$
}
FUNCTION {bbl.and}
{ "and"}
+FUNCTION {bbl.byeditor}
+{ "Ed. by" }
+
FUNCTION {bbl.etal}
{ "et~al." }
@@ -485,6 +484,14 @@
FUNCTION {format.authors}
{ author "author" format.names
}
+FUNCTION {format.byeditors}
+{ editor "editor" format.names.ed duplicate$ empty$ 'skip$
+ { bbl.byeditor
+ " " *
+ swap$ *
+ }
+ if$
+}
FUNCTION {get.bbl.editor}
{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }
FUNCTION {format.editors}
@@ -661,29 +668,41 @@
continue.clause
format.titleaddon output
continue.clause
- library empty$
- type$ "image" =
- or
is.online
- and
journal empty$
and
- type empty$
- type$ "booklet" = not
- type$ "audio" = not
- and
- type$ "video" = not
- and
- type$ "music" = not
- and
- type$ "movie" = not
- and
+ booktitle empty$
+ type$ "inreference" =
+ author empty$
+ and
or
and
+ library empty$
+ type$ "image" =
+ or
+ and
+ type$ "software" = not
+ and
+ type empty$
+ type$ "booklet" = not
+ type$ "audio" = not
+ and
+ type$ "video" = not
+ and
+ type$ "music" = not
+ and
+ type$ "movie" = not
+ and
+ or
+ and
{ bbl.online output }
'skip$
if$
continue.clause
+ type$ "reference" =
+ { format.byeditors output }
+ 'skip$
+ if$
format.translators output
}
FUNCTION {word.in}
@@ -690,17 +709,29 @@
{ bbl.in capitalize
":" *
" " * }
-FUNCTION {format.booktitle}
+FUNCTION {format.label.booktitle}
{ booktitle
duplicate$ empty$ 'skip$
{ "t" change.case$ }
if$
"booktitle" bibinfo.check
+}
+FUNCTION {format.booktitle}
+{ format.label.booktitle
emphasize
}
FUNCTION {format.in.ed.booktitle}
-{ format.booktitle duplicate$ empty$ 'skip$
- { editor "editor" format.names.ed duplicate$ empty$ 'pop$
+{ format.booktitle
+ duplicate$ empty$
+ 'skip$
+ {
+ is.online
+ { " " *
+ bbl.online *
+ }
+ 'skip$
+ if$
+ editor "editor" format.names.ed duplicate$ empty$ 'pop$
{ "," *
" " *
get.bbl.editor add.period$
@@ -1556,13 +1587,17 @@
{ output.bibitem
author empty$
{ editor empty$
- { format.btitle "title" output.check
+ type$ "reference" =
+ or
+ { type$ "reference" =
+ { format.title "title" output.check }
+ { format.btitle "title" output.check }
+ if$
format.date "year" output.check
year empty$ 'skip$ { date.block } if$
get.title.addenda
}
{ format.editors "author and editor" output.check
- editor format.key output
format.date "year" output.check
date.block
format.btitle "title" output.check
@@ -1648,6 +1683,8 @@
date.block
format.btitle "title" output.check
get.title.addenda
+ new.block
+ format.edition output
crossref missing$
{ format.publisher.address output
format.bvolume output
@@ -1661,7 +1698,6 @@
format.book.crossref output.nonnull
}
if$
- format.edition output
new.block
format.note output
new.block
@@ -1671,22 +1707,49 @@
}
FUNCTION {incollection}
{ output.bibitem
- format.authors "author" output.check
- author format.key output
- format.date "year" output.check
- date.block
- format.title "title" output.check
- get.title.addenda
+ author empty$
+ { type$ "inreference" =
+ { format.label.booktitle output }
+ { format.title "title" output.check }
+ if$
+ format.date "year" output.check
+ year empty$ 'skip$ { date.block } if$
+ type$ "inreference" =
+ 'skip$
+ { get.title.addenda }
+ if$
+ }
+ { format.authors output.nonnull
+ format.date "year" output.check
+ date.block
+ format.title "title" output.check
+ get.title.addenda
+ }
+ if$
new.block
crossref missing$
- { format.in.ed.booktitle "booktitle" output.check
+ { type$ "inreference" =
+ author empty$
+ and
+ { format.byeditors output }
+ { format.in.ed.booktitle "booktitle" output.check }
+ if$
new.block
+ format.edition output
+ new.block
+ type$ "inreference" =
+ author empty$
+ and
+ { format.btitle "title" output.check
+ get.title.addenda
+ new.block
+ }
+ 'skip$
+ if$
format.publisher.address output
format.bvolume output
format.number.series output
format.chapter.pages output
- new.sentence
- format.edition output
}
{ format.incoll.inproc.crossref output.nonnull
format.chapter.pages output
@@ -2102,6 +2165,9 @@
'article
if$
}
+FUNCTION {collection} { book }
+FUNCTION {reference} { book }
+FUNCTION {inreference} { incollection }
FUNCTION {audio} { booklet }
FUNCTION {movie} { booklet }
FUNCTION {music} { booklet }
@@ -2211,18 +2277,28 @@
FUNCTION {author.key.label}
{ author empty$
{ key empty$
- { title empty$
- { cite$ #1 #3 substring$ }
- { title
- type$ "article" =
- type$ "incollection" =
- or
- type$ "inproceedings" =
- or
- type$ "misc" =
- or
- 'skip$
- { emphasize }
+ { type$ "inreference" =
+ booktitle empty$ not
+ and
+ { booktitle }
+ { title empty$
+ { cite$ #1 #3 substring$ }
+ { title
+ type$ "article" =
+ type$ "incollection" =
+ or
+ type$ "inproceedings" =
+ or
+ type$ "reference" =
+ author empty$
+ and
+ or
+ type$ "misc" =
+ or
+ 'skip$
+ { emphasize }
+ if$
+ }
if$
}
if$
@@ -2333,15 +2409,21 @@
}
FUNCTION {author.sort}
{ author empty$
- { title empty$
- { key empty$
- { "to sort, need author, title, or key in " cite$ * warning$
- ""
+ { type$ "inreference" =
+ booktitle empty$ not
+ and
+ { booktitle sort.format.title }
+ { title empty$
+ { key empty$
+ { "to sort, need author, title, or key in " cite$ * warning$
+ ""
+ }
+ { key sortify }
+ if$
}
- { key sortify }
+ { title sort.format.title }
if$
}
- { title sort.format.title }
if$
}
{ author sort.format.names }
@@ -2475,6 +2557,6 @@
}
EXECUTE {end.bib}
%%
-%% Copyright (C) 2020 by University of Bath
+%% Copyright (C) 2016-2021 by University of Bath
%%
%% End of file `bathx.bst'.
Modified: trunk/Master/texmf-dist/doc/bibtex/bath-bst/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/bibtex/bath-bst/README.md 2021-02-25 22:08:09 UTC (rev 57924)
+++ trunk/Master/texmf-dist/doc/bibtex/bath-bst/README.md 2021-02-25 22:08:34 UTC (rev 57925)
@@ -53,9 +53,10 @@
2. Compile `bath-bst.dtx` with [LuaLaTeX] and BibTeX to generate the
documentation. You will need, among other things, the [luatexja],
- [adobemapping] and [ipaex] packages installed; this is just for the
- documentation, not for the BibTeX style itself. To generate the version 1
- tests and documentation, compile `bath-bst-v1.tex` with LuaLaTeX and BibTeX.
+ [adobemapping], [ipaex] and [haranoaji] packages installed; this is just for
+ the documentation, not for the BibTeX style itself. To generate the version
+ 1 tests and documentation, compile `bath-bst-v1.tex` with LuaLaTeX and
+ BibTeX.
3. If you are using TeX Live, find your home TeX tree using the following
command at the command prompt/terminal:
@@ -93,10 +94,11 @@
[luatexja]: http://ctan.org/pkg/luatexja
[adobemapping]: http://ctan.org/pkg/adobemapping
[ipaex]: http://ctan.org/pkg/ipaex
+[haranoaji]: http://ctan.org/pkg/haranoaji
## Licence
-Copyright 2016-2020 University of Bath.
+Copyright 2016-2021 University of Bath.
This work consists of the documented LaTeX file bath-bst.dtx and a Makefile.
Modified: trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst-v1.bib
===================================================================
--- trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst-v1.bib 2021-02-25 22:08:09 UTC (rev 57924)
+++ trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst-v1.bib 2021-02-25 22:08:34 UTC (rev 57925)
@@ -35,6 +35,27 @@
titleaddon = {[Kindle version 4.18]},
address = {Bath},
publisher = {University of Bath}}
+ at reference{bnf2020,
+ year = {2020},
+ title = {{British National Formulary}},
+ edition = {79},
+ address = {London},
+ publisher = {Pharmaceutical Press}}
+ at inreference{asprin2020bnf,
+ title = {Asprin},
+ year = {2020},
+ booktitle = {{British National Formulary}},
+ edition = {79},
+ address = {London},
+ publisher = {Pharmaceutical Press}}
+ at inreference{asprin2019bnf,
+ title = {Asprin},
+ year = {2019},
+ booktitle = {{British National Formulary \textup{[Online]}}},
+ address = {London},
+ publisher = {Pharmaceutical Press},
+ url = {https://www.medicinescomplete.com/\#/content/bnf/_456850132},
+ urldate = {26 November 2019}}
@incollection{burchard1965hhl,
author = {Burchard, J. E.},
year = {1965},
@@ -223,6 +244,20 @@
series = {1 inch to 2 miles},
address = {Devizes},
publisher = {Wiltshire Record Society}}
+ at manual{os2020bath,
+ author = {{Ordnance Survey}},
+ year = {2020},
+ title = {Street view map of {University of Bath}},
+ series = {1:5000, OS VectorMap® Local},
+ url = {https://digimap.edina.ac.uk/roam/map/os},
+ urlyear = {30 April 2020}}
+ at manual{google2020harbourside,
+ author = {{Google}},
+ year = {2020},
+ title = {{Harbourside, Bristol}},
+ series = {Google Maps},
+ url = {https://www.google.co.uk/maps/place/Harbourside,+Bristol/},
+ urldate = {2020-04-30}}
@booklet{macbeth1948,
year = {1948},
title = {Macbeth},
Modified: trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst-v1.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst-v1.tex
===================================================================
--- trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst-v1.tex 2021-02-25 22:08:09 UTC (rev 57924)
+++ trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst-v1.tex 2021-02-25 22:08:34 UTC (rev 57925)
@@ -14,7 +14,7 @@
%% ----------------------------------------------------------------
%%
\ProvidesFile{bath-bst-v1.tex}
- [2020/01/16 v3.2 Harvard referencing style as recommended by the University of Bath Library]
+ [2021/02/25 v4.0 Harvard referencing style as recommended by the University of Bath Library]
\documentclass[10pt,a4paper]{article}
\usepackage[british]{babel}
@@ -418,6 +418,10 @@
\end{Verbatim}
\end{bibexbox}
+\begin{info}\item
+Internally, \texttt{collection} is an alias for \texttt{book}.
+\end{info}
+
\subsubsection*{Electronic book}
\begin{bibexbox}<RX>{haynes2014crc}
@@ -451,6 +455,67 @@
\end{Verbatim}
\end{bibexbox}
+\subsubsection*{Book known by its title}
+
+\begin{info}\item
+Unfortunately, to avoid breaking other use cases for the \texttt{book} entry
+type, to achieve the following format you must use the non-standard
+\texttt{reference} entry type.
+\end{info}
+
+\begin{bibexbox}<RX>{bnf2020}
+ British National Formulary, 2020. 79th ed. London: Pharmaceutical Press.
+ \tcblower
+\begin{Verbatim}
+ at reference{bnf2020,
+ year = {2020},
+ title = {{British National Formulary}},
+ edition = {79},
+ address = {London},
+ publisher = {Pharmaceutical Press}}
+\end{Verbatim}
+\end{bibexbox}
+
+\begin{info}\item
+Similarly, to achieve the following formats you must use the non-standard
+\texttt{inreference} entry type.
+\end{info}
+
+\begin{bibexbox}<RX>{asprin2020bnf}
+ British National Formulary, 2020. 79th ed. \emph{Asprin.} London: Pharmaceutical Press.
+ \tcblower
+\begin{Verbatim}
+ at inreference{asprin2020bnf,
+ title = {Asprin},
+ year = {2020},
+ booktitle = {{British National Formulary}},
+ edition = {79},
+ address = {London},
+ publisher = {Pharmaceutical Press}}
+\end{Verbatim}
+\end{bibexbox}
+
+\begin{bibexbox}<RX>{asprin2019bnf}
+ British National Formulary, 2019. \emph{Aspirin} [Online]. London: Pharmaceutical Press. Available from: \url{https://www.medicinescomplete.com/\#/content/bnf/_456850132} [Accessed 26 November 2019].
+ \tcblower
+\begin{Verbatim}
+ at inreference{asprin2019bnf,
+ title = {Asprin},
+ year = {2019},
+ booktitle = {{British National Formulary \textup{[Online]}}},
+ address = {London},
+ publisher = {Pharmaceutical Press},
+ url = {https://www.medicinescomplete.com/\#/content/bnf/_456850132},
+ urldate = {26 November 2019}}
+\end{Verbatim}
+\end{bibexbox}
+
+\begin{info}\item
+Internally, \texttt{inreference} is an alias for \texttt{incollection}.
+\end{info}
+
+\citet{bnf2020}, \cite{asprin2019bnf}, \citet{asprin2020bnf}.
+
\subsubsection*{One chapter\slash paper from a collection (by different authors) in an edited book}
\begin{bibexbox}<RL>{burchard1965hhl}
@@ -906,6 +971,34 @@
\begin{tips}\item The \texttt{book} entry type would also work for this reference.\end{tips}
+\begin{bibexbox}<RX>{os2020bath}
+ Ordnance Survey, 2020. \emph{Street view map of University of Bath} [Online], 1:5000, OS VectorMap® Local. Available from: \url{https://digimap.edina.ac.uk/roam/map/os} [Accessed 30 April 2020].
+ \tcblower
+\begin{Verbatim}
+ at manual{os2020bath,
+ author = {{Ordnance Survey}},
+ year = {2020},
+ title = {Street view map of {University of Bath}},
+ series = {1:5000, OS VectorMap® Local},
+ url = {https://digimap.edina.ac.uk/roam/map/os},
+ urlyear = {30 April 2020}}
+\end{Verbatim}
+\end{bibexbox}
+
+\begin{bibexbox}<RX>{google2020harbourside}
+ Google, 2020. \emph{Harbourside, Bristol} [Online], Google Maps. Available from: \url{https://www.google.co.uk/maps/place/Harbourside,+Bristol/} [Accessed 30 April 2020].
+ \tcblower
+\begin{Verbatim}
+ at manual{google2020harbourside,
+ author = {{Google}},
+ year = {2020},
+ title = {{Harbourside, Bristol}},
+ series = {Google Maps},
+ url = {https://www.google.co.uk/maps/place/Harbourside,+Bristol/},
+ urldate = {2020-04-30}}
+\end{Verbatim}
+\end{bibexbox}
+
\subsubsection*{Film, video or DVD}
\begin{bibexbox}<RX>{macbeth1948}
@@ -1434,6 +1527,6 @@
\bibliography{bath-bst-v1}
\end{document}
%%
-%% Copyright (C) 2020 by University of Bath
+%% Copyright (C) 2016-2021 by University of Bath
%%
%% End of file `bath-bst-v1.tex'.
Modified: trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst.bib
===================================================================
--- trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst.bib 2021-02-25 22:08:09 UTC (rev 57924)
+++ trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst.bib 2021-02-25 22:08:34 UTC (rev 57925)
@@ -34,6 +34,27 @@
titleaddon = {Kindle version 4.18},
address = {Bath},
publisher = {University of Bath}}
+ at reference{bnf2020,
+ year = {2020},
+ title = {{British National Formulary}},
+ edition = {79},
+ address = {London},
+ publisher = {Pharmaceutical Press}}
+ at inreference{asprin2020bnf,
+ title = {Asprin},
+ year = {2020},
+ booktitle = {{British National Formulary}},
+ edition = {79},
+ address = {London},
+ publisher = {Pharmaceutical Press}}
+ at inreference{asprin2019bnf,
+ title = {Asprin},
+ year = {2019},
+ booktitle = {{British National Formulary}},
+ address = {London},
+ publisher = {Pharmaceutical Press},
+ url = {https://www.medicinescomplete.com/\#/content/bnf/_456850132},
+ urlyear = {26 November 2019}}
@incollection{burchard1965hhl,
author = {Burchard, J. E.},
year = {1965},
@@ -223,6 +244,20 @@
series = {1 inch to 2 miles},
address = {Devizes},
publisher = {Wiltshire Record Society}}
+ at manual{os2020bath,
+ author = {{Ordnance Survey}},
+ year = {2020},
+ title = {Street view map of {University of Bath}},
+ series = {1:5000, OS VectorMap® Local},
+ url = {https://digimap.edina.ac.uk/roam/map/os},
+ urlyear = {30 April 2020}}
+ at manual{google2020harbourside,
+ author = {{Google}},
+ year = {2020},
+ title = {{Harbourside, Bristol}},
+ series = {Google Maps},
+ url = {https://www.google.co.uk/maps/place/Harbourside,+Bristol/},
+ urldate = {2020-04-30}}
@video{macbeth1948,
year = {1948},
title = {Macbeth},
Modified: trunk/Master/texmf-dist/doc/bibtex/bath-bst/bath-bst.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/source/bibtex/bath-bst/bath-bst.dtx
===================================================================
--- trunk/Master/texmf-dist/source/bibtex/bath-bst/bath-bst.dtx 2021-02-25 22:08:09 UTC (rev 57924)
+++ trunk/Master/texmf-dist/source/bibtex/bath-bst/bath-bst.dtx 2021-02-25 22:08:34 UTC (rev 57925)
@@ -39,7 +39,7 @@
\endpreamble
\postamble
-Copyright (C) 2020 by University of Bath
+Copyright (C) 2016-2021 by University of Bath
\endpostamble
\usedir{bibtex/bst/\jobname}
@@ -74,7 +74,7 @@
\ProvidesFile{bath-bst.dtx}
%</driver>
%<*driver|tex1>
- [2020/01/16 v3.2 Harvard referencing style as recommended by the University of Bath Library]
+ [2021/02/25 v4.0 Harvard referencing style as recommended by the University of Bath Library]
\documentclass[10pt,a4paper]{article}
\usepackage[british]{babel}
@@ -445,9 +445,10 @@
2. Compile `bath-bst.dtx` with [LuaLaTeX] and BibTeX to generate the
documentation. You will need, among other things, the [luatexja],
- [adobemapping] and [ipaex] packages installed; this is just for the
- documentation, not for the BibTeX style itself. To generate the version 1
- tests and documentation, compile `bath-bst-v1.tex` with LuaLaTeX and BibTeX.
+ [adobemapping], [ipaex] and [haranoaji] packages installed; this is just for
+ the documentation, not for the BibTeX style itself. To generate the version
+ 1 tests and documentation, compile `bath-bst-v1.tex` with LuaLaTeX and
+ BibTeX.
3. If you are using TeX Live, find your home TeX tree using the following
command at the command prompt/terminal:
@@ -485,6 +486,7 @@
[luatexja]: http://ctan.org/pkg/luatexja
[adobemapping]: http://ctan.org/pkg/adobemapping
[ipaex]: http://ctan.org/pkg/ipaex
+[haranoaji]: http://ctan.org/pkg/haranoaji
%</driver|readme>
%<*driver>
\end{markdown*}
@@ -704,7 +706,11 @@
\end{Verbatim}
\end{bibexbox}
+\begin{info}\item
+Internally, \texttt{collection} is an alias for \texttt{book}.
+\end{info}
+
\subsubsection*{Electronic book}
\begin{bibexbox}<RX>{haynes2014crc}
@@ -781,6 +787,97 @@
\end{bibexbox}
+\subsubsection*{Book known by its title}
+
+\begin{info}\item
+Unfortunately, to avoid breaking other use cases for the \texttt{book} entry
+type, to achieve the following format you must use the non-standard
+\texttt{reference} entry type.
+\end{info}
+
+\begin{bibexbox}<RX>{bnf2020}
+ British National Formulary, 2020. 79th ed. London: Pharmaceutical Press.
+ \tcblower
+\begin{Verbatim}
+%</driver|tex1>
+%<*driver|bib|tex1|bib1>
+ at reference{bnf2020,
+ year = {2020},
+ title = {{British National Formulary}},
+ edition = {79},
+ address = {London},
+ publisher = {Pharmaceutical Press}}
+%</driver|bib|tex1|bib1>
+%<*driver|tex1>
+\end{Verbatim}
+\end{bibexbox}
+
+\begin{info}\item
+Similarly, to achieve the following formats you must use the non-standard
+\texttt{inreference} entry type.
+\end{info}
+
+\begin{bibexbox}<RX>{asprin2020bnf}
+ British National Formulary, 2020. 79th ed. \emph{Asprin.} London: Pharmaceutical Press.
+ \tcblower
+\begin{Verbatim}
+%</driver|tex1>
+%<*driver|bib|tex1|bib1>
+ at inreference{asprin2020bnf,
+ title = {Asprin},
+ year = {2020},
+ booktitle = {{British National Formulary}},
+ edition = {79},
+ address = {London},
+ publisher = {Pharmaceutical Press}}
+%</driver|bib|tex1|bib1>
+%<*driver|tex1>
+\end{Verbatim}
+\end{bibexbox}
+
+\begin{bibexbox}<RX>{asprin2019bnf}
+ British National Formulary, 2019. \emph{Aspirin} [Online]. London: Pharmaceutical Press. Available from: \url{https://www.medicinescomplete.com/\#/content/bnf/_456850132} [Accessed 26 November 2019].
+ \tcblower
+\begin{Verbatim}
+%</driver|tex1>
+%<*driver|bib>
+ at inreference{asprin2019bnf,
+ title = {Asprin},
+ year = {2019},
+ booktitle = {{British National Formulary}},
+ address = {London},
+ publisher = {Pharmaceutical Press},
+ url = {https://www.medicinescomplete.com/\#/content/bnf/_456850132},
+ urlyear = {26 November 2019}}
+%</driver|bib>
+%<*driver>
+\end{Verbatim}
+\iffalse
+%</driver>
+%<*tex1|bib1>
+ at inreference{asprin2019bnf,
+ title = {Asprin},
+ year = {2019},
+ booktitle = {{British National Formulary \textup{[Online]}}},
+ address = {London},
+ publisher = {Pharmaceutical Press},
+ url = {https://www.medicinescomplete.com/\#/content/bnf/_456850132},
+ urldate = {26 November 2019}}
+%</tex1|bib1>
+%<*driver|tex1>
+\end{Verbatim}
+%<*driver>
+\fi
+%</driver>
+\end{bibexbox}
+
+\begin{info}\item
+Internally, \texttt{inreference} is an alias for \texttt{incollection}.
+%<driver>Use \texttt{inreference} if you need compatibility with \textsf{biblatex-bath}.
+\end{info}
+
+\citet{bnf2020}, \cite{asprin2019bnf}, \citet{asprin2020bnf}.
+
\subsubsection*{One chapter\slash paper from a collection (by different authors) in an edited book}
\begin{bibexbox}<RL>{burchard1965hhl}
@@ -1563,7 +1660,43 @@
\begin{tips}\item The \texttt{book} entry type would also work for this reference.\end{tips}
+\begin{bibexbox}<RX>{os2020bath}
+ Ordnance Survey, 2020. \emph{Street view map of University of Bath} [Online], 1:5000, OS VectorMap® Local. Available from: \url{https://digimap.edina.ac.uk/roam/map/os} [Accessed 30 April 2020].
+ \tcblower
+\begin{Verbatim}
+%</driver|tex1>
+%<*driver|bib|tex1|bib1>
+ at manual{os2020bath,
+ author = {{Ordnance Survey}},
+ year = {2020},
+ title = {Street view map of {University of Bath}},
+ series = {1:5000, OS VectorMap® Local},
+ url = {https://digimap.edina.ac.uk/roam/map/os},
+ urlyear = {30 April 2020}}
+%</driver|bib|tex1|bib1>
+%<*driver|tex1>
+\end{Verbatim}
+\end{bibexbox}
+\begin{bibexbox}<RX>{google2020harbourside}
+ Google, 2020. \emph{Harbourside, Bristol} [Online], Google Maps. Available from: \url{https://www.google.co.uk/maps/place/Harbourside,+Bristol/} [Accessed 30 April 2020].
+ \tcblower
+\begin{Verbatim}
+%</driver|tex1>
+%<*driver|bib|tex1|bib1>
+ at manual{google2020harbourside,
+ author = {{Google}},
+ year = {2020},
+ title = {{Harbourside, Bristol}},
+ series = {Google Maps},
+ url = {https://www.google.co.uk/maps/place/Harbourside,+Bristol/},
+ urldate = {2020-04-30}}
+%</driver|bib|tex1|bib1>
+%<*driver|tex1>
+\end{Verbatim}
+\end{bibexbox}
+
+
\subsubsection*{Film, video or DVD}
\begin{bibexbox}<RX>{macbeth1948}
@@ -2780,7 +2913,7 @@
%<readme>## Licence
%<readme>
%<*driver|readme>
-Copyright 2016-2020 University of Bath.
+Copyright 2016-2021 University of Bath.
This work consists of the documented LaTeX file bath-bst.dtx and a Makefile.
@@ -3210,17 +3343,13 @@
%
% \begin{macrocode}
FUNCTION {is.online}
-{ type$ "software" =
- { #0 }
- { url empty$ doi empty$ and
- { type$ "online" =
- { #1 }
- { #0 }
- if$
- }
+{ url empty$ doi empty$ and
+ { type$ "online" =
{ #1 }
+ { #0 }
if$
}
+ { #1 }
if$
}
% \end{macrocode}
@@ -3235,6 +3364,9 @@
FUNCTION {bbl.and}
{ "and"}
+FUNCTION {bbl.byeditor}
+{ "Ed. by" }
+
FUNCTION {bbl.etal}
{ "et~al." }
@@ -3499,6 +3631,19 @@
}
% \end{macrocode}
%
+% |format.byeditors| returns editor names, and prepended by `Ed. by'.
+%
+% \begin{macrocode}
+FUNCTION {format.byeditors}
+{ editor "editor" format.names.ed duplicate$ empty$ 'skip$
+ { bbl.byeditor
+ " " *
+ swap$ *
+ }
+ if$
+}
+% \end{macrocode}
+%
% |format.editors| returns editor names, and appends `ed.' or `eds' as
% appropriate.
%
@@ -3673,8 +3818,8 @@
%
% |format.key| takes a field (author or editor). If the field is empty, it
% replaces it with the key field (if not non-null). Otherwise, replaces it with
-% an empty string. It is used as a last resort to stop an entry beginning with
-% the date.
+% an empty string. It is used as an extra defence against an entry beginning
+% with the date.
%
% \begin{macrocode}
FUNCTION {format.key}
@@ -3688,7 +3833,7 @@
% \subsection{Titles}
%
% |select.language| checks if the field before was written out, and if so,
-% wraps |{\selectlanguage{language}\dots}| around it.
+% wraps |{\selectlanguage{language}|\dots|}| around it.
%
% \begin{macrocode}
FUNCTION {select.language}
@@ -3775,30 +3920,42 @@
format.titleaddon output
continue.clause
%<*bst2>
- library empty$
- type$ "image" =
- or
is.online
- and
journal empty$
and
- type empty$
- type$ "booklet" = not
- type$ "audio" = not
- and
- type$ "video" = not
- and
- type$ "music" = not
- and
- type$ "movie" = not
- and
+ booktitle empty$
+ type$ "inreference" =
+ author empty$
+ and
or
and
+ library empty$
+ type$ "image" =
+ or
+ and
+ type$ "software" = not
+ and
+ type empty$
+ type$ "booklet" = not
+ type$ "audio" = not
+ and
+ type$ "video" = not
+ and
+ type$ "music" = not
+ and
+ type$ "movie" = not
+ and
+ or
+ and
{ bbl.online output }
'skip$
if$
continue.clause
%</bst2>
+ type$ "reference" =
+ { format.byeditors output }
+ 'skip$
+ if$
format.translators output
}
% \end{macrocode}
@@ -3812,15 +3969,23 @@
" " * }
% \end{macrocode}
%
-% |format.booktitle| returns the booktitle field in italics.
+% |format.label.booktitle| returns the booktitle field upright
%
% \begin{macrocode}
-FUNCTION {format.booktitle}
+FUNCTION {format.label.booktitle}
{ booktitle
duplicate$ empty$ 'skip$
{ "t" change.case$ }
if$
"booktitle" bibinfo.check
+}
+% \end{macrocode}
+%
+% |format.booktitle| returns the booktitle field in italics.
+%
+% \begin{macrocode}
+FUNCTION {format.booktitle}
+{ format.label.booktitle
emphasize
}
% \end{macrocode}
@@ -3830,8 +3995,19 @@
%
% \begin{macrocode}
FUNCTION {format.in.ed.booktitle}
-{ format.booktitle duplicate$ empty$ 'skip$
- { editor "editor" format.names.ed duplicate$ empty$ 'pop$
+{ format.booktitle
+ duplicate$ empty$
+ 'skip$
+ {
+%<*bst2>
+ is.online
+ { " " *
+ bbl.online *
+ }
+ 'skip$
+ if$
+%</bst2>
+ editor "editor" format.names.ed duplicate$ empty$ 'pop$
{ "," *
" " *
get.bbl.editor add.period$
@@ -4970,13 +5146,17 @@
{ output.bibitem
author empty$
{ editor empty$
- { format.btitle "title" output.check
+ type$ "reference" =
+ or
+ { type$ "reference" =
+ { format.title "title" output.check }
+ { format.btitle "title" output.check }
+ if$
format.date "year" output.check
year empty$ 'skip$ { date.block } if$
get.title.addenda
}
{ format.editors "author and editor" output.check
- editor format.key output
format.date "year" output.check
date.block
format.btitle "title" output.check
@@ -5072,6 +5252,8 @@
date.block
format.btitle "title" output.check
get.title.addenda
+ new.block
+ format.edition output
crossref missing$
{ format.publisher.address output
format.bvolume output
@@ -5085,7 +5267,6 @@
format.book.crossref output.nonnull
}
if$
- format.edition output
new.block
format.note output
new.block
@@ -5100,22 +5281,49 @@
% \begin{macrocode}
FUNCTION {incollection}
{ output.bibitem
- format.authors "author" output.check
- author format.key output
- format.date "year" output.check
- date.block
- format.title "title" output.check
- get.title.addenda
+ author empty$
+ { type$ "inreference" =
+ { format.label.booktitle output }
+ { format.title "title" output.check }
+ if$
+ format.date "year" output.check
+ year empty$ 'skip$ { date.block } if$
+ type$ "inreference" =
+ 'skip$
+ { get.title.addenda }
+ if$
+ }
+ { format.authors output.nonnull
+ format.date "year" output.check
+ date.block
+ format.title "title" output.check
+ get.title.addenda
+ }
+ if$
new.block
crossref missing$
- { format.in.ed.booktitle "booktitle" output.check
+ { type$ "inreference" =
+ author empty$
+ and
+ { format.byeditors output }
+ { format.in.ed.booktitle "booktitle" output.check }
+ if$
new.block
+ format.edition output
+ new.block
+ type$ "inreference" =
+ author empty$
+ and
+ { format.btitle "title" output.check
+ get.title.addenda
+ new.block
+ }
+ 'skip$
+ if$
format.publisher.address output
format.bvolume output
format.number.series output
format.chapter.pages output
- new.sentence
- format.edition output
}
{ format.incoll.inproc.crossref output.nonnull
format.chapter.pages output
@@ -5593,6 +5801,9 @@
'article
if$
}
+FUNCTION {collection} { book }
+FUNCTION {reference} { book }
+FUNCTION {inreference} { incollection }
FUNCTION {audio} { booklet }
FUNCTION {movie} { booklet }
FUNCTION {music} { booklet }
@@ -5755,18 +5966,28 @@
FUNCTION {author.key.label}
{ author empty$
{ key empty$
- { title empty$
- { cite$ #1 #3 substring$ }
- { title
- type$ "article" =
- type$ "incollection" =
- or
- type$ "inproceedings" =
- or
- type$ "misc" =
- or
- 'skip$
- { emphasize }
+ { type$ "inreference" =
+ booktitle empty$ not
+ and
+ { booktitle }
+ { title empty$
+ { cite$ #1 #3 substring$ }
+ { title
+ type$ "article" =
+ type$ "incollection" =
+ or
+ type$ "inproceedings" =
+ or
+ type$ "reference" =
+ author empty$
+ and
+ or
+ type$ "misc" =
+ or
+ 'skip$
+ { emphasize }
+ if$
+ }
if$
}
if$
@@ -5919,15 +6140,21 @@
% \begin{macrocode}
FUNCTION {author.sort}
{ author empty$
- { title empty$
- { key empty$
- { "to sort, need author, title, or key in " cite$ * warning$
- ""
+ { type$ "inreference" =
+ booktitle empty$ not
+ and
+ { booktitle sort.format.title }
+ { title empty$
+ { key empty$
+ { "to sort, need author, title, or key in " cite$ * warning$
+ ""
+ }
+ { key sortify }
+ if$
}
- { key sortify }
+ { title sort.format.title }
if$
}
- { title sort.format.title }
if$
}
{ author sort.format.names }
@@ -6035,7 +6262,7 @@
%
% Applying these functions is a bit more tricky, but once we have done that,
% we re-sort the entries to make absolutely sure they in the right order,
-% this time wih the year between with |sort.label| and the title.
+% this time with the year between with |sort.label| and the title.
%
% \begin{macrocode}
EXECUTE {initialize.extra.label.stuff}
Deleted: trunk/Master/texmf-dist/source/bibtex/bath-bst/bath-bst.ins
===================================================================
--- trunk/Master/texmf-dist/source/bibtex/bath-bst/bath-bst.ins 2021-02-25 22:08:09 UTC (rev 57924)
+++ trunk/Master/texmf-dist/source/bibtex/bath-bst/bath-bst.ins 2021-02-25 22:08:34 UTC (rev 57925)
@@ -1,52 +0,0 @@
-%%
-%% This is file `bath-bst.ins',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% bath-bst.dtx (with options: `install')
-%% ----------------------------------------------------------------
-%% bath-bst --- Harvard referencing style as recommended by the University of Bath Library
-%% Author: Alex Ball
-%% E-mail: a.j.ball at bath.ac.uk
-%% License: Released under the LaTeX Project Public License v1.3c or later
-%% See: http://www.latex-project.org/lppl.txt
-%% ----------------------------------------------------------------
-%%
-\input docstrip.tex
-\keepsilent
-\askforoverwritefalse
-
-\nopreamble\nopostamble
-
-\usedir{doc/bibtex/\jobname}
-\generate{
- \file{README.md}{\from{\jobname.dtx}{readme}}
- \file{\jobname.bib}{\from{\jobname.dtx}{bib}}
-}
-
-\preamble
-----------------------------------------------------------------
-bath-bst --- Harvard referencing style as recommended by the University of Bath Library
-Author: Alex Ball
-E-mail: a.j.ball at bath.ac.uk
-License: Released under the LaTeX Project Public License v1.3c or later
-See: http://www.latex-project.org/lppl.txt
-----------------------------------------------------------------
-
-\endpreamble
-\postamble
-
-Copyright (C) 2020 by University of Bath
-\endpostamble
-
-\usedir{bibtex/bst/\jobname}
-\generate{
- \file{bath.bst}{\from{\jobname.dtx}{bst1}}
- \file{bathx.bst}{\from{\jobname.dtx}{bst2}}
-}
-\endbatchfile
-%%
-%% Copyright (C) 2020 by University of Bath
-%%
-%% End of file `bath-bst.ins'.
More information about the tex-live-commits
mailing list.