Skip to content

Variants BibTex Style

Wout Dillen edited this page Jun 18, 2020 · 2 revisions

VariantsBib

Citation Style for Variants, the Journal of the ESTS

When using your own citation style (i.e. not available through natbib or another bibliography package), LaTeX requires you to host a .bst file in your project. This file logs the process of making such a file.

Command Line Interface

In the terminal, write:

$ latex makebst

Enter y if you would like a short description of how the programme dialogue works; n if you do not.

\yn=y

We will use the default MASTER file (merln.mbs), so leave the next line empty and just hit ENTER.

\mfile=

Our output file will be variants.bst:

\ofile=variants

Comment line for style file:

A Citation style for Variants, the Journal of the European Society for Textual Scholarship

Do you want verbose comments?

\yn=n

We will use the default language definition file, merlin.mbs, so leave empty.

\cfile=

No included files:

\yn=n

English Language Support:

\ans=*`

Author-Year citations:

\ans=a

Natbib Author-Year support

\ans=*

No language field:

\ans=*

No annotationsn :

\ans=*

Presentatons: speakers in small caps:

\ans=c

Alphabetical ordering:

\ans=*

Sort without von part:

\ans=x

Respect first names:

\ans=*

First names reversed, with full names:

\ans=b

Editor names NOT reversed:

\ans=*

Junior comes last:

\ans=*

No 'junior' part in the cittions:

\ans=*

Author names separated by commas:

\ans=*

Repeated author/editor names replaced by 3 dashes

\ans=3

All authors listed in bibliography

\ans=*

One author et al in citations:

\ans=*

Small caps for authors:

\ans=s

First names same font as surnames:

\ans=*

Editors incollection in normal font:

\ans=*

'And' in normal font:

\ans=r

Cited authors in normal font:

\ans=*

Extra label in normal font:

\ans=*

Year blank when KEY replaces missing author:

\ans=*

Missing date set to ????:

\ans=*

Date after authors:

\ans=b

Year plain without any brackets:

\ans=*

Include month in date:

\ans=m

Date as month year:

\ans=*

Date with standard block punctuation:

\ans=*

Space after date:

\ans=*

Date in normal font:

\ans=*

Year text full:

\ans=*

Title and punctuation in double quotes:

\ans=d

Collection and proceedings titles not in quotes:

\ans=x

Capitalization of article title in sentence style:

\ans=*

Article title present in journals and proceedings:

\ans=*

Periods in journal names retained:

\ans=*

Journal names in italics:

\ans=*

Thesis titles like books:

\ans=*

Technical reports like articles:

\ans=*

Technical reports and numbers plain:

\ans=*

Volume numbers plain:

\ans=*

Journal as vol(num):

\ans=*

Volume pagination with comma:

\ans=c

Journal year like others:

\ans=*

Start and stop page numbers:

\ans=*

Comma inserted in numbers over 999:

\ans=c

Include 'page' in articles:

\ans=p

Pages given mid text:

\ans=*

Article volume as number only:

\ans=*

Allow for number without series

\ans=*

Number and series after chapter and pages:

\ans=*

Series, vol. num:

\ans=s

Series and volume after booktitle:

\ans=e

Space after journal:

\ans=x

Book title italic:

\ans=*

Pages in book plain:

\ans=*

Total of book pages not printed:

\ans=*

Address: Publisher:

\ans=a

Publisher as normal block:

\ans=*

Publisher before chapter, pages:

\ans=p

Include ISBN:

\ans=*

Include ISSN:

\ans=*

Include DOI:

\ans=*

Word 'editor' after name:

\ans=*

In booktitle, edited by ... :

\ans=b

\newblock after blocks:

\ans-*

Author block normal punctuation:

\ans=*

Space after 'in':

\ans=*

No 'in' for journal names:

\ans=*

Period at very end of reference:

\ans=*

Page(s) not abbreviated:

\ans=*

'Editor(s)' abbreviated into ed(s).:

\ans=a

No abbreviation of volume, editor, chapter, etc.:

\ans=*

Numerical edition numbers:

\ans=n

Full journal names:

\ans=*

Use word 'and' in author list:

\ans=*

Oxford comma:

\ans=*

With 'and' in reference list:

\ans=*

Comma before et al:

\ans=*

Font of et al plain:

\ans=*

Include REVTeX data fields:

\ans=r

No reference component tags:

\ans=*

Use emphasis:

\ans=*

Use LaTeX commands:

\ans=*

Finished! Run batch job

\yn=y

Use your new BST file

  1. Upload your file into the root of your LaTeX project
  2. In preamble/bibtex.tex, find and replace \bibliographystyle{humannaturl} into \bibliographystyle{variants}.
  3. Do the same in preamble/environments.tex (replace ALL!)

Troubleshooting

\enquote{}

After Overleaf was throwing an error, complaining that "Command \enquote already defined", I went into the variants.bst file, and changed:

"\newcommand{\enquote}[1]{``#1''}"

into:

"\renewcommand{\enquote}[1]{``#1''}"

This fixed the issue.

URL

Add urldate

By default, the .bst file will ignore the BibTeX field \urldate, which is where your "Accessed on" information is stored. To add this information to your bibliographic references, first add \urldate to the list of fields in ENTRY{} (line 54), so that it becomes:

ENTRY
  { address
    ...
    url
    urldate
    ...
    year
  }

(The dots in the above code block represent an elipsis -- do not remove the fields they elide!)

Then, we need to add the field to the URL-block, by changing:

FUNCTION {format.url}
{
  url
  duplicate$ empty$
    { pop$ "" }
    { "\urlprefix\url{" swap$ * "}" * }
  if$
}

into:

FUNCTION {format.url}
{ url duplicate$ empty$
    { pop$ "" }
    { "\urlprefix\url{" swap$ * "}" * 
        urldate duplicate$ empty$
        { pop$ }
        { "~(Accessed: "  swap$ * ")" * *}
      if$
    }
  if$
}

Change \urlprefix

By default, the .bst will precede URLs with the string: "URL". I wanted it to say "Available online at" instead. So I changed:

"\providecommand{\urlprefix}{URL }"

into:

"\providecommand{\urlprefix}{Available from: }"