DH Benelux Journal (dhbenelux)
The DH Benelux Journal's dhbenelux class (developed from varianTeX) with the journal's author template: title, authors with affiliations, abstract, keywords, a figure, footnotes and natbib references.
- Category
- Journal
- Document class
dhbenelux(dhbenelux.cls) — ships with TeX Live- Workflow
- Journal manuscript — submissions and revision rounds
- Author
- DH Benelux
- Source
- DH Benelux
- Licence
- No licence is stated in the files. DH Benelux distributes them for authors preparing a submission.
These are the publisher’s own files. This project starts from DH Benelux’s package for this publication — their manuscript, their dhbenelux.cls, their bibliography style — so what compiles here is what they would have given you.
DH Benelux serves this exact file to DH Benelux Journal. Check DH Benelux’s author pages for the current instructions.
Where this differs from the publisher’s download.
- Changed: main.tex: a footnote linking another online editor's tutorials removed. Class unchanged (amend-r4.mjs)..
What you get
Images/Maxwell-conceptual-model.jpg· 20 KBLICENSE· 18 KBdhbenelux.cls· 10 KBmain.tex— the file that is compiled · 3 KBplainnat.bst· 26 KBreferences.bib· 939 B
These become your files. Editing them afterwards changes your project and nothing else — a project owns its files from the moment it is made.
Journals using this template
Source
Images/Maxwell-conceptual-model.jpg — binary, 20 KB
LICENSE — binary, 18 KB
dhbenelux.cls · 10 KB
%%%%%%%%%%%%%%%%%%
% Creators: Wout Dillen & Marijn Koolen
%
% Version History:
% - v1.0: 2019/09/04
% - v1.1: 2021/07/01
% - v2.0: 2022/05/06
% - v2.1: 2024/10/31 -- Happy Halloween!
% - v2.1.0: 2024/10/31
% - v?
%
% Revision history:
%
% - v1.0 -> v1.1
% ltfamily is no longer defined, switch renewcommand to newcommand
% - v1.1 -> v2.0
% automatically archives new releases in Zenodo
% changelog: https://github.com/DHBenelux/jDHBenelux-author-template/releases/tag/v2.0
% - v2.0 -> v2.1
% hyperref package moved up to fix hyperxmp issue
% added lmodern to fix palatino issue with missing font shapes
% removed fancyhdr which was no longer used, and caused issues with KOMAfont
% - v2.1 -> v2.1.0
% no changes in the repository, only fixed Zenodo synchronisation
% - v2.1.0 -> v?
% fixed small typo in revision history, and added v2.1.0 update
% ...
%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{dhbenelux}[2021/07/01 DH Benelux Journal template]
\LoadClass[onecolumn]{scrartcl}
%%%%%%%%%%%%%%%%%%
% classoptions
%%%%%%%%%%%%%%%%%%
\KOMAoptions{
titlepage=false,
paper=210mm:297mm, % A4 dimensions
twoside=false,
twocolumn=false,
parskip=false, % space between paragraphs. "full" gives more space; "false" uses indentation instead
%headings=small,
draft=false, % switch to "true" to activate draftmode
}
%%%%%%%%%%%%%%%%%%
% pagesize
%%%%%%%%%%%%%%%%%%
\usepackage[
top=23mm,
left=34mm,
height=237mm,
width=143mm,
]{geometry}
%
%%%%%%%%%%%%%%%%%%
% packages
%%%%%%%%%%%%%%%%%%
\usepackage[x11names,table,dvipsnames]{xcolor}
\usepackage[hyphens]{url} % simple URL typesetting
\usepackage{footmisc} % Make sure this is loaded before hyperref to avoid breaking footnote hyperlinks
\usepackage[unicode=true,pdfusetitle, % fixes hyperref issue
bookmarks=true,
bookmarksnumbered=false,
bookmarksopen=false,
breaklinks=false,
pdfborder={0 0 1},
backref=false,
colorlinks=false]{hyperref}
\usepackage{booktabs} % professional-quality tables
\usepackage{nicefrac} % compact symbols for 1/2, etc.
\usepackage{microtype} % microtypography
\usepackage{lipsum} % lorem ipsum at the ready
\usepackage{graphicx} % for figures
\usepackage{footmisc} % makes symbol footnotes possible
\usepackage{ragged2e}
%\usepackage{changepage} % detect odd/even pages
\usepackage{array}
\usepackage{float} % get figures etc. to stay where they are with [H]
%\usepackage{subfigure} % \subfigures witin a \begin{figure}
\usepackage[textsize=footnotesize]{todonotes} % enables \todo's for editors
\usepackage{etoolbox} % supplies commands like \AtBeginEnvironment and \atEndEnvironment
\usepackage{ifdraft} % switches on proofreading options in the draft mode
\usepackage{tikz} % for copyright statement
\usepackage[absolute]{textpos} % for copyright statement
\usepackage[ % for copyright statement
type={CC},
modifier={by},
version={4.0},
]{doclicense}
%%%%%%%%%%%%%%%%%%
% fix Hyperref (cont.)
%%%%%%%%%%%%%%%%%%
\hypersetup{pdfauthor={Wout Dillen}}
% requires hyperref package to be defined (see 'Packages' above)
% fix originally found at: https://albertsk.org/2019/10/10/how-to-avoid-warning-messages-from-hyperref-package-in-latex/
% FYI: the pdfauthor name is irrelevant, it just needs to have one. Feel free to change to another name.
% moved the hyperref package up to fix further hyperxmp issue (v2.1 fix)
% // WD
%%%%%%%%%%%%%%%%%%
% encoding
%%%%%%%%%%%%%%%%%%
\usepackage[L7x, T1]{fontenc} % use 8-bit T1 fonts
\usepackage[utf8]{inputenc} % allow utf-8 input
% languages
\usepackage[main=english, lithuanian, latin]{babel}
% special characters
\DeclareUnicodeCharacter{2D7}{} % allow ¡ character
\DeclareUnicodeCharacter{45E}{} % allow ў character
\DeclareUnicodeCharacter{2032}{} % allow ′ character
\DeclareUnicodeCharacter{22EE}{} % allow ⋮ character
\usepackage{textalpha} % allows for greek characters in text e.g. \textalpha = α
\usepackage{textcomp} % allows \textrightarrow etc.
\usepackage{authblk} % for multiple authors and affiliations
%%%%%%%%%%%%%%%%%%
% Fonts
%%%%%%%%%%%%%%%%%%
\usepackage{lmodern} % fixes issue when font shapes can't be found in palatino
% Palatino font options
\usepackage{mathpazo} % Palatino in LaTeX math
\usepackage{tgpagella} % Palatino font
\newcommand{\ltfamily}{\familydefault} % Makes sure LaTeX keeps using Palatino in Lithuanian
\addtokomafont{disposition}{\rmfamily} % Palatino for titles etc.
\setkomafont{descriptionlabel}{ % font for description lists
\usekomafont{captionlabel}\bfseries % Palatino bold
}
\setkomafont{caption}{\footnotesize} % smaller font size for captions
%%%%%%%%%%%%%%%%%%
% Title page
%%%%%%%%%%%%%%%%%%
\date{} % Get rid of date ... there should be a neater way to do this
%set unit to be pagewidth and height, and increase inner margin of box
\setlength{\TPHorizModule}{\paperwidth}\setlength{\TPVertModule}{\paperheight}
\TPMargin{15pt} % Margin from text content
% Below is taken from https://tex.stackexchange.com/questions/55813/how-to-add-copyright-notice-in-a-box-with-borders-at-bottom-of-first-page
% Wout modified it using \usepackage{doclicense} (http://ctan.triasinformatica.nl/macros/latex/contrib/doclicense/doclicense.pdf)
% Define \copyrightstatement command for easier use
\newcommand{\copyrightstatement}{
\begin{textblock}{0.84}(0.08,0.02) % tweak here: {box width}(leftposition, rightposition)
\noindent
\footnotesize
\centering
\doclicenseIcon \the\year. % alternative: \doclicenseImage[imagewidth=4em] – Wout thinks icons are neater.
\doclicenseLongText % includes a link
\end{textblock}
}
\newcommand{\keywords}[1]{\textbf{Keywords:} #1}
%%%%%%%%%%%%%%%%%%
% Bibliography
%%%%%%%%%%%%%%%%%%
\usepackage[sort&compress,semicolon,authoryear]{natbib} % for citations
\bibliographystyle{plainnat}
%%%%%%%%%%%%%%%%%%
% Spacing options
%%%%%%%%%%%%%%%%%%
%\renewcommand{\bigskip}{\vpsace{4em}}
%\renewcommand{\medskip}{\vpsace{2em}}
%%%%%%%%%%%%%%%%%%
% Environments
%%%%%%%%%%%%%%%%%%
\sloppy % preferences more space between words over overrunning margins
\lefthyphenmin=3 % suppresses hyphenation after only 1 or 2 characters
% NB: You will need to repeat \lefthyphenmin in the text if you use \selectlanguage
\AtBeginEnvironment{quote}{\footnotesize\vskip 1em}
\AtEndEnvironment{quote}{\vskip 1em}
\setkomafont{caption}{\footnotesize}
% Motto
\newenvironment{motto}{%
\setlength{\parindent}{0pt} \small\raggedleft}{%
\vskip 2em
}{}
%%%%%%%%%%%%%%%%%%
% Sectionoptions
%%%%%%%%%%%%%%%%%%
% command for centering section headings
\newcommand{\centerheading}[1]{
\hspace*{\fill}#1\hspace*{\fill}
}
% Remove "Part #." from \part titles
% KOMA default: \newcommand*{\partformat}{\partname~\thepart\autodot}
\renewcommand*{\partformat}{}
% No dots after figure or table numbers
\renewcommand*{\figureformat}{\figurename~\thefigure}
\renewcommand*{\tableformat}{\tablename~\thetable}
% paragraph handling
\setparsizes%
{1em}% indent
{0pt}% maximum space between paragraphs
{0pt plus 1fil}% last line not justified
% In the "Authors" section, author names are put in the \paragraph{} headings. To reduce the space after these headings, the default {-1em} has been changed to {-.4em} below.
\makeatletter
\renewcommand\paragraph{\@startsection {paragraph}{4}{\z@ }{3.25ex \@plus 1ex \@minus .2ex}{-.4em}{\normalfont \normalsize \bfseries }
}
\makeatother
% add the following (uncommented) in environments where you want to count paragraph numbers in the margin
% \renewcommand*{\paragraphformat}{%
% \makebox[-4pt][r]{\footnotesize\theparagraph\autodot\enskip}
% }
% \renewcommand{\theparagraph}{\arabic{paragraph}}
% \setcounter{paragraph}{0}
% \setcounter{secnumdepth}{4}
%%%%%%%%%%%%%%%%%%
% footnoteformat
%%%%%%%%%%%%%%%%%%
\renewcommand{\footnoterule}{%
\kern .5em % call this kerna
\hrule height 0.4pt width .2\columnwidth % the .2 value made the footnote ruler (horizontal line) smaller (was at .4)
\kern .5em % call this kernb
}
\renewcommand{\footnotelayout}{
\hspace{1.5em} % space between footnote mark and footnote text
}
\newcommand{\mytodo}[1]{\textcolor{red}{#1}}
%%%%%%%%%%%%%%%%%%
% Proofs
%%%%%%%%%%%%%%%%%%
% Proofs watermark
%\usepackage{draftwatermark}
%\SetWatermarkText{PROOFS}
% Line numbers
%\usepackage[switch, modulo, pagewise]{lineno}
%\linenumbers
\makeatletter
\newsavebox{\@linebox}
\savebox{\@linebox}[3em][t]{\parbox[t]{3em}{%
\@tempcnta\@ne\relax
\loop{\underline{\scriptsize\the\@tempcnta}}\\
\advance\@tempcnta by \@ne\ifnum\@tempcnta<48\repeat}}
\makeatother
%%%%%%%%%%%%%%%%%%
% code snippets
%%%%%%%%%%%%%%%%%%
% colours for code notations
\usepackage{listings}
\renewcommand\lstlistingname{Listing}
\lstset{ % basic formatting (bash etc.)
basicstyle=\ttfamily,
showstringspaces=false,
commentstyle=\color{BrickRed},
keywordstyle=\color{RoyalBlue}
}
\lstdefinelanguage{XML}{ % specific XML formatting overrides
basicstyle=\ttfamily,
morestring=[s]{"}{"},
morecomment=[s]{?}{?},
morecomment=[s]{!--}{--},
commentstyle=\color{OliveGreen},
moredelim=[s][\color{Black}]{>}{<},
moredelim=[s][\color{RawSienna}]{\ }{=},
stringstyle=\color{RoyalBlue},
identifierstyle=\color{Plum}
}
% HOW TO USE? BASH EXAMPLE
% \begin{lstlisting}[language=bash]
% #some comment
% cd Documents
% \end{lstlisting}
main.tex — the file that is compiled · 3 KB
\documentclass{dhbenelux}
\usepackage{booktabs} % for toprule, midrule, bottomrule in tables
\usepackage{authblk} % for multiple authors and affiliations
\usepackage{graphicx} % to inlcude graphics with \includegraphics
\author[1]{First Author}
\author[2]{Second Author}
\author[2]{Third Author}
\affil[1]{First author's affiliation}
\affil[2]{Second and third authors' affiliation}
\title{Your paper}
\begin{document}
\maketitle
\copyrightstatement
\begin{abstract}
\noindent {[Add an abstract here]}
\end{abstract}
\begin{keywords}
{[Add keywords here]}
\end{keywords}
\section{Introduction}
This template is intended for articles published in the Digital Humanities in the Benelux Journal.\footnote{See \url{http://journal.dhbenelux.org}} Use this to submit the final version of your manuscript to the journal. The template will ensure your article adheres to the style guidelines of the journal.
\section{Instructions for preparing your manuscript}
If you are unfamiliar with \LaTeX, there are many online resources with documentation and tutorials on how to use \LaTeX.
%
There are specific instructions for preparing your article for the DH Benelux Journal.\footnote{See \url{http://journal.dhbenelux.org/submission/preparing-the-final-version-of-your-manuscript/}}.
\section{Working with bibtex references}
The DH Benelux Journal uses bibtex for references and citations. You can cite other work using bibtex keys \citet{maxwell2013qualitative}. Your article should end with a section called `References' that includes a link to your bibtex file that contains the bibliographic information of the work you cite (see below). Upon generating the print version with a \LaTeX\ engine, references to the cited works are included.
\section{Adding figures and tables}
This section has two sub-sections.
\subsection{Adding figures}
\begin{figure}
% Use center to align a figure or table to the middle of the text column
\begin{center}
\includegraphics[width=0.6\linewidth]{Images/Maxwell-conceptual-model.jpg}
\end{center}
\caption{This is where the caption of the figure goes. Remember, figure captions go below the figure.}
\label{fig:model_maxwell}
\end{figure}
If you include figures or tables, use reference keys (e.g. Figure~\ref{fig:model_maxwell}), to create an unambiguous reference from the text to each figure and table, e.g. to Table~\ref{tab:groups}.
\subsection{Adding tables}
\begin{table}[tbp!]
\centering
\caption{Table caption. Captions for tables go above the table, unlike for figures.}
\label{tab:groups}
\begin{tabular}{| l | l | l |}
\toprule
This & is the & header row \\
\midrule
1 & 2 & this is a cell in the first row \\
3 & 4 & this is a cell in the second row \\
\bottomrule
\end{tabular}
\end{table}
% The reference list will be generated automatically based on the keys
% you use in your article and their metadata in the bibtex file
\bibliography{references}
\end{document}
plainnat.bst · 26 KB
%% File: `plainnat.bst'
%% A modification of `plain.bst' for use with natbib package
%%
%% Copyright 1993-2007 Patrick W Daly
%% Max-Planck-Institut f\"ur Sonnensystemforschung
%% Max-Planck-Str. 2
%% D-37191 Katlenburg-Lindau
%% Germany
%% E-mail: [email protected]
%%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN
%% archives in directory macros/latex/base/lppl.txt; either
%% version 1 of the License, or any later version.
%%
% Version and source file information:
% \ProvidesFile{natbst.mbs}[2007/11/26 1.93 (PWD)]
%
% BibTeX `plainnat' family
% version 0.99b for BibTeX versions 0.99a or later,
% for LaTeX versions 2.09 and 2e.
%
% For use with the `natbib.sty' package; emulates the corresponding
% member of the `plain' family, but with author-year citations.
%
% With version 6.0 of `natbib.sty', it may also be used for numerical
% citations, while retaining the commands \citeauthor, \citefullauthor,
% and \citeyear to print the corresponding information.
%
% For version 7.0 of `natbib.sty', the KEY field replaces missing
% authors/editors, and the date is left blank in \bibitem.
%
% Includes field EID for the sequence/citation number of electronic journals
% which is used instead of page numbers.
%
% Includes fields ISBN and ISSN.
%
% Includes field URL for Internet addresses.
%
% Includes field DOI for Digital Object Idenfifiers.
%
% Works best with the url.sty package of Donald Arseneau.
%
% Works with identical authors and year are further sorted by
% citation key, to preserve any natural sequence.
%
ENTRY
{ address
author
booktitle
chapter
doi
eid
edition
editor
howpublished
institution
isbn
issn
journal
key
month
note
number
organization
pages
publisher
school
series
title
type
url
volume
year
}
{}
{ label extra.label sort.label short.list }
INTEGERS { output.state before.all mid.sentence after.sentence after.block }
FUNCTION {init.state.consts}
{ #0 'before.all :=
#1 'mid.sentence :=
#2 'after.sentence :=
#3 'after.block :=
}
STRINGS { s t }
FUNCTION {output.nonnull}
{ 's :=
output.state mid.sentence =
{ ", " * write$ }
{ output.state after.block =
{ add.period$ write$
newline$
"\newblock " write$
}
{ output.state before.all =
'write$
{ add.period$ " " * write$ }
if$
}
if$
mid.sentence 'output.state :=
}
if$
s
}
FUNCTION {output}
{ duplicate$ empty$
'pop$
'output.nonnull
if$
}
FUNCTION {output.check}
{ 't :=
duplicate$ empty$
{ pop$ "empty " t * " in " * cite$ * warning$ }
'output.nonnull
if$
}
FUNCTION {fin.entry}
{ add.period$
write$
newline$
}
FUNCTION {new.block}
{ output.state before.all =
'skip$
{ after.block 'output.state := }
if$
}
FUNCTION {new.sentence}
{ output.state after.block =
'skip$
{ output.state before.all =
'skip$
{ after.sentence 'output.state := }
if$
}
if$
}
FUNCTION {not}
{ { #0 }
{ #1 }
if$
}
FUNCTION {and}
{ 'skip$
{ pop$ #0 }
if$
}
FUNCTION {or}
{ { pop$ #1 }
'skip$
if$
}
FUNCTION {new.block.checka}
{ empty$
'skip$
'new.block
if$
}
FUNCTION {new.block.checkb}
{ empty$
swap$ empty$
and
'skip$
'new.block
if$
}
FUNCTION {new.sentence.checka}
{ empty$
'skip$
'new.sentence
if$
}
FUNCTION {new.sentence.checkb}
{ empty$
swap$ empty$
and
'skip$
'new.sentence
if$
}
FUNCTION {field.or.null}
{ duplicate$ empty$
{ pop$ "" }
'skip$
if$
}
FUNCTION {emphasize}
{ duplicate$ empty$
{ pop$ "" }
{ "\emph{" swap$ * "}" * }
if$
}
INTEGERS { nameptr namesleft numnames }
FUNCTION {format.names}
{ 's :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't :=
nameptr #1 >
{ namesleft #1 >
{ ", " * t * }
{ numnames #2 >
{ "," * }
'skip$
if$
t "others" =
{ " et~al." * }
{ " and " * t * }
if$
}
if$
}
't
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}
FUNCTION {format.key}
{ empty$
{ key field.or.null }
{ "" }
if$
}
FUNCTION {format.authors}
{ author empty$
{ "" }
{ author format.names }
if$
}
FUNCTION {format.editors}
{ editor empty$
{ "" }
{ editor format.names
editor num.names$ #1 >
{ ", editors" * }
{ ", editor" * }
if$
}
if$
}
FUNCTION {format.isbn}
{ isbn empty$
{ "" }
{ new.block "ISBN " isbn * }
if$
}
FUNCTION {format.issn}
{ issn empty$
{ "" }
{ new.block "ISSN " issn * }
if$
}
FUNCTION {format.url}
{ url empty$
{ "" }
{ new.block "URL \url{" url * "}" * }
if$
}
FUNCTION {format.doi}
{ doi empty$
{ "" }
{ new.block "\doi{" doi * "}" * }
if$
}
FUNCTION {format.title}
{ title empty$
{ "" }
{ title "t" change.case$ }
if$
}
FUNCTION {format.full.names}
{'s :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr
"{vv~}{ll}" format.name$ 't :=
nameptr #1 >
{
namesleft #1 >
{ ", " * t * }
{
numnames #2 >
{ "," * }
'skip$
if$
t "others" =
{ " et~al." * }
{ " and " * t * }
if$
}
if$
}
't
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}
FUNCTION {author.editor.full}
{ author empty$
{ editor empty$
{ "" }
{ editor format.full.names }
if$
}
{ author format.full.names }
if$
}
FUNCTION {author.full}
{ author empty$
{ "" }
{ author format.full.names }
if$
}
FUNCTION {editor.full}
{ editor empty$
{ "" }
{ editor format.full.names }
if$
}
FUNCTION {make.full.names}
{ type$ "book" =
type$ "inbook" =
or
'author.editor.full
{ type$ "proceedings" =
'editor.full
'author.full
if$
}
if$
}
FUNCTION {output.bibitem}
{ newline$
"\bibitem[" write$
label write$
")" make.full.names duplicate$ short.list =
{ pop$ }
{ * }
if$
"]{" * write$
cite$ write$
"}" write$
newline$
""
before.all 'output.state :=
}
FUNCTION {n.dashify}
{ 't :=
""
{ t empty$ not }
{ t #1 #1 substring$ "-" =
{ t #1 #2 substring$ "--" = not
{ "--" *
t #2 global.max$ substring$ 't :=
}
{ { t #1 #1 substring$ "-" = }
{ "-" *
t #2 global.max$ substring$ 't :=
}
while$
}
if$
}
{ t #1 #1 substring$ *
t #2 global.max$ substring$ 't :=
}
if$
}
while$
}
FUNCTION {format.date}
{ year duplicate$ empty$
{ "empty year in " cite$ * warning$
pop$ "" }
'skip$
if$
month empty$
'skip$
{ month
" " * swap$ *
}
if$
extra.label *
}
FUNCTION {format.btitle}
{ title emphasize
}
FUNCTION {tie.or.space.connect}
{ duplicate$ text.length$ #3 <
{ "~" }
{ " " }
if$
swap$ * *
}
FUNCTION {either.or.check}
{ empty$
'pop$
{ "can't use both " swap$ * " fields in " * cite$ * warning$ }
if$
}
FUNCTION {format.bvolume}
{ volume empty$
{ "" }
{ "volume" volume tie.or.space.connect
series empty$
'skip$
{ " of " * series emphasize * }
if$
"volume and number" number either.or.check
}
if$
}
FUNCTION {format.number.series}
{ volume empty$
{ number empty$
{ series field.or.null }
{ output.state mid.sentence =
{ "number" }
{ "Number" }
if$
number tie.or.space.connect
series empty$
{ "there's a number but no series in " cite$ * warning$ }
{ " in " * series * }
if$
}
if$
}
{ "" }
if$
}
FUNCTION {format.edition}
{ edition empty$
{ "" }
{ output.state mid.sentence =
{ edition "l" change.case$ " edition" * }
{ edition "t" change.case$ " edition" * }
if$
}
if$
}
INTEGERS { multiresult }
FUNCTION {multi.page.check}
{ 't :=
#0 'multiresult :=
{ multiresult not
t empty$ not
and
}
{ t #1 #1 substring$
duplicate$ "-" =
swap$ duplicate$ "," =
swap$ "+" =
or or
{ #1 'multiresult := }
{ t #2 global.max$ substring$ 't := }
if$
}
while$
multiresult
}
FUNCTION {format.pages}
{ pages empty$
{ "" }
{ pages multi.page.check
{ "pages" pages n.dashify tie.or.space.connect }
{ "page" pages tie.or.space.connect }
if$
}
if$
}
FUNCTION {format.eid}
{ eid empty$
{ "" }
{ "art." eid tie.or.space.connect }
if$
}
FUNCTION {format.vol.num.pages}
{ volume field.or.null
number empty$
'skip$
{ "\penalty0 (" number * ")" * *
volume empty$
{ "there's a number but no volume in " cite$ * warning$ }
'skip$
if$
}
if$
pages empty$
'skip$
{ duplicate$ empty$
{ pop$ format.pages }
{ ":\penalty0 " * pages n.dashify * }
if$
}
if$
}
FUNCTION {format.vol.num.eid}
{ volume field.or.null
number empty$
'skip$
{ "\penalty0 (" number * ")" * *
volume empty$
{ "there's a number but no volume in " cite$ * warning$ }
'skip$
if$
}
if$
eid empty$
'skip$
{ duplicate$ empty$
{ pop$ format.eid }
{ ":\penalty0 " * eid * }
if$
}
if$
}
FUNCTION {format.chapter.pages}
{ chapter empty$
'format.pages
{ type empty$
{ "chapter" }
{ type "l" change.case$ }
if$
chapter tie.or.space.connect
pages empty$
'skip$
{ ", " * format.pages * }
if$
}
if$
}
FUNCTION {format.in.ed.booktitle}
{ booktitle empty$
{ "" }
{ editor empty$
{ "In " booktitle emphasize * }
{ "In " format.editors * ", " * booktitle emphasize * }
if$
}
if$
}
FUNCTION {empty.misc.check}
{ author empty$ title empty$ howpublished empty$
month empty$ year empty$ note empty$
and and and and and
key empty$ not and
{ "all relevant fields are empty in " cite$ * warning$ }
'skip$
if$
}
FUNCTION {format.thesis.type}
{ type empty$
'skip$
{ pop$
type "t" change.case$
}
if$
}
FUNCTION {format.tr.number}
{ type empty$
{ "Technical Report" }
'type
if$
number empty$
{ "t" change.case$ }
{ number tie.or.space.connect }
if$
}
FUNCTION {format.article.crossref}
{ key empty$
{ journal empty$
{ "need key or journal for " cite$ * " to crossref " * crossref *
warning$
""
}
{ "In \emph{" journal * "}" * }
if$
}
{ "In " }
if$
" \citet{" * crossref * "}" *
}
FUNCTION {format.book.crossref}
{ volume empty$
{ "empty volume in " cite$ * "'s crossref of " * crossref * warning$
"In "
}
{ "Volume" volume tie.or.space.connect
" of " *
}
if$
editor empty$
editor field.or.null author field.or.null =
or
{ key empty$
{ series empty$
{ "need editor, key, or series for " cite$ * " to crossref " *
crossref * warning$
"" *
}
{ "\emph{" * series * "}" * }
if$
}
'skip$
if$
}
'skip$
if$
" \citet{" * crossref * "}" *
}
FUNCTION {format.incoll.inproc.crossref}
{ editor empty$
editor field.or.null author field.or.null =
or
{ key empty$
{ booktitle empty$
{ "need editor, key, or booktitle for " cite$ * " to crossref " *
crossref * warning$
""
}
{ "In \emph{" booktitle * "}" * }
if$
}
{ "In " }
if$
}
{ "In " }
if$
" \citet{" * crossref * "}" *
}
FUNCTION {article}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.title "title" output.check
new.block
crossref missing$
{ journal emphasize "journal" output.check
eid empty$
{ format.vol.num.pages output }
{ format.vol.num.eid output }
if$
format.date "year" output.check
}
{ format.article.crossref output.nonnull
eid empty$
{ format.pages output }
{ format.eid output }
if$
}
if$
format.issn output
format.doi output
format.url output
new.block
note output
fin.entry
}
FUNCTION {book}
{ output.bibitem
author empty$
{ format.editors "author and editor" output.check
editor format.key output
}
{ format.authors output.nonnull
crossref missing$
{ "author and editor" editor either.or.check }
'skip$
if$
}
if$
new.block
format.btitle "title" output.check
crossref missing$
{ format.bvolume output
new.block
format.number.series output
new.sentence
publisher "publisher" output.check
address output
}
{ new.block
format.book.crossref output.nonnull
}
if$
format.edition output
format.date "year" output.check
format.isbn output
format.doi output
format.url output
new.block
note output
fin.entry
}
FUNCTION {booklet}
{ output.bibitem
format.authors output
author format.key output
new.block
format.title "title" output.check
howpublished address new.block.checkb
howpublished output
address output
format.date output
format.isbn output
format.doi output
format.url output
new.block
note output
fin.entry
}
FUNCTION {inbook}
{ output.bibitem
author empty$
{ format.editors "author and editor" output.check
editor format.key output
}
{ format.authors output.nonnull
crossref missing$
{ "author and editor" editor either.or.check }
'skip$
if$
}
if$
new.block
format.btitle "title" output.check
crossref missing$
{ format.bvolume output
format.chapter.pages "chapter and pages" output.check
new.block
format.number.series output
new.sentence
publisher "publisher" output.check
address output
}
{ format.chapter.pages "chapter and pages" output.check
new.block
format.book.crossref output.nonnull
}
if$
format.edition output
format.date "year" output.check
format.isbn output
format.doi output
format.url output
new.block
note output
fin.entry
}
FUNCTION {incollection}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.title "title" output.check
new.block
crossref missing$
{ format.in.ed.booktitle "booktitle" output.check
format.bvolume output
format.number.series output
format.chapter.pages output
new.sentence
publisher "publisher" output.check
address output
format.edition output
format.date "year" output.check
}
{ format.incoll.inproc.crossref output.nonnull
format.chapter.pages output
}
if$
format.isbn output
format.doi output
format.url output
new.block
note output
fin.entry
}
FUNCTION {inproceedings}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.title "title" output.check
new.block
crossref missing$
{ format.in.ed.booktitle "booktitle" output.check
format.bvolume output
format.number.series output
format.pages output
address empty$
{ organization publisher new.sentence.checkb
organization output
publisher output
format.date "year" output.check
}
{ address output.nonnull
format.date "year" output.check
new.sentence
organization output
publisher output
}
if$
}
{ format.incoll.inproc.crossref output.nonnull
format.pages output
}
if$
format.isbn output
format.doi output
format.url output
new.block
note output
fin.entry
}
FUNCTION {conference} { inproceedings }
FUNCTION {manual}
{ output.bibitem
format.authors output
author format.key output
new.block
format.btitle "title" output.check
organization address new.block.checkb
organization output
address output
format.edition output
format.date output
format.url output
new.block
note output
fin.entry
}
FUNCTION {mastersthesis}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.title "title" output.check
new.block
"Master's thesis" format.thesis.type output.nonnull
school "school" output.check
address output
format.date "year" output.check
format.url output
new.block
note output
fin.entry
}
FUNCTION {misc}
{ output.bibitem
format.authors output
author format.key output
title howpublished new.block.checkb
format.title output
howpublished new.block.checka
howpublished output
format.date output
format.issn output
format.url output
new.block
note output
fin.entry
empty.misc.check
}
FUNCTION {phdthesis}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.btitle "title" output.check
new.block
"PhD thesis" format.thesis.type output.nonnull
school "school" output.check
address output
format.date "year" output.check
format.url output
new.block
note output
fin.entry
}
FUNCTION {proceedings}
{ output.bibitem
format.editors output
editor format.key output
new.block
format.btitle "title" output.check
format.bvolume output
format.number.series output
address output
format.date "year" output.check
new.sentence
organization output
publisher output
format.isbn output
format.doi output
format.url output
new.block
note output
fin.entry
}
FUNCTION {techreport}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.title "title" output.check
new.block
format.tr.number output.nonnull
institution "institution" output.check
address output
format.date "year" output.check
format.url output
new.block
note output
fin.entry
}
FUNCTION {unpublished}
{ output.bibitem
format.authors "author" output.check
author format.key output
new.block
format.title "title" output.check
new.block
note "note" output.check
format.date output
format.url output
fin.entry
}
FUNCTION {default.type} { misc }
MACRO {jan} {"January"}
MACRO {feb} {"February"}
MACRO {mar} {"March"}
MACRO {apr} {"April"}
MACRO {may} {"May"}
MACRO {jun} {"June"}
MACRO {jul} {"July"}
MACRO {aug} {"August"}
MACRO {sep} {"September"}
MACRO {oct} {"October"}
MACRO {nov} {"November"}
MACRO {dec} {"December"}
MACRO {acmcs} {"ACM Computing Surveys"}
MACRO {acta} {"Acta Informatica"}
MACRO {cacm} {"Communications of the ACM"}
MACRO {ibmjrd} {"IBM Journal of Research and Development"}
MACRO {ibmsj} {"IBM Systems Journal"}
MACRO {ieeese} {"IEEE Transactions on Software Engineering"}
MACRO {ieeetc} {"IEEE Transactions on Computers"}
MACRO {ieeetcad}
{"IEEE Transactions on Computer-Aided Design of Integrated Circuits"}
MACRO {ipl} {"Information Processing Letters"}
MACRO {jacm} {"Journal of the ACM"}
MACRO {jcss} {"Journal of Computer and System Sciences"}
MACRO {scp} {"Science of Computer Programming"}
MACRO {sicomp} {"SIAM Journal on Computing"}
MACRO {tocs} {"ACM Transactions on Computer Systems"}
MACRO {tods} {"ACM Transactions on Database Systems"}
MACRO {tog} {"ACM Transactions on Graphics"}
MACRO {toms} {"ACM Transactions on Mathematical Software"}
MACRO {toois} {"ACM Transactions on Office Information Systems"}
MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"}
MACRO {tcs} {"Theoretical Computer Science"}
READ
FUNCTION {sortify}
{ purify$
"l" change.case$
}
INTEGERS { len }
FUNCTION {chop.word}
{ 's :=
'len :=
s #1 len substring$ =
{ s len #1 + global.max$ substring$ }
's
if$
}
FUNCTION {format.lab.names}
{ 's :=
s #1 "{vv~}{ll}" format.name$
s num.names$ duplicate$
#2 >
{ pop$ " et~al." * }
{ #2 <
'skip$
{ s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
{ " et~al." * }
{ " and " * s #2 "{vv~}{ll}" format.name$ * }
if$
}
if$
}
if$
}
FUNCTION {author.key.label}
{ author empty$
{ key empty$
{ cite$ #1 #3 substring$ }
'key
if$
}
{ author format.lab.names }
if$
}
FUNCTION {author.editor.key.label}
{ author empty$
{ editor empty$
{ key empty$
{ cite$ #1 #3 substring$ }
'key
if$
}
{ editor format.lab.names }
if$
}
{ author format.lab.names }
if$
}
FUNCTION {author.key.organization.label}
{ author empty$
{ key empty$
{ organization empty$
{ cite$ #1 #3 substring$ }
{ "The " #4 organization chop.word #3 text.prefix$ }
if$
}
'key
if$
}
{ author format.lab.names }
if$
}
FUNCTION {editor.key.organization.label}
{ editor empty$
{ key empty$
{ organization empty$
{ cite$ #1 #3 substring$ }
{ "The " #4 organization chop.word #3 text.prefix$ }
if$
}
'key
if$
}
{ editor format.lab.names }
if$
}
FUNCTION {calc.short.authors}
{ type$ "book" =
type$ "inbook" =
or
'author.editor.key.label
{ type$ "proceedings" =
'editor.key.organization.label
{ type$ "manual" =
'author.key.organization.label
'author.key.label
if$
}
if$
}
if$
'short.list :=
}
FUNCTION {calc.label}
{ calc.short.authors
short.list
"("
*
year duplicate$ empty$
short.list key field.or.null = or
{ pop$ "" }
'skip$
if$
*
'label :=
}
FUNCTION {sort.format.names}
{ 's :=
#1 'nameptr :=
""
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{
s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't :=
nameptr #1 >
{
" " *
namesleft #1 = t "others" = and
{ "zzzzz" * }
{ numnames #2 > nameptr #2 = and
{ "zz" * year field.or.null * " " * }
'skip$
if$
t sortify *
}
if$
}
{ t sortify * }
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}
FUNCTION {sort.format.title}
{ 't :=
"A " #2
"An " #3
"The " #4 t chop.word
chop.word
chop.word
sortify
#1 global.max$ substring$
}
FUNCTION {author.sort}
{ author empty$
{ key empty$
{ "to sort, need author or key in " cite$ * warning$
""
}
{ key sortify }
if$
}
{ author sort.format.names }
if$
}
FUNCTION {author.editor.sort}
{ author empty$
{ editor empty$
{ key empty$
{ "to sort, need author, editor, or key in " cite$ * warning$
""
}
{ key sortify }
if$
}
{ editor sort.format.names }
if$
}
{ author sort.format.names }
if$
}
FUNCTION {author.organization.sort}
{ author empty$
{ organization empty$
{ key empty$
{ "to sort, need author, organization, or key in " cite$ * warning$
""
}
{ key sortify }
if$
}
{ "The " #4 organization chop.word sortify }
if$
}
{ author sort.format.names }
if$
}
FUNCTION {editor.organization.sort}
{ editor empty$
{ organization empty$
{ key empty$
{ "to sort, need editor, organization, or key in " cite$ * warning$
""
}
{ key sortify }
if$
}
{ "The " #4 organization chop.word sortify }
if$
}
{ editor sort.format.names }
if$
}
FUNCTION {presort}
{ calc.label
label sortify
" "
*
type$ "book" =
type$ "inbook" =
or
'author.editor.sort
{ type$ "proceedings" =
'editor.organization.sort
{ type$ "manual" =
'author.organization.sort
'author.sort
if$
}
if$
}
if$
" "
*
year field.or.null sortify
*
" "
*
cite$
*
#1 entry.max$ substring$
'sort.label :=
sort.label *
#1 entry.max$ substring$
'sort.key$ :=
}
ITERATE {presort}
SORT
STRINGS { longest.label last.label next.extra }
INTEGERS { longest.label.width last.extra.num number.label }
FUNCTION {initialize.longest.label}
{ "" 'longest.label :=
#0 int.to.chr$ 'last.label :=
"" 'next.extra :=
#0 'longest.label.width :=
#0 'last.extra.num :=
#0 'number.label :=
}
FUNCTION {forward.pass}
{ last.label label =
{ last.extra.num #1 + 'last.extra.num :=
last.extra.num int.to.chr$ 'extra.label :=
}
{ "a" chr.to.int$ 'last.extra.num :=
"" 'extra.label :=
label 'last.label :=
}
if$
number.label #1 + 'number.label :=
}
FUNCTION {reverse.pass}
{ next.extra "b" =
{ "a" 'extra.label := }
'skip$
if$
extra.label 'next.extra :=
extra.label
duplicate$ empty$
'skip$
{ "{\natexlab{" swap$ * "}}" * }
if$
'extra.label :=
label extra.label * 'label :=
}
EXECUTE {initialize.longest.label}
ITERATE {forward.pass}
REVERSE {reverse.pass}
FUNCTION {bib.sort.order}
{ sort.label 'sort.key$ :=
}
ITERATE {bib.sort.order}
SORT
FUNCTION {begin.bib}
{ preamble$ empty$
'skip$
{ preamble$ write$ newline$ }
if$
"\begin{thebibliography}{" number.label int.to.str$ * "}" *
write$ newline$
"\providecommand{\natexlab}[1]{#1}"
write$ newline$
"\providecommand{\url}[1]{\texttt{#1}}"
write$ newline$
"\expandafter\ifx\csname urlstyle\endcsname\relax"
write$ newline$
" \providecommand{\doi}[1]{doi: #1}\else"
write$ newline$
" \providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi"
write$ newline$
}
EXECUTE {begin.bib}
EXECUTE {init.state.consts}
ITERATE {call.type$}
FUNCTION {end.bib}
{ newline$
"\end{thebibliography}" write$ newline$
}
EXECUTE {end.bib}
references.bib · 939 B
@article{fickers2012towards,
author = {Andreas Fickers},
title = {{Towards a New Digital Historicism? Doing History in the Age of Abundance}},
journal = {{View: Journal of European Television and Culture}},
volume = {1},
number = {1},
year = {2012},
url = {http://orbilu.uni.lu/bitstream/10993/7615/1/4-4-1-PB.pdf},
}
@book{maxwell2013qualitative,
title = {Qualitative research design: An interactive approach, 3rd edition},
author = {Maxwell, Joseph A},
year = {2013},
publisher = {Sage publications}
}
@misc{owens2014start,
title = {Where to start? On research questions in the digital humanities},
author = {Owens, T},
url = {http://www.trevorowens.org/2014/08/where-to-start-on-researchquestions-in-the-digital-humanities/},
howpublished = {Blog},
year = {2014},
note = {http://www.trevorowens.org/}
}
The first page, as this template compiles today. Click it to enlarge, and again to shrink. Open the file ↗