texlive[45563] Master: dccpaper (20oct17)

commits+karl at tug.org commits+karl at tug.org
Fri Oct 20 22:03:58 CEST 2017


Revision: 45563
          http://tug.org/svn/texlive?view=revision&revision=45563
Author:   karl
Date:     2017-10-20 22:03:58 +0200 (Fri, 20 Oct 2017)
Log Message:
-----------
dccpaper (20oct17)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/dccpaper/README.md
    trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-apacite.bib
    trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-biblatex.bib
    trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper.pdf
    trunk/Master/texmf-dist/source/latex/dccpaper/Makefile
    trunk/Master/texmf-dist/source/latex/dccpaper/dccpaper.dtx
    trunk/Master/texmf-dist/tex/latex/dccpaper/dccpaper-base.sty
    trunk/Master/texmf-dist/tex/latex/dccpaper/idcc.cls
    trunk/Master/texmf-dist/tex/latex/dccpaper/ijdc-v9.cls
    trunk/Master/tlpkg/libexec/ctan2tds

Removed Paths:
-------------
    trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-base.doc
    trunk/Master/texmf-dist/doc/latex/dccpaper/idcc.doc
    trunk/Master/texmf-dist/doc/latex/dccpaper/ijdc-v9.doc

Modified: trunk/Master/texmf-dist/doc/latex/dccpaper/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/dccpaper/README.md	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/doc/latex/dccpaper/README.md	2017-10-20 20:03:58 UTC (rev 45563)
@@ -2,11 +2,11 @@
 
 The dccpaper bundle consists of two very similar classes.
 
-ijdc-v9.cls corresponds to the template used by the [International
-Journal of Digital Curation], beginning with volume 9.
+ijdc-v9.cls corresponds to the template used by the
+[International Journal of Digital Curation], beginning with volume 9.
 
-idcc.cls corresponds to the template used for the [International Digital
-Curation Conference], beginning with IDCC15.
+idcc.cls corresponds to the template used for the
+[International Digital Curation Conference], beginning with IDCC15.
 
 As the classes are so similar, their common features are abstracted out
 into dccpaper-base.sty; please do not attempt to use this package
@@ -15,6 +15,9 @@
 The classes are suitable for submissions to the respective review
 boards, but can also be used to produce the final camera-ready papers.
 
+[International Journal of Digital Curation]: http://www.ijdc.net/index.php/ijdc
+[International Digital Curation Conference]: http://www.dcc.ac.uk/events/international-digital-curation-conference-idcc
+
 ## Installation
 
 ### Managed way
@@ -30,31 +33,40 @@
 
 A makefile is provided which you can use with the Make utility:
 
-  * Running `make` generates the derived files
+  * Running `make source` generates the derived files
       - README.md
-      - dccpaper.pdf
       - ijdc-v9.cls
       - idcc.cls
       - dccpaper-base.sty
       - dccpaper-apacite.bib
       - dccpaper-biblatex.bib
+  * Running `make` generates the above files and also dccpaper.pdf.
   * Running `make inst` installs the files in the user's TeX tree.
   * Running `make install` installs the files in the local TeX tree.
 
 ### Manual way
 
- 1. Compile dccpaper.dtx just as you would a normal LaTeX file. Bear in
-    mind the documentation requires the Biblatex package and the Biber
-    tool rather than regular BibTeX. As well as the usual PDF (or DVI)
-    and auxiliary files, several others are generated.
- 2. Move the files to your TeX tree as follows:
-      - `source/latex/dccpaper`: dccpaper.dtx, dccpaper.ins
-      - `tex/latex/dccpaper`: ijdc-v9.cls, idcc.cls, dccpaper-base.sty,
-        dccpaper-by.eps, dccpaper-by.pdf
-      - `doc/latex/dccpaper`: dccpaper.pdf, dccpaper-apacite.bib,
-        dccpaper-biblatex.bib, README.md
+ 1. Run `tex dccpaper.dtx` to generate the source files.
+ 2. Compile dccpaper.dtx with (any version of) LaTeX and Biber to generate the
+    documentation. Due to a dependency on the markdown package, you will need
+    either to use LuaLaTeX or to enable shell escape.
+ 3. Move the files to your TeX tree as follows:
+      - `source/latex/dccpaper`:
+        dccpaper.dtx,
+        dccpaper.ins
+      - `tex/latex/dccpaper`:
+        ijdc-v9.cls,
+        idcc.cls,
+        dccpaper-base.sty,
+        dccpaper-by.eps,
+        dccpaper-by.pdf
+      - `doc/latex/dccpaper`:
+        dccpaper.pdf,
+        dccpaper-apacite.bib,
+        dccpaper-biblatex.bib,
+        README.md
 
- 3. You may then have to update your installation's file name database
+ 4. You may then have to update your installation's file name database
     before TeX and friends can see the files.
 
 ## Licence
@@ -65,21 +77,17 @@
 dccpaper-by.pdf, the documented LaTeX file dccpaper.dtx and a Makefile.
 
 The text files contained in this work may be distributed and/or modified
-under the conditions of the [LaTeX Project Public License (LPPL)],
+under the conditions of the [LaTeX Project Public License (LPPL)][lppl],
 either version 1.3c of this license or (at your option) any later
 version.
 
 The image files distributed with this bundle derive from the file
 [by.eps] distributed by Creative Commons. The image is a trademark of
-Creative Commons and is subject to the [Creative Commons trademark
-policy].
+Creative Commons and is subject to the [Creative Commons trademark policy][cctp].
 
-This work is "maintained" (as per LPPL maintenance status) by [Alex
-Ball].
+This work is ^^e2^^80^^9cmaintained^^e2^^80^^9d^^c2^^a0(as per LPPL maintenance status) by [Alex Ball][me].
 
-[International Journal of Digital Curation]: http://www.ijdc.net/index.php/ijdc
-[International Digital Curation Conference]: http://www.dcc.ac.uk/events/international-digital-curation-conference-idcc
-[LaTeX Project Public License (LPPL)]: http://www.latex-project.org/lppl.txt
-[by.eps]: http://mirrors.creativecommons.org/presskit/buttons/88x31/eps/by.eps
-[Creative Commons trademark policy]: http://creativecommons.org/policies
-[Alex Ball]: http://alexball.me.uk/
+[lppl]: http://www.latex-project.org/lppl.txt "LaTeX Project Public License (LPPL)"
+[by.eps]: http://mirrors.creativecommons.org/presskit/buttons/88x31/eps/by.eps "CC BY licence badge"
+[cctp]: http://creativecommons.org/policies "Creative Commons trademark policy"
+[me]: http://alexball.me.uk/ "Alex Ball"

Modified: trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-apacite.bib
===================================================================
--- trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-apacite.bib	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-apacite.bib	2017-10-20 20:03:58 UTC (rev 45563)
@@ -41,7 +41,7 @@
   year = {2005},
   title = {Digital curation and preservation: Defining the research agenda for the next decade},
   type = {\bibnotype},
-  howpublished = {Report of the Warwick Workshop, November 7–8, 2005},
+  howpublished = {Report of the Warwick Workshop, November 7^^e2^^80^^938, 2005},
   url = {http://www.dcc.ac.uk/webfm_send/346}
 }
 
@@ -111,7 +111,7 @@
 
 @misc{waterton.etal2013ual,
   author = {Waterton, C. and Watson, N. and Norton, L.},
-  title = {Understanding and Acting in {Loweswater}, 2007–2010},
+  title = {Understanding and Acting in {Loweswater}, 2007^^e2^^80^^932010},
   type = {Data set},
   year = {2013},
   publisher = {UK Data Archive},

Deleted: trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-base.doc
===================================================================
--- trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-base.doc	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-base.doc	2017-10-20 20:03:58 UTC (rev 45563)
@@ -1,1364 +0,0 @@
-\ProvidesFile{dccpaper-base.doc}[2016/08/06 automatically generated with makedoc.sty]
-\begin{lstlisting}[firstnumber=1]
-%%
-%% This is file `dccpaper-base.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% dccpaper.dtx  (with options: `base')
-%%
-%% ----------------------------------------------------------------
-%% The dccpaper bundle: Classes for submissions to IJDC and IDCC
-%% Author:  Alex Ball
-%% E-mail:  a.ball at ukoln.ac.uk
-%% License: Released under the LaTeX Project Public License v1.3c or later
-%% See:     http://www.latex-project.org/lppl.txt
-%% ----------------------------------------------------------------
-%%
-\def\Version{2016/08/05 v1.5}
-\ProvidesPackage{dccpaper-base.sty}
-    [\Version\space Common class code for IJDC and IDCC papers.]
-\end{lstlisting}
-
-The \textsf{dccpaper} classes are deliberately very similar. This package
-contains the common code.
-
-We use British English orthography.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage[british]{babel}
-\end{lstlisting}
-
-The macro patching commands from \textsf{etoolbox} come in useful for handling
-author and date information, and also for compatibility with \textsf{apacite}.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage{etoolbox}
-\end{lstlisting}
-
-The \textsf{dccpaper} classes use Times as the main text font. We prefer
-\textsf{newtx} as it provides support for mathematics, but the standard
-\textsf{times} package will do. In case they are needed, we also provide
-Helvetica for the sans serif font and Computer Modern Teletype for the
-monospaced.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage[T1]{fontenc}
-\IfFileExists{newtxtext.sty}%
-  {\RequirePackage{newtxtext,newtxmath}}%
-  {\RequirePackage{times}}
-\RequirePackage[scaled=0.92]{helvet}
-\renewcommand{\ttdefault}{cmtt}
-\end{lstlisting}
-
-We will need support for included graphics and colour. The structural elements
-are a medium turquoise, while the links are slightly darker to make them
-easier to read on screen.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage{graphicx}
-\IfFileExists{xcolor.sty}%
-  {\RequirePackage{xcolor}}%
-  {\RequirePackage{color}}
-\definecolor[named]{struct}{rgb}{0,0.5,0.5}
-\definecolor[named]{links}{rgb}{0,0.4,0.4}
-\end{lstlisting}
-
-We will calculate some lengths later.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage{calc}
-
-\end{lstlisting}
-
-Ragged right text is easier to read on screen, but fully justified text looks
-better. The |\raggedyright| layout from Peter Wilson's \textsf{memoir} class
-(2005/09/25 v1.618) is an excellent compromise. The code below replicates it.
-
-First we save the original definitions of |\\| and |\parindent| as
-|\OrigLineBreak| and |\RaggedParindent| respectively.
-
-\begin{lstlisting}[firstnumber=last]
-\let\OrigLineBreak\\
-\newdimen\RaggedParindent
-\setlength{\RaggedParindent}{\parindent}
-
-\end{lstlisting}
-
-The |\raggedyright| layout more or less lays text out as with full
-justification, but then lets the shorter lines relax a bit from the right
-margin. It is the default for DCC papers.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand{\raggedyright}[1][2em]{%
-  \let\\\@centercr\@rightskip \z@ \@plus #1\relax
-  \rightskip\@rightskip
-  \leftskip\z at skip
-  \parindent\RaggedParindent}
-\AtBeginDocument{\raggedyright}
-
-\end{lstlisting}
-
-The |\flushleftright| layout restores full justification, in case it is
-needed.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\flushleftright}{%
-  \let\\\OrigLineBreak
-  \leftskip\z at skip
-  \rightskip\leftskip
-  \parfillskip\@flushglue
-  \everypar{}}
-
-\end{lstlisting}
-
-Pdf\TeX\ 1.40.15 introduced the facility to include dummy interword spaces
-to improve text extraction and reflow. We test for this facility and use it
-if available.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage{ifpdf}
-\ifpdf
-  \ifdef{\pdfinterwordspaceon}{\pdfinterwordspaceon}{}
-\fi
-
-\end{lstlisting}
-
-The classes have some special metadata requirements. We start with the author
-information.
-
-The macro |\thecorrespondence| is used in the title page footer for the name,
-postal address and email address of the corresponding author.
-
-\begin{lstlisting}[firstnumber=last]
-\def\thecorrespondence{}
-\newcommand*{\correspondence}[1]{\def\thecorrespondence{#1}}
-\end{lstlisting}
-
-The handling of authors here is inspired by Patrick W Daly's \textsf{authblk},
-(2001/02/27 1.3), and defines the familiar user commands. Authors are
-presented in blocks, one affiliation but perhaps several authors per block.
-
-We make the presentation of the author information configurable (just in case)
-with some hooks and lengths:
-\begin{itemize}
-\item |\Authfont| is the font used for author names;
-\item |\Affilfont| is the font used for affiliations;
-\item |\affilsep| is the line spacing between author names and affiliations;
-\item |\authblksep| is the line spacing between author name/affiliation
-      blocks.
-\end{itemize}
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\Authfont}{\normalfont}
-\newcommand*{\Affilfont}{\normalfont\small}
-\newlength{\affilsep}\setlength{\affilsep}{0pt}
-\newlength{\authblksep}\setlength{\authblksep}{1.5\baselineskip}
-\end{lstlisting}
-
-The |\AuthorBlock| command will be used to collect all the author information.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand{\AuthorBlock}{}
-\end{lstlisting}
-
-The |\MainAuthor| command collects abbreviated author information for use in
-the headers.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand{\MainAuthor}{}
-\end{lstlisting}
-
-The |\dccp at author| command, meanwhile, collects a full list of authors for the
-PDF metatdata.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand{\dccp at author}{}
-\end{lstlisting}
-
-We define counters for
-\begin{itemize}
-\item the total number of authors defined;
-\item the number of authors in the current block;
-\item the number of blocks defined.
-\end{itemize}
-
-\begin{lstlisting}[firstnumber=last]
-\newcounter{authors}
-\newcounter{authorsinblock}
-\newcounter{block}
-\end{lstlisting}
-
-The |block| counter will increase once in the preamble, and again when the
-information is typeset, so we need to reset it at the beginning of the
-document.
-
-\begin{lstlisting}[firstnumber=last]
-\AtBeginDocument{\setcounter{block}{0}}
-\end{lstlisting}
-
-The new definition of the author command starts here.
-
-\begin{lstlisting}[firstnumber=last]
-\renewcommand{\author}[1]{%
-\end{lstlisting}
-
-If this is the first or second |\author| command, we add the name to our
-abbreviated list of authors. Otherwise, we replace the name of the second
-and subsequent authors with `et al.' in that list.
-
-At the same time, we use a simpler technique to populate |\dccp at author|.
-
-\begin{lstlisting}[firstnumber=last]
-  \ifnum\theauthors=0
-    \def\dccp at author{#1}%
-    \def\MainAuthor{#1}%
-  \else
-    \appto\dccp at author{, #1}%
-    \ifnum\theauthors=1%
-      \def\OtherMainAuthors{ and #1}%
-      \appto\MainAuthor{\OtherMainAuthors}%
-    \else
-      \ifnum\theauthors=2%
-        \def\OtherMainAuthors{ et al.}%
-      \fi
-    \fi
-  \fi
-  \stepcounter{authors}%
-\end{lstlisting}
-
-Each block has its author names collected in a macro like |\blocki at auth|,
-and its affiliation collected in a macro like |\blocki at affil| (the `i' is a
-serial number).
-
-If this is the first author in a block, we need to create the block and add it
-to |\AuthorBlock|; second and subsequent blocks are preceded by a |\quad| of
-space.
-
-\begin{lstlisting}[firstnumber=last]
-  \ifnum\theauthorsinblock=0%
-    \stepcounter{block}%
-    \expandafter\def\csname block\roman{block}@auth\endcsname{\Authfont#1}%
-    \ifnum\theblock>1\appto\AuthorBlock{\quad}\fi
-    \appto\AuthorBlock{%
-      \stepcounter{block}%
-      \begin{minipage}[t]{0.45\textwidth}\centering
-      \csname block\roman{block}@auth\endcsname
-      \ifx\undefined\csname block\roman{block}@affil\endcsname
-      \else
-        \\[\affilsep]\csname block\roman{block}@affil\endcsname
-      \fi
-      \end{minipage}%
-      \rule{0pt}{2\baselineskip}%
-      }
-  \else
-\end{lstlisting}
-
-Otherwise we just add the name to the right |\blocki at auth|-style macro.
-
-\begin{lstlisting}[firstnumber=last]
-    \csappto{block\roman{block}@auth}{, #1}%
-  \fi
-  \stepcounter{authorsinblock}%
-}
-\end{lstlisting}
-
-The |\affil| command adds an affiliation to the current block and closes it by
-resetting the |authorsinblock| counter.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand{\affil}[1]{%
-  \expandafter\def\csname block\roman{block}@affil\endcsname{\Affilfont#1}%
-  \setcounter{authorsinblock}{0}%
-}
-
-\end{lstlisting}
-
-The |\HeadTitle| collects the abbreviated title for use in the headers.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\HeadTitle}{}
-\end{lstlisting}
-
-We wrap the normal |\title| command with code to populate |\HeadTitle| with
-the optional argument if provided, or the mandatory one otherwise. We also
-provide a persistent |\thetitle| macro, stripped of any |\thanks|.
-
-\begin{lstlisting}[firstnumber=last]
-\let\ProperTitle=\title
-\renewcommand{\title}[2][\empty]{
-  \ifx\empty #1%
-    \renewcommand*{\HeadTitle}{#2}%
-  \else
-    \renewcommand*{\HeadTitle}{#1}%
-  \fi%
-  \begingroup\let\footnote\@gobble
-  \ProperTitle{#2}%
-  \begingroup
-    \renewcommand{\thanks}[1]{}
-    \protected at xdef\thetitle{#2}
-  \endgroup\endgroup
-}
-\end{lstlisting}
-
-To prevent \LaTeX\ throwing an error if no title is supplied, we supply a
-fallback value and issue a warning instead.
-
-\begin{lstlisting}[firstnumber=last]
-\def\thetitle{%
-  Please supply a title
-  \ClassWarning{dccpaper}{%
-    Please supply a title in the preamble with \noexpand\title{}%
-  }
-}
-
-\end{lstlisting}
-
-We make |\thedate| persistent, borrowing the technique used in Peter Wilson's
-\textsf{memoir} class (2005/09/25 v1.618).
-
-\begin{lstlisting}[firstnumber=last]
-\pretocmd{\date}{\begingroup\let\footnote\@gobble}{}{}%
-\apptocmd{\date}{%
-  \begingroup
-    \renewcommand{\thanks}[1]{}
-    \protected at xdef\thedate{#1}
-  \endgroup\endgroup%
-}{}{}
-\end{lstlisting}
-
-We ensure |\thedate| is defined using a dummy date.
-
-\begin{lstlisting}[firstnumber=last]
-\date{20xx}
-
-\end{lstlisting}
-
-IJDC articles have extra bibliographic information:
-\begin{itemize}
-\item |\volume| sets the volume number, |\thevolume|;
-\item |\issue| sets the issue number, |\theissue|;
-\item |\subno| sets the submission number, |\thesubno|.
-\end{itemize}
-
-These numbers are used to build the DOI, |\thedoi|.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\thevolume}{0}
-\newcommand*{\volume}[1]{\renewcommand*{\thevolume}{#1}}
-\newcommand*{\theissue}{0}
-\newcommand*{\issue}[1]{\renewcommand*{\theissue}{#1}}
-\newcommand*{\thesubno}{0}
-\newcommand*{\subno}[1]{\renewcommand*{\thesubno}{#1}}
-\newcommand*{\thedoi}{10.2218/ijdc.v\thevolume i\theissue .\thesubno}
-\end{lstlisting}
-
-They also display the page range. The following code was borrowed from Peter
-Wilson's \textsf{memoir} class (2005/09/25 v1.618). It defines a counter
-|lastpage| which, on the second run, will contain the number of the last page.
-
-\begin{lstlisting}[firstnumber=last]
-\newcounter{lastpage}
-\setcounter{lastpage}{0}
-\newcommand{\dol at stpage}{%
-  \if at filesw
-    \addtocounter{page}{-1}%
-    \immediate\write\@auxout%
-      {\string\setcounter{lastpage}{\the\c at page}}%
-    \stepcounter{page}%
-  \fi
-}
-\AtBeginDocument{\AtEndDocument{\clearpage\dol at stpage}}
-
-\end{lstlisting}
-
-DCC papers display some important dates. We collect these in |\dccp at dates|,
-initially setting the value to something sensible for papers in draft.
-
-\begin{lstlisting}[firstnumber=last]
-\def\dccp at dates{\emph{Draft from} \today}
-\end{lstlisting}
-
-Several types of date can be added:
-\begin{itemize}
-\item |\submitted| for when the authors submitted the paper (intended for
-      IDCC papers).
-\item |\received| for when the paper was received by the editorial board
-      (intended for IJDC papers).
-\item |\revised| for when the most recent version was received by the
-      editorial board.
-\item |\accepted| for when the paper was accepted by the editorial board.
-\end{itemize}
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\submitted}[1]{%
-  \def\dccp at dates{\emph{Submitted} #1}}
-\newcommand*{\received}[1]{%
-  \def\dccp at dates{\emph{Received} #1}}
-\newcommand*{\revised}[1]{%
-  \appto\dccp at dates{%
-    \space\space\space\textbar\space\space\space
-    \emph{Revision received} #1}%
-  }
-\newcommand*{\accepted}[1]{%
-  \appto\dccp at dates{%
-    \space\space\space\textbar\space\space\space
-    \emph{Accepted} #1}%
-  }
-\end{lstlisting}
-
-IJDC papers need to say if they had a previous life as a conference paper.
-This statement goes in |\dccp at conf|, which is initially empty. The user
-command for setting this text is |\conference|.
-
-\begin{lstlisting}[firstnumber=last]
-\let\dccp at conf=\empty
-\newcommand*{\conference}[1]{%
-  \renewcommand*{\dccp at conf}{An earlier version of this paper was presented at #1.}%
-}
-
-\end{lstlisting}
-
-The macro |\FixTextHeight| will be useful when switching from the first page
-geometry to the regular geometry for the rest of the paper. It is based on
-code from  Hideo Umeki's \textsf{geometry} package (2002/07/08 v3.2).
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand{\FixTextHeight}{%
-  \setlength\@tempdima{\textheight}%
-  \addtolength\@tempdima{-\topskip}%
-  \@tempcnta\@tempdima
-  \@tempcntb\baselineskip
-  \divide\@tempcnta\@tempcntb
-  \setlength\@tempdimb{\baselineskip}%
-  \multiply\@tempdimb\@tempcnta
-  \advance\@tempdima-\@tempdimb
-  \global\advance\footskip\@tempdima
-  \multiply\@tempdima\tw@
-  \ifdim\@tempdima>\baselineskip
-    \addtolength\@tempdimb{\baselineskip}%
-    \global\advance\footskip-\baselineskip
-  \fi
-  \addtolength\@tempdimb{\topskip}%
-  \global\textheight\@tempdimb
-}
-
-\end{lstlisting}
-
-The width of the textblock (on all pages) is 150mm, which on A4 paper implies
-margins of 30mm each. (Making both horizontal margins the same in a two-sided
-context makes the paper more pleasant to read on screen).
-
-\begin{lstlisting}[firstnumber=last]
-\setlength{\textwidth}{150mm}
-\setlength{\oddsidemargin}{30mm - \hoffset - 1in}
-\setlength{\evensidemargin}{30mm - \hoffset - 1in}
-\end{lstlisting}
-
-It is rare to have marginal notes, but in case we ever do, we centre them in
-the margin.
-
-\begin{lstlisting}[firstnumber=last]
-\setlength{\marginparwidth}{30mm - 2\marginparsep}
-\end{lstlisting}
-
-We also want a distance of 15mm from the top of the page to the top of the
-header, and two blank lines between the bottom of the header and the top of
-the textblock.
-
-\begin{lstlisting}[firstnumber=last]
-\setlength{\topmargin}{15mm - \voffset - 1in}
-\setlength{\headsep}{2\baselineskip}
-
-\end{lstlisting}
-
-IJDC editorials have slightly different headers and footers. This requires
-testing for |\dccp at editorial| if it exists. In case it doesn't, we provide it.
-
-\begin{lstlisting}[firstnumber=last]
-\providecommand{\dccp at editorial}{Editorial}
-\end{lstlisting}
-
-The height of the footer can vary a lot. To keep it a fixed distance from the
-bottom of the page rather than the top, we need to vary the |\textheight|
-accordingly. This means we need to measure the height of the footer. (The
-header is more predictable but we may as well measure it while we are at it).
-
-Here we define the header and footer of the title page (i.e.\ the
-\textsf{title} page style), making sure we save them to auxiliary macros
-|\TitleHead| and |\TitleFoot| so we can measure them.
-
-\begin{lstlisting}[firstnumber=last]
-\def\ps at title{%
-  \def\@oddhead{%
-    \begin{minipage}{\textwidth}%
-      \centering
-      \LARGE\bfseries\color{struct}%
-      \ifx\dccp at type\dccp at editorial
-        \dccp at publ@long
-      \else
-        \dccp at publ@short\space\space\textbar\space\space\emph{\dccp at type}%
-      \fi
-      \par
-    \end{minipage}%
-  }%
-  \let\@evenhead=\@oddhead
-  \let\TitleHead=\@oddhead
-  \def\@oddfoot{%
-    \begin{minipage}[b]{\textwidth}%
-      \fontsize{9pt}{11pt}\selectfont
-      \ifx\dccp at type\dccp at editorial
-      \else
-        {\centering\dccp at dates\par}
-        \bigskip
-        Correspondence should be addressed to \thecorrespondence\par
-        \bigskip
-      \fi
-      \ifx\empty\dccp at conf
-      \else
-        \dccp at conf\par
-        \bigskip
-      \fi
-      \dccp at publ@msg\par
-      \bigskip
-      \begin{minipage}[b]{\linewidth - 25mm}
-      Copyright rests with the authors. This work is released under a Creative
-      Commons Attribution 4.0 International Licence. For details please see
-      \url{http://creativecommons.org/licenses/by/4.0/}%
-      \end{minipage}\hfill
-      \begin{minipage}[b]{19mm}
-        \href{http://creativecommons.org/licenses/by/4.0/}%
-          {\includegraphics[width=\hsize]{dccpaper-by}}%
-      \end{minipage}
-      \par
-      \bigskip
-      \makebox[0pt][l]{\parbox{0.4\hsize}{%
-        \ifx\undefined\dccp at titlefoot@bib\else\dccp at titlefoot@bib\fi
-      }}\hfill
-      \makebox[0pt][c]{\normalsize\thepage}\hfill
-      \makebox[0pt][r]{\parbox{0.4\hsize}{%
-        \raggedleft\ifx\undefined\dccp at titlefoot@doi\else\dccp at titlefoot@doi\fi
-      }}%
-    \end{minipage}%
-  }%
-  \let\@evenfoot=\@oddfoot
-  \let\TitleFoot=\@oddfoot
-}
-\end{lstlisting}
-
-We set the normal page style to \textsf{title} here so that |\TitleHead| and
-|\TitleFoot| are defined, but we will override it with the \textsf{dccpaper}
-page style later.
-
-\begin{lstlisting}[firstnumber=last]
-\pagestyle{title}
-\end{lstlisting}
-
-The first page should use the \textsf{title} page style, however.
-
-\begin{lstlisting}[firstnumber=last]
-\AtBeginDocument{\thispagestyle{title}}
-
-\end{lstlisting}
-
-Here are the normal headers and footers (i.e.\ the \textsf{dccpaper} page
-style). We save them to |\NormalHead| and |\NormalFoot|, again so we can
-measure them.
-
-\begin{lstlisting}[firstnumber=last]
-\def\ps at dccpaper{%
-  \def\@oddhead{%
-    \begin{minipage}{\textwidth}\frenchspacing
-      {%
-        \fontsize{9pt}{11pt}\selectfont
-        \ifx\undefined\dccp at normhead@doi\else\dccp at normhead@doi\fi
-      }\hfill
-      {\MainAuthor}\space\space\space
-      \textcolor{struct}{\textbar}\space\space\space
-      \thepage\par
-      \vskip6pt\color{struct}{\hrule height 1bp}\par
-    \end{minipage}
-  }%
-  \def\@evenhead{%
-    \begin{minipage}{\textwidth}
-      \thepage\space\space\space
-      \textcolor{struct}{\textbar}\space\space\space
-      {\HeadTitle}\hfill
-      {%
-        \fontsize{9pt}{11pt}\selectfont
-        \ifx\undefined\dccp at normhead@doi\else\dccp at normhead@doi\fi
-      }\par
-      \vskip6pt\color{struct}{\hrule height 1bp}\par
-    \end{minipage}
-  }%
-  \let\NormalHead=\@oddhead
-  \def\@oddfoot{\begin{minipage}[b]{\textwidth}
-    \centering\bfseries\normalsize\color{struct}
-    \ifx\dccp at type\dccp at editorial
-      \dccp at publ@long
-    \else
-      \dccp at publ@short\space\space\textbar\space\space\emph{\dccp at type}%
-    \fi
-    \par
-  \end{minipage}}%
-  \let\@evenfoot=\@oddfoot
-  \let\NormalFoot=\@oddfoot
-}
-\pagestyle{dccpaper}
-
-\end{lstlisting}
-
-We need to wait until the author has supplied the necessary information before
-we can do our measuring and set the remainder of the geometry, so we do it at
-the end of the preamble. First we put our saved macros into boxes we can
-measure (i.e.\ |\dccp at firstpagehead|, |\dccp at firstpagefoot|,
-|\dccp at restpagehead|, |\dccp at restpagefoot|).
-
-\begin{lstlisting}[firstnumber=last]
-\AtEndPreamble{
-  \newsavebox{\dccp at firstpagehead}
-  \sbox\dccp at firstpagehead{\normalfont\TitleHead}
-  \newsavebox{\dccp at firstpagefoot}
-  \sbox\dccp at firstpagefoot{\normalfont
-    \def\email#1{#1}\def\url#1{#1}\def\href#1#2{#2}\TitleFoot}
-  \newsavebox{\dccp at restpagehead}
-  \sbox\dccp at restpagehead{\normalfont\NormalHead}
-  \newsavebox{\dccp at restpagefoot}
-  \sbox\dccp at restpagefoot{\normalfont\NormalFoot}
-\end{lstlisting}
-
-We can now set the geometry of the title page\dots
-
-\begin{lstlisting}[firstnumber=last]
-  \setlength{\headheight}{\ht\dccp at firstpagehead + \dp\dccp at firstpagehead}
-  \setlength{\footskip}{%
-    2\baselineskip + \ht\dccp at firstpagefoot + \dp\dccp at firstpagefoot
-  }
-  \setlength{\textheight}{%
-    \paperheight
-    - 30mm % 15mm top and bottom
-    - \headheight
-    - \headsep
-    - \footskip
-  }
-\end{lstlisting}
-
-{\dots}and provide a macro that will reset the geometry for the remaining
-pages.
-
-\begin{lstlisting}[firstnumber=last]
-  \def\dccp at resetgeometry{%
-    \setlength{\headheight}{\ht\dccp at restpagehead + \dp\dccp at restpagehead}
-    \global\headheight=\headheight
-    \setlength{\footskip}{%
-      2\baselineskip + \ht\dccp at restpagefoot
-    }
-    \global\footskip=\footskip
-    \setlength{\textheight}{%
-      \paperheight
-      - 30mm % 15mm top and bottom
-      - \headheight
-      - \headsep
-      - \footskip
-    }
-    \FixTextHeight
-    \global\textheight=\textheight
-  }
-}
-
-\end{lstlisting}
-
-The |\maketitle| command is redefined to the correct formatting. At the end it
-sets a hook that will reset the geometry when the first page is shipped out,
-i.e.\ with effect from the second page. It is here rather than at the end of
-the abstract in case the abstract itself spills over to the second page.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage{atbegshi}
-\renewcommand{\maketitle}{%
-  \null\nobreak\vspace*{-0.528\baselineskip}%
-  \begingroup
-    \centering
-    {\Large\thetitle\par}
-    \vspace{0.7\baselineskip}
-    \AuthorBlock\par
-    \vspace{1.7\baselineskip}
-  \endgroup
-  \AtBeginShipoutNext{\dccp at resetgeometry}%
-}
-
-\end{lstlisting}
-
-The \textsf{abstract} environment is redefined in terms of an environment
-\textsf{widequote}, which mimics the \textsf{quote} environment, but is a bit
-wider. We also provide a hook, |\afterabstract|, so that if some annotation
-needs to be appended to the title page after the abstract, we can do that.
-
-\begin{lstlisting}[firstnumber=last]
-\newenvironment{widequote}{%
-  \list{}{%
-    \setlength{\rightmargin}{2\parindent}%
-    \setlength{\leftmargin}{2\parindent}%
-  }%
-  \flushleftright\item[]%
-}{%
-    \endlist
-}
-\def\afterabstract{}
-\renewenvironment{abstract}{%
-  \vskip1em%
-  \begin{center}%
-    {\bfseries\abstractname\vspace{-.5em}\vspace{\z@}}%
-  \end{center}%
-  \widequote\footnotesize
-}{%
-  \endwidequote\afterabstract\newpage
-}
-
-\end{lstlisting}
-
-We use the \textsf{titlesec} package to give headings the correct formatting.
-The settings below try to space out headings so they occupy an integer number
-of normal lines (an attempt at grid typesetting). They are a little
-complicated because we want it to work even if the heading appears at the top
-of the page.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage{titlesec}
-\titlespacing*{\section}{0pt}{0pt}{\baselineskip}
-\titlespacing*{\subsection}{0pt}{0pt}{0.6\baselineskip}
-\titlespacing{\subsubsection}{\parindent}{\baselineskip}{0pt}
-\titlespacing{\paragraph}{\parindent}{\baselineskip}{0pt}
-\titlespacing{\subparagraph}{\parindent}{\baselineskip}{0pt}
-\end{lstlisting}
-
-An unfortunate side effect of spacing headings like this is that if a
-|\subsection| immediately follows a |\section| it forms an unsightly gap. To
-remedy this, we count how many paragraphs there have been since the last
-|\section|. Note that as we do not normally number the sections, an automatic
-reset of the |sectionpars| counter within the |section| counter won't work.
-
-\begin{lstlisting}[firstnumber=last]
-\newcounter{sectionpars}
-\let\dccp at old@ep\everypar
-\newtoks\everypar
-\dccp at old@ep{\the\everypar\stepcounter{sectionpars}}
-\end{lstlisting}
-
-We need to manually reset |sectionpars| when |\section| is called. Also,
-the normal font size is 12pt/14.5pt, while |\Large| is 17pt/22pt;
-so the |\Large| line height = 1.5172 $\times$ normal line height. Nevertheless
-it seems to work better if we let the heading eat 0.528|\baselineskip| into
-the 2|\baselineskip| of padding above it.
-
-\begin{lstlisting}[firstnumber=last]
-\titleformat{\section}
-  [block]
-  {%
-    \vspace{2\baselineskip}%
-    \nobreak
-    \vspace*{-0.528\baselineskip}%
-    \setcounter{sectionpars}{0}%
-    \filcenter\normalfont\Large\bfseries
-  }
-  {\thesection}
-  {1em}
-  {}
-\end{lstlisting}
-
-The others use a |\normalsize| font so that makes life easier. The format
-for |\subsection| command includes conditional spacing: if the |sectionpars|
-counter equals 2, this means the heading immediately follows a |\section|, so
-less white space is needed.
-
-\begin{lstlisting}[firstnumber=last]
-\titleformat{\subsection}
-  {%
-    \ifnum\thesectionpars>2%
-      \vspace{2\baselineskip}%
-    \else
-      \vspace{\baselineskip}%
-    \fi\nobreak
-    \vspace*{-0.6\baselineskip}%
-    \normalfont\normalsize\bfseries
-  }
-  {\thesubsection}
-  {1em}
-  {}
-\titleformat{\subsubsection}
-  [block]
-  {\normalfont\normalsize\bfseries}
-  {\thesubsubsection}
-  {1em}
-  {}
-\titleformat{\paragraph}
-  [block]
-  {\normalfont\normalsize\bfseries\itshape}
-  {\thesubsubsection}
-  {1em}
-  {}
-\titleformat{\subparagraph}
-  [block]
-  {\normalfont\normalsize\itshape}
-  {\thesubsubsection}
-  {1em}
-  {}
-\end{lstlisting}
-
-DCC papers do not typically number their sections.
-
-\begin{lstlisting}[firstnumber=last]
-\setcounter{secnumdepth}{0}
-
-\end{lstlisting}
-
-To help with the display of tables we load the \textsf{array} and
-\textsf{booktabs} packages. As we don't like lines between rows in the table
-body, we stretch them out a bit so that white space does the job instead.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage{array,booktabs}
-\renewcommand{\arraystretch}{1.25}
-
-\end{lstlisting}
-
-We use the \textsf{caption} package to give captions the right format.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage
-  [ format=hang
-  , labelsep=period
-  , font=small
-  , labelfont=bf
-  , figureposition=bottom
-  , tableposition=top
-  ]{caption}
-
-\end{lstlisting}
-
-Footnotes should be set right up against the left margin. They should be
-set hung and in the same half-ragged style as the main text. They should also,
-for neatness, be at the bottom of the page regardless of how short it is. The
-\textsf{footmisc} package helps here.
-
-\begin{lstlisting}[firstnumber=last]
-\RequirePackage[hang,bottom]{footmisc}
-\settowidth{\footnotemargin}{\footnotesize\textsuperscript{99}\space}
-\renewcommand{\footnotelayout}{\raggedyright}
-\end{lstlisting}
-
-Also, if multiple footnotes are set at once, the markers should be separated
-with superscript commas. The \textsf{footmisc} package should help here but
-its solution is clobbered by \textsf{hyperref}. So after a footnote is set,
-we check to see if the next token is also a footnote, and if so, slip a comma
-in before it.\footnote{This solution was provided at
-\url{http://tex.stackexchange.com/q/40072}} This tweak needs to be done late,
-|\AtBeginDocument|. Note that the \textsf{newtx} superior figures are a bit
-lower than normal superscript text.
-
-\begin{lstlisting}[firstnumber=last]
-\AtBeginDocument{
-  \let\dccp at footnote\footnote
-  \def\dccp at next@token{\relax}%
-  \def\dccp at supercomma{\textsuperscript{,}}%
-  \IfFileExists{newtxtext.sty}%
-    {\def\dccp at supercomma{\raisebox{-0.2ex}{\textsuperscript{,}}}}%
-    {}
-
-  \newcommand\dccp at check@for at footnote{%
-    \ifx\footnote\dccp at next@token
-      \dccp at supercomma
-    \fi
-  }
-
-  \renewcommand\footnote[1]{%
-    \dccp at footnote{#1}%
-    \futurelet\dccp at next@token\dccp at check@for at footnote
-  }
-}
-
-\end{lstlisting}
-
-By default lists are quite loose. These settings help to tighten them.
-
-\begin{lstlisting}[firstnumber=last]
-\topsep = \z@
-\partopsep = \z@
-\appto{\enumerate}{\itemsep = 0.5ex plus 0.25ex minus 0.25ex}
-\appto{\itemize}{\itemsep = 0.5ex plus 0.25ex minus 0.25ex}
-
-\end{lstlisting}
-
-A DCC paper should either be using \textsf{biblatex} or \textsf{apacite} for
-references.
-
-If \textsf{biblatex} is used, we need to ensure that the reference list
-heading is a normal section rather than a starred one so it appears in the
-PDF bookmarks.
-
-\begin{lstlisting}[firstnumber=last]
-\AtBeginDocument{
-  \@ifpackageloaded{biblatex}{%
-    \defbibheading{bibliography}[\refname]{\section{#1}}%
-\end{lstlisting}
-
-We also move the ‘doi:’ portion of a DOI inside the hyperlink.
-
-\begin{lstlisting}[firstnumber=last]
-    \DeclareFieldFormat{doi}{%
-      \ifhyperref{%
-        \href{http://dx.doi.org/#1}{\nolinkurl{doi:#1}}%
-      }{%
-        \nolinkurl{doi:#1}%
-      }%
-    }
-  }{%
-\end{lstlisting}
-
-If \textsf{apacite} is used, there are a few other adaptations we need to
-make.
-
-\begin{lstlisting}[firstnumber=last]
-    \@ifpackageloaded{apacite}{%
-\end{lstlisting}
-
-With \textsf{hyperref} loaded, \textsf{apacite} makes the whole of a citation
-a link to the reference list item. We patch |\@ifauthorsunequalc at de| so only
-the year portion gets linked.
-
-\begin{lstlisting}[firstnumber=last]
-      \def\@ifauthorsunequalc at de#1{%
-        \if at F@cite
-          \@F at citefalse
-        \else
-          \if at Y@cite
-              {\@BAY}%
-          \fi
-          {\@BBC}%
-        \fi
-        \edef\@cite at undefined{?}%
-        \def\BBA{\@BBA}%
-        \if at A@cite
-          %%\hyper at natlinkstart{#1}% We remove this line...
-          {\csname b@\@citeb\APAC at extra@b at citeb\endcsname}%
-          %%\hyper at natlinkend% ...and this one.
-          \if at Y@cite
-              {\@BBAY}%
-          \fi
-        \fi
-        \if at Y@cite
-          \hyper at natlinkstart{#1}%
-          {\csname Y@\@citeb\APAC at extra@b at citeb\endcsname}%
-          \hyper at natlinkend
-        \fi
-        \let\BBA\relax
-      }
-\end{lstlisting}
-
-The Spanish language support file defines a different version of
-|\@ifauthorsunequalc at de|, which might override the patch we have just
-introduced. So we employ the same test that \textsf{apacite} uses when
-deciding whether to load that file; if successful, we patch the Spanish
-version. Note that as \textsf{apacite} loads language support files
-|\AtBeginDocument|, we have to do our thing after that, |\AfterEndPreamble|.
-
-(Note that as we set the language to British English earlier, this should
-never be needed, but we try to be resilient to tinkering!)
-
-\begin{lstlisting}[firstnumber=last]
-      \AfterEndPreamble{%
-        \@ifundefined{iflanguage}{%
-          \relax
-        }{%
-          \edef\APAC at tmp{nohyphenation}%
-          \ifx\languagename\APAC at tmp
-          \else
-            \edef\APAC at tmp{spanish}%
-            \ifx\languagename\APAC at tmp
-              \def\@ifauthorsunequalc at de#1{%
-                \if at F@cite
-                  \@F at citefalse
-                \else
-                  \if at Y@cite
-                      {\@BAY}%
-                  \fi
-                  {\@BBC}%
-                \fi
-                \edef\@cite at undefined{?}%
-                \def\BBA{\@BBA}%
-                \@ifundefined{spanishe@\@citeb\APAC at extra@b at citeb}%
-                  {}% skip
-                  {{% Use `e' instead of `y' in Spanish
-                  \global\let\oldBBA\BBA
-                  \global\def\BBA{e\global\let\BBA\oldBBA}%
-                  }}%
-                \if at A@cite
-                  %%\hyper at natlinkstart{#1}% We remove this line...
-                  {\csname b@\@citeb\APAC at extra@b at citeb\endcsname}%
-                  %%\hyper at natlinkend% ...and this one.
-                  \if at Y@cite
-                      {\@BBAY}%
-                  \fi
-                \fi
-                \if at Y@cite
-                  \hyper at natlinkstart{#1}%
-                  {\csname Y@\@citeb\APAC at extra@b at citeb\endcsname}%
-                  \hyper at natlinkend
-                \fi
-                \let\BBA\relax
-              }%
-            \fi
-          \fi
-        }%
-\end{lstlisting}
-
-Another thing \textsf{apacite} does |\AtBeginDocument| is set the URL style
-to monospaced. So we reset it back to normal roman type |\AfterEndPreamble|.
-
-\begin{lstlisting}[firstnumber=last]
-        \urlstyle{APACrm}
-       }%
-\end{lstlisting}
-
-We pre-empt \textsf{apacite}'s |\providecommand| of |\doi| with our own
-definition that includes the `doi' URI scheme label in the link, remembering
-to remove the one inserted by |\doiprefix|.
-
-\begin{lstlisting}[firstnumber=last]
-      \newcommand{\doi}[1]{\href{http://dx.doi.org/#1}{\nolinkurl{doi:#1}}}%
-      \renewcommand{\doiprefix}{\unskip}%
-    }{}%
-  }%
-\end{lstlisting}
-
-Both \textsf{biblatex} and \textsf{apacite} use |\bibitemsep| for the space
-between bibliography items. Just in case they haven't been loaded, though, we
-protect our setting of that length with an |\ifx| test.
-
-\begin{lstlisting}[firstnumber=last]
-  \ifx\undefined\bibitemsep
-  \else
-    \setlength{\bibitemsep}{1em plus 1ex minus 1ex}%
-  \fi
-}
-\end{lstlisting}
-
-As mentioned above, if \textsf{apacite} is used, we can use a package option
-to ensure that the reference list heading appears in the PDF bookmarks.
-
-\begin{lstlisting}[firstnumber=last]
-\PassOptionsToPackage{numberedbib}{apacite}
-
-\end{lstlisting}
-
-We, of course, use \textsf{hyperref} for enhancing the PDF with working links,
-bookmarks, metadata, etc.
-
-\begin{lstlisting}[firstnumber=last]
-\usepackage
-  [ colorlinks=true
-  , linkcolor=black
-  , anchorcolor=black
-  , citecolor=links
-  , filecolor=black
-  , menucolor=black
-  , runcolor=black
-  , urlcolor=links
-  ]{hyperref}
-\end{lstlisting}
-
-Links should be in roman type, not monospaced.
-
-\begin{lstlisting}[firstnumber=last]
-\urlstyle{rm}
-\end{lstlisting}
-
-We provide an |\email| command for displaying the email address of the
-corresponding author.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\email}[1]{\href{mailto:#1}{#1}}
-\end{lstlisting}
-
-Once the user has had a chance to provide the metadata, we can add it to the
-PDF metadata.
-
-\begin{lstlisting}[firstnumber=last]
-\AtBeginDocument{%
-  \hypersetup
-    { pdftitle={\thetitle}
-    , pdfauthor={\dccp at author}
-    , pdfsubject={\dccp at subject}
-    }
-\end{lstlisting}
-
-The APA has its own style for line breaks in URLs. The \textsf{apacite}
-package provides the code for this, but in case \textsf{biblatex} is used
-instead, we repeat the settings (from 2013/07/21 v6.03) here.
-
-\begin{lstlisting}[firstnumber=last]
-  \@ifundefined{Url at force@Tilde}{\def\Url at force@Tilde{\relax}}{}%
-  \def\url at apa@dot{\mathchar"2E }%
-  \def\url at apa@comma{\mathchar"2C }%
-  \def\url at apa@questionmark{\mathchar"3F }%
-  \def\url at apa@exclamation{\mathchar"21 }%
-  \def\url at apa@hyphen{\mathchar"2D }%
-  \def\url at apa@underscore{\_}%
-  \def\UrlBreaks{\do\@\do\\\do\|\do\;\do\>\do\]\do\)\do\'\do+\do\=\do\#}%
-  \def\UrlBigBreaks{\do\/\do\:\do at url@hyp}%
-  \def\UrlNoBreaks{\do\(\do\[\do\{\do\<}% \)}
-  \def\UrlOrds{\do\*\do\~\do\'\do\"}%
-  \def\UrlSpecials{%
-    \do\.{\mathbin{}\url at apa@dot }%
-    \do\,{\mathbin{}\url at apa@comma }%
-    \do\-{\mathbin{}\url at apa@hyphen }%
-    \do\?{\mathbin{}\url at apa@questionmark }%
-    \do\!{\mathbin{}\url at apa@exclamation }%
-    \do\_{\mathbin{}\url at apa@underscore }%
-    \do\ {\Url at space}\do\%{\Url at percent}\do\^^M{\Url at space}%
-    \Url at force@Tilde}%
-  \def\Url at OTnonTT{\do\<{\langle}\do\>{\mathbin{\rangle}}\do
-    \_{\mathbin{}\_}\do\|{\mid}\do\{{\lbrace}\do\}{\mathbin{\rbrace}}\do
-    \\{\mathbin{\backslash}}\UrlTildeSpecial}
-}
-
-\end{lstlisting}
-
-We now embed the Creative Commons licence information in the PDF using an XMP
-packet. To do this, we employ the same technique as Scott Pakin's
-\textsf{hyperxmp} (2014/01/02 v2.4). In order to avoid avoid a bug whereby
-Adobe Acrobat confuses the XMP author information and the regular author
-information, though, we \emph{only} embed the licence information.
-
-We need to make sure that any characters to appear verbatim in the XMP packet
-are treated as ordinary characters and not active ones. The likely active
-characters are symbols and punctuation, so should be treated as `other'
-(category 12).
-
-\begin{lstlisting}[firstnumber=last]
-\begingroup
-\catcode`\"=12
-\catcode`\&=12
-\catcode`\#=12
-\catcode`\<=12
-\catcode`\>=12
-\catcode`\_=12
-\end{lstlisting}
-
-We construct the XMP packet as the document begins.
-
-\begin{lstlisting}[firstnumber=last]
-\AtBeginDocument{%
-\end{lstlisting}
-
-For convenience we define |\sp| to be a level of indent, translating to three
-spaces.
-
-\begin{lstlisting}[firstnumber=last]
-  \def\sp{\space\space\space}
-\end{lstlisting}
-
-The text of the XMP packet is recorded in |\cc at xmp@packet|. We use |^^J| to
-break lines.
-
-\begin{lstlisting}[firstnumber=last]
-  \long\gdef\cc at xmp@packet{%
-<?xpacket begin='' id=''?>^^J%
-<x:xmpmeta xmlns:x='adobe:ns:meta/'>^^J%
-<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'>^^J%
-\sp<rdf:Description rdf:about=''^^J%
-\sp\sp xmlns:xapRights='http://ns.adobe.com/xap/1.0/rights/'>^^J%
-\sp\sp<xapRights:Marked>True</xapRights:Marked>^^J%
-\sp</rdf:Description>^^J%
-\sp<rdf:Description rdf:about=''^^J%
-\sp\sp xmlns:dc='http://purl.org/dc/elements/1.1/'>^^J%
-\sp\sp<dc:rights>^^J%
-\sp\sp\sp<rdf:Alt>^^J%
-\sp\sp\sp\sp<rdf:li xml:lang='x-default'>This work is licensed under a Creative Commons Attribution 4.0 International Licence.</rdf:li>^^J%
-\sp\sp\sp</rdf:Alt>^^J%
-\sp\sp</dc:rights>^^J%
-\sp</rdf:Description>^^J%
-\sp<rdf:Description rdf:about=''^^J%
-\sp\sp xmlns:cc='http://creativecommons.org/ns#'>^^J%
-\sp\sp<cc:license rdf:resource='http://creativecommons.org/licenses/by/4.0/'/>^^J%
-\sp</rdf:Description>^^J%
-</rdf:RDF>^^J%
-</x:xmpmeta>^^J%
-<?xpacket end='r'?>^^J%
-  }%
-}
-\endgroup
-\end{lstlisting}
-
-Different workflows require the XMP packet to be embedded in different ways.
-
-Pdf\TeX\ can inject objects into PDFs natively.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\ccxmp at embed@packet at pdftex}{%
-  \bgroup
-    \pdfcompresslevel=0
-    \immediate\pdfobj stream attr {%
-      /Type /Metadata
-      /Subtype /XML
-    }{\cc at xmp@packet}%
-    \pdfcatalog {/Metadata \the\pdflastobj\space 0 R}%
-  \egroup
-}
-\end{lstlisting}
-
-The |\pdfmark| command defined by \textsf{hyperref} is respected by tools such
-as Dvipdf, Dvips, Dvipsone, etc.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\ccxmp at embed@packet at pdfmark}{%
-  \pdfmark{%
-    pdfmark=/NamespacePush
-  }%
-  \pdfmark{%
-    pdfmark=/OBJ,
-    Raw={/_objdef \string{ccxmp at packet\string} /type /stream}%
-  }%
-  \pdfmark{%
-    pdfmark=/PUT,
-    Raw={\string{ccxmp at packet\string}
-      2 dict begin
-        /Type /Metadata def
-        /Subtype /XML def
-        currentdict
-      end
-    }%
-  }%
-  \pdfmark{%
-    pdfmark=/PUT,
-    Raw={\string{ccxmp at packet\string} (\cc at xmp@packet)}%
-  }%
-  \pdfmark{%
-    pdfmark=/Metadata,
-    Raw={\string{Catalog\string} \string{ccxmp at packet\string}}%
-  }%
-  \pdfmark{%
-    pdfmark=/NamespacePop
-  }%
-}
-\end{lstlisting}
-
-Dvipdfm has its own |\special| command for inserting PDF objects, but
-it is a bit basic and requires advance knowledge of how long (in characters)
-the object is.
-
-The |\ccxmp at count@spaces| macro counts the number of spaces in its parameter
-through a process of iteration, adding this figure to |\@tempcnta|.
-
-\begin{lstlisting}[firstnumber=last]
-\def\ccxmp at count@spaces#1 {%
-  \def\ccxmp at one@token{#1}%
-  \ifx\ccxmp at one@token\@empty
-    \advance\@tempcnta by -1
-  \else
-    \advance\@tempcnta by 1
-    \expandafter\ccxmp at count@spaces
-  \fi
-}
-\end{lstlisting}
-
-The |\ccxmp at count@non at spaces| command counts the number of non-spaces in its
-argument through a process of iteration, adding this figure to |\@tempcnta|.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\ccxmp at count@non at spaces}[1]{%
-  \def\ccxmp at one@token{#1}%
-  \ifx\ccxmp at one@token\@empty
-  \else
-    \advance\@tempcnta by 1
-    \expandafter\ccxmp at count@non at spaces
-  \fi
-}
-\end{lstlisting}
-
-The |\ccxmp at string@len| command sets |\@tempcnta| to the number of characters
-(spaces + non-spaces) in its argument.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\ccxmp at string@len}[1]{%
-  \@tempcnta=0
-  \expandafter\ccxmp at count@spaces#1 {} %
-  \expandafter\ccxmp at count@non at spaces#1{}%
-}
-\end{lstlisting}
-
-So now, finally, is the command for embedding the packet using Dvipdfm.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\ccxmp at embed@packet at dvipdfm}{%
-  \ccxmp at string@len{\cc at xmp@packet}%
-  \special{pdf: object @ccxmp at packet
-    <<
-      /Type /Metadata
-      /Subtype /XML
-      /Length \the\@tempcnta
-    >>
-    stream^^J\cc at xmp@packet endstream%
-  }%
-  \special{pdf: docview
-    <<
-      /Metadata @ccxmp at packet
-    >>
-  }%
-}
-\end{lstlisting}
-
-\XeTeX\ creates PDFs with Xdvipdfmx, which supports a simpler |\special| for
-inserting objects that does not require us to count characters.
-
-\begin{lstlisting}[firstnumber=last]
-\newcommand*{\ccxmp at embed@packet at xetex}{%
-  \special{pdf:stream @ccxmp at packet (\cc at xmp@packet)
-    <<
-      /Type /Metadata
-      /Subtype /XML
-    >>
-  }%
-  \special{pdf:put @catalog
-    <<
-      /Metadata @ccxmp at packet
-    >>
-  }%
-}
-\end{lstlisting}
-
-We rely on \textsf{hyperref} to tell us how the PDF will be generated (after
-all, it may not be done in the current pass) and use the respective technique
-to embed the XMP packet.
-
-\begin{lstlisting}[firstnumber=last]
-\AtBeginDocument{%
-  \begingroup
-  \def\ccxmp at driver{hpdftex}%
-  \ifx\ccxmp at driver\Hy at driver
-    \ccxmp at embed@packet at pdftex
-  \else
-    \def\ccxmp at driver{hdvipdfm}%
-    \ifx\ccxmp at driver\Hy at driver
-      \ccxmp at embed@packet at dvipdfm
-    \else
-      \def\ccxmp at driver{hxetex}%
-      \ifx\ccxmp at driver\Hy at driver
-        \ccxmp at embed@packet at xetex
-      \else
-        \@ifundefined{pdfmark}{}{%
-          \ccxmp at embed@packet at pdfmark
-        }%
-      \fi
-    \fi
-  \fi
-  \endgroup
-}
-%%
-%% Copyright (C) 2015 Digital Curation Centre, University of Edinburgh
-%% <info at dcc.ac.uk>
-%%
-%% End of file `dccpaper-base.sty'.
-
-\end{lstlisting}

Modified: trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-biblatex.bib
===================================================================
--- trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-biblatex.bib	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper-biblatex.bib	2017-10-20 20:03:58 UTC (rev 45563)
@@ -44,7 +44,7 @@
   date = {2005},
   title = {Digital curation and preservation},
   subtitle = {Defining the research agenda for the next decade},
-  note = {Report of the Warwick Workshop, November 7–8, 2005},
+  note = {Report of the Warwick Workshop, November 7^^e2^^80^^938, 2005},
   url = {http://www.dcc.ac.uk/webfm_send/346}
 }
 
@@ -115,7 +115,7 @@
 
 @data{waterton.etal2013ual,
   author = {Waterton, C. and Watson, N. and Norton, L.},
-  title = {Understanding and Acting in {Loweswater}, 2007–2010},
+  title = {Understanding and Acting in {Loweswater}, 2007^^e2^^80^^932010},
   entrysubtype = {Data set},
   date = {2013},
   publisher = {UK Data Archive},

Modified: trunk/Master/texmf-dist/doc/latex/dccpaper/dccpaper.pdf
===================================================================
(Binary files differ)

Deleted: trunk/Master/texmf-dist/doc/latex/dccpaper/idcc.doc
===================================================================
--- trunk/Master/texmf-dist/doc/latex/dccpaper/idcc.doc	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/doc/latex/dccpaper/idcc.doc	2017-10-20 20:03:58 UTC (rev 45563)
@@ -1,133 +0,0 @@
-\ProvidesFile{idcc.doc}[2016/08/06 automatically generated with makedoc.sty]
-\begin{lstlisting}[firstnumber=1]
-%%
-%% This is file `idcc.cls',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% dccpaper.dtx  (with options: `idcc')
-%%
-%% ----------------------------------------------------------------
-%% The dccpaper bundle: Classes for submissions to IJDC and IDCC
-%% Author:  Alex Ball
-%% E-mail:  a.ball at ukoln.ac.uk
-%% License: Released under the LaTeX Project Public License v1.3c or later
-%% See:     http://www.latex-project.org/lppl.txt
-%% ----------------------------------------------------------------
-%%
-\def\Version{2016/08/05 v1.5}
-\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\ProvidesClass{idcc}
-    [\Version\space Class for submissions to the International Digital Curation Conference.]
-\end{lstlisting}
-
-These definitions are used to fill out the headers and footers.
-The ones for |\dccp at publ@short| and |\dccp at publ@msg| are a fallback,
-defined here but ordinarily overridden using a package option.
-
-\begin{lstlisting}[firstnumber=last]
-\def\dccp at publ@long{International Digital Curation Conference}
-\def\dccp at publ@short{IDCC}
-\def\dccp at publ@msg{The \dccp at publ@long\ takes place on [TBC] in [TBC]. URL:
-\url{http://www.dcc.ac.uk/events/international-digital-curation-conference-idcc}}
-\end{lstlisting}
-
-|\dccp at subject| will be used for the PDF subject. The value here is again a
-fallback, ordinarily overridden using a package option.
-
-\begin{lstlisting}[firstnumber=last]
-\def\dccp at subject{\dccp at publ@long}
-
-\end{lstlisting}
-
-Paper type is recorded in |\def\dccp at type|. The values can be
-`Research Paper', `Practice Paper', `Poster', `Demonstration', or `Workshop'.
-
-\begin{lstlisting}[firstnumber=last]
-\def\dccp at type{Practice Paper}
-\end{lstlisting}
-
-These options set the value of |\def\dccp at type| appropriately.
-The |practice| option is redundant, but included for symmetry.
-
-\begin{lstlisting}[firstnumber=last]
-\DeclareOption{research}{\def\dccp at type{Research Paper}}
-\DeclareOption{data}{\def\dccp at type{Data Paper}}
-\DeclareOption{poster}{\def\dccp at type{Poster}}
-\DeclareOption{demo}{\def\dccp at type{Demonstration}}
-\DeclareOption{bof}{\def\dccp at type{Birds of a Feather}}
-\DeclareOption{workshop}{\def\dccp at type{Workshop}}
-\DeclareOption{practice}{\def\dccp at type{Practice Paper}}
-\end{lstlisting}
-
-The details for each conference are slightly different, so they each have an
-associated option for overriding the fallback definitions for
-|\dccp at publ@short|, |\dccp at publ@msg| and |\dccp at subject|.
-
-\begin{lstlisting}[firstnumber=last]
-\DeclareOption{15}{%
-  \def\dccp at publ@short{IDCC15}
-  \def\dccp at publ@msg{The 10th \dccp at publ@long\ takes place on 9--12 February
-  2015 in London. URL: \url{http://www.dcc.ac.uk/events/idcc15/}}
-  \def\dccp at subject{10th \dccp at publ@long, 2015}
-}
-\DeclareOption{16}{%
-  \def\dccp at publ@short{IDCC16}
-  \def\dccp at publ@msg{The 11th \dccp at publ@long\ takes place on 22--25 February
-  2016 in Amsterdam. URL: \url{http://www.dcc.ac.uk/events/idcc16/}}
-  \def\dccp at subject{11th \dccp at publ@long, 2016}
-}
-\DeclareOption{17}{%
-  \def\dccp at publ@short{IDCC17}
-  \def\dccp at publ@msg{The 12th \dccp at publ@long\ takes place on 20--23 February
-  2017 in Edinburgh. URL: \url{http://www.dcc.ac.uk/events/idcc17/}}
-  \def\dccp at subject{12th \dccp at publ@long, 2017}
-}
-\ProcessOptions\relax
-
-\end{lstlisting}
-
-The |demo| option, if passed, would be passed on to the \textsf{graphics}
-package wreaking havoc with each and every included image. To avoid this,
-we clear it from the list of class options using
-\href{http://tex.stackexchange.com/q/33245}{code from Enrico Gregorio}.
-
-\begin{lstlisting}[firstnumber=last]
-\def\@clearglobaloption#1{%
-  \def\@tempa{#1}%
-  \def\@tempb{\@gobble}%
-  \@for\next:=\@classoptionslist\do{%
-    \ifx\next\@tempa
-      \message{Option \next\space has been hidden from subsequent packages}%
-    \else
-      \edef\@tempb{\@tempb,\next}%
-    \fi
-  }%
-  \let\@classoptionslist\@tempb
-  \expandafter\ifx\@tempb\@gobble
-    \let\@classoptionslist\@empty
-  \fi
-}
-\@clearglobaloption{demo}
-
-\end{lstlisting}
-
-The class is based on the \textsf{article} class, and uses A4 paper.
-
-\begin{lstlisting}[firstnumber=last]
-\LoadClass[a4paper,12pt,twoside]{article}
-
-\end{lstlisting}
-
-The rest of the formatting happens in the following file.
-
-\begin{lstlisting}[firstnumber=last]
-\usepackage{dccpaper-base}
-%%
-%% Copyright (C) 2015 Digital Curation Centre, University of Edinburgh
-%% <info at dcc.ac.uk>
-%%
-%% End of file `idcc.cls'.
-
-\end{lstlisting}

Deleted: trunk/Master/texmf-dist/doc/latex/dccpaper/ijdc-v9.doc
===================================================================
--- trunk/Master/texmf-dist/doc/latex/dccpaper/ijdc-v9.doc	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/doc/latex/dccpaper/ijdc-v9.doc	2017-10-20 20:03:58 UTC (rev 45563)
@@ -1,100 +0,0 @@
-\ProvidesFile{ijdc-v9.doc}[2016/08/06 automatically generated with makedoc.sty]
-\begin{lstlisting}[firstnumber=1]
-%%
-%% This is file `ijdc-v9.cls',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% dccpaper.dtx  (with options: `ijdc9')
-%%
-%% ----------------------------------------------------------------
-%% The dccpaper bundle: Classes for submissions to IJDC and IDCC
-%% Author:  Alex Ball
-%% E-mail:  a.ball at ukoln.ac.uk
-%% License: Released under the LaTeX Project Public License v1.3c or later
-%% See:     http://www.latex-project.org/lppl.txt
-%% ----------------------------------------------------------------
-%%
-\def\Version{2016/08/05 v1.5}
-\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\ProvidesClass{ijdc-v9}
-    [\Version\space Class for submissions to the International Journal of Digital Curation, volume 9 onwards.]
-\end{lstlisting}
-
-The type of paper is recorded in |\dccp at type|. The possible values are
-`General Article', `Peer-Reviewed Paper', or `Editorial'.
-The latter is provided through the constant |\dccp at editorial| so we can
-test for it later with ease.
-
-\begin{lstlisting}[firstnumber=last]
-\def\dccp at type{General Article}
-\def\dccp at editorial{Editorial}
-\end{lstlisting}
-
-These three options set |\dccp at type| appropriately. The |editorial|
-option additionally switches page numbers to roman numerals.
-The |article| option is redundant, but included for symmetry.
-
-\begin{lstlisting}[firstnumber=last]
-\DeclareOption{editorial}{\let\dccp at type=\dccp at editorial%
-  \AtBeginDocument{% Editorials use Roman numerals for page numbers
-    \pagenumbering{roman}%
-    \renewcommand{\thelastpage}{\@roman\c at lastpage}%
-  }%
-}
-\DeclareOption{paper}{\def\dccp at type{Peer-Reviewed Paper}}
-\DeclareOption{article}{\def\dccp at type{General Article}}
-\ProcessOptions\relax
-
-\end{lstlisting}
-
-These definitions are used to fill out the headers and footers. They include
-some details that are defined in \textsf{dccpaper-base.sty} and provided by
-the user: |\thedate|, |\thevolume|, |\theissue|, |\thelastpage|, |\thedoi|.
-
-\begin{lstlisting}[firstnumber=last]
-\def\dccp at publ@long{International Journal of Digital Curation}
-\def\dccp at publ@short{IJDC}
-\def\dccp at publ@msg{The \emph{\dccp at publ@long} is an international journal
-committed to scholarly excellence and dedicated to the advancement of digital
-curation across a wide range of sectors. The \dccp at publ@short\ is published by
-the University of Edinburgh on behalf of the Digital Curation Centre. ISSN:
-1746-8256. URL: \url{http://www.ijdc.net/}}
-\def\dccp at titlefoot@bib{%
-  \dccp at publ@long\\
-  \thedate, Vol.\ \thevolume, Iss.\ \theissue, \thepage--\thelastpage.%
-}
-\def\dccp at titlefoot@doi{%
-  \url{http://dx.doi.org/\thedoi}\\
-  DOI: \thedoi
-}
-\def\dccp at normhead@doi{doi:\thedoi}
-\end{lstlisting}
-
-|\dccp at subject| will be used for the PDF subject, and will specify the journal
-and the issue.
-
-\begin{lstlisting}[firstnumber=last]
-\def\dccp at subject{\dccp at publ@long, \thedate, Vol.\ \thevolume, Iss.\ \theissue}
-
-\end{lstlisting}
-
-The class is based on the \textsf{article} class, and uses A4 paper.
-
-\begin{lstlisting}[firstnumber=last]
-\LoadClass[a4paper,12pt,twoside]{article}
-
-\end{lstlisting}
-
-The rest of the formatting happens in the following file.
-
-\begin{lstlisting}[firstnumber=last]
-\usepackage{dccpaper-base}
-%%
-%% Copyright (C) 2015 Digital Curation Centre, University of Edinburgh
-%% <info at dcc.ac.uk>
-%%
-%% End of file `ijdc-v9.cls'.
-
-\end{lstlisting}

Modified: trunk/Master/texmf-dist/source/latex/dccpaper/Makefile
===================================================================
--- trunk/Master/texmf-dist/source/latex/dccpaper/Makefile	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/source/latex/dccpaper/Makefile	2017-10-20 20:03:58 UTC (rev 45563)
@@ -7,21 +7,25 @@
 LOCAL = $(shell kpsewhich --var-value TEXMFLOCAL)
 UTREE = $(shell kpsewhich --var-value TEXMFHOME)
 
-.PHONY: clean distclean inst install uninst uninstall zip ctan
+.PHONY: source clean distclean inst install uninst uninstall zip ctan
 
 all:	$(NAME).pdf clean
 	@exit 0
 
-ijdc-v9.cls idcc.cls $(NAME)-base.sty: $(NAME).dtx
-	pdflatex -shell-escape -recorder -interaction=batchmode $(NAME).dtx >/dev/null
+source: $(NAME).dtx
+	tex -interaction=batchmode $(NAME).dtx >/dev/null
 
+ijdc-v9.cls idcc.cls $(NAME)-base.sty $(NAME)-apacite.bib $(NAME)-biblatex.bib README.md: source
+
 $(NAME).pdf: $(NAME).dtx ijdc-v9.cls $(NAME)-biblatex.bib $(NAME)-by.pdf
+	lualatex -recorder -interaction=batchmode $(NAME).dtx >/dev/null
 	biber $(NAME)
-	pdflatex --recorder --interaction=nonstopmode $(NAME).dtx > /dev/null
-	pdflatex --recorder --interaction=nonstopmode $(NAME).dtx > /dev/null
+	lualatex -recorder -interaction=batchmode $(NAME).dtx >/dev/null
+	lualatex -recorder -interaction=batchmode $(NAME).dtx >/dev/null
 
 clean:
-	rm -f $(NAME).{aux,bbl,bcf,blg,fdb_latexmk,fls,glo,gls,hd,idx,ilg,ind,ins,log,out,run.xml,synctex.gz} $(NAME)-base.doc ijdc-v9.doc idcc.doc
+	rm -f $(NAME).{aux,bbl,bcf,blg,fdb_latexmk,fls,glo,gls,hd,idx,ilg,ind,ins,lsttemp,log,markdown.in,markdown.lua,markdown.out,out,run.xml,synctex.gz} $(NAME)-base.doc ijdc-v9.doc idcc.doc
+	rm -rf _markdown_$(NAME)
 
 distclean: clean
 	rm -f $(NAME).pdf ijdc-v9.cls idcc.cls $(NAME)-base.sty $(NAME)-{biblatex,apacite}.bib

Modified: trunk/Master/texmf-dist/source/latex/dccpaper/dccpaper.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/dccpaper/dccpaper.dtx	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/source/latex/dccpaper/dccpaper.dtx	2017-10-20 20:03:58 UTC (rev 45563)
@@ -1,6 +1,6 @@
 % \iffalse meta-comment
 %<*internal|ijdc9|idcc|base>
-\def\Version{2016/08/05 v1.5}
+\def\Version{2017/10/20 v1.6}
 %</internal|ijdc9|idcc|base>
 %<*internal>
 \iffalse
@@ -10,11 +10,11 @@
 
 The dccpaper bundle consists of two very similar classes.
 
-ijdc-v9.cls corresponds to the template used by the [International
-Journal of Digital Curation], beginning with volume 9.
+ijdc-v9.cls corresponds to the template used by the
+[International Journal of Digital Curation], beginning with volume 9.
 
-idcc.cls corresponds to the template used for the [International Digital
-Curation Conference], beginning with IDCC15.
+idcc.cls corresponds to the template used for the
+[International Digital Curation Conference], beginning with IDCC15.
 
 As the classes are so similar, their common features are abstracted out
 into dccpaper-base.sty; please do not attempt to use this package
@@ -23,8 +23,835 @@
 The classes are suitable for submissions to the respective review
 boards, but can also be used to produce the final camera-ready papers.
 
-## Installation
+[International Journal of Digital Curation]: http://www.ijdc.net/index.php/ijdc
+[International Digital Curation Conference]: http://www.dcc.ac.uk/events/international-digital-curation-conference-idcc
 
+%</readme>
+%<ijdc9|idcc|base>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+%<*ijdc9>
+\ProvidesClass{ijdc-v9}
+    [\Version\space Class for submissions to the International Journal of Digital Curation, volume 9 onwards.]
+%</ijdc9>
+%<*idcc>
+\ProvidesClass{idcc}
+    [\Version\space Class for submissions to the International Digital Curation Conference.]
+%</idcc>
+%<*base>
+\ProvidesPackage{dccpaper-base}
+    [\Version\space Common class code for IJDC and IDCC papers.]
+%</base>
+%<*biblatex|apacite>
+ at book{apa6ed,
+  author = {{American Psychological Association}},
+  shortauthor = {{APA}},
+  publisher = {Author},
+%<biblatex>  date = {2010},
+%<apacite>  year = {2010},
+  title = {Publication manual of the {American} {Psychological} {Association}},
+  edition = {6},
+%<biblatex>  location = {Washington, DC}
+%<apacite>  address = {Washington, DC}
+}
+
+ at book{borgman2007sda,
+  author = {Borgman, C. L.},
+%<biblatex>  date = {2007},
+%<apacite>  year = {2007},
+%<biblatex>  title = {Scholarship in the digital age},
+%<biblatex>  subtitle = {Information, infrastructure, and the {Internet}},
+%<apacite>  title = {Scholarship in the digital age: Information, infrastructure, and the {Internet}},
+%<biblatex>  location = {Cambridge, MA},
+%<apacite>  address = {Cambridge, MA},
+  publisher = {MIT Press}
+}
+
+ at inbook{borgman.etal2006bdl,
+  author = {Borgman, C. L. and Wallis, J. C. and Enyedy, N.},
+%<biblatex>  date = {2006},
+%<apacite>  year = {2006},
+%<biblatex>  title = {Building digital libraries for scientific data},
+%<biblatex>  subtitle = {An exploratory study of data practices in habitat ecology},
+%<apacite>  title = {Building digital libraries for scientific data: An exploratory study of data practices in habitat ecology},
+  editor = {J. Gonzalo and C. Thanos and M. F. Verdejo and R. C. Carrasco},
+%<biblatex>  booktitle = {{Lecture} {Notes} in {Computer} {Science}},
+%<biblatex>  booksubtitle = {Vol. 4172. {Research} and {Advanced} {Technology} for {Digital} {Libraries}},
+%<apacite>  booktitle = {{Lecture} {Notes} in {Computer} {Science:} {Vol.} 4172. {Research} and {Advanced} {Technology} for {Digital} {Libraries}},
+  pages = {170--183},
+  doi = {10.1007/11863878_15}
+}
+
+%<biblatex>@report{ccsds2012oais,
+%<apacite>@techreport{ccsds2012oais,
+  author = {{Consultative Committee for Space Data Systems}},
+  shortauthor = {{CCSDS}},
+%<biblatex>  date = {2012},
+%<apacite>  year = {2012},
+  title = {Reference model for an {Open} {Archival} {Information} {System} {(OAIS)}},
+  type = {Magenta Book},
+  number = {CCSDS 650.0-M-2},
+  url = {http://public.ccsds.org/publications/archive/650x0m2.pdf}
+}
+
+%<biblatex>@report{dcc2005dcp,
+%<apacite>@techreport{dcc2005dcp,
+  author = {{Digital Curation Centre}},
+%<biblatex>  date = {2005},
+%<apacite>  year = {2005},
+%<biblatex>  title = {Digital curation and preservation},
+%<biblatex>  subtitle = {Defining the research agenda for the next decade},
+%<apacite>  title = {Digital curation and preservation: Defining the research agenda for the next decade},
+%<apacite>  type = {\bibnotype},
+%<biblatex>  note = {Report of the Warwick Workshop, November 7–8, 2005},
+%<apacite>  howpublished = {Report of the Warwick Workshop, November 7–8, 2005},
+  url = {http://www.dcc.ac.uk/webfm_send/346}
+}
+
+ at article{esanu.etal2004sar,
+  author = {Esanu, J. and Davidson, J. and Ross, S. and Anderson, W.},
+%<biblatex>  date = {2004},
+%<apacite>  year = {2004},
+%<biblatex>  title = {Selection, appraisal, and retention of digital scientific data},
+%<biblatex>  subtitle = {Highlights of an {ERPANET\slash CODATA} workshop},
+%<apacite>  title = {Selection, appraisal, and retention of digital scientific data: Highlights of an {ERPANET\slash CODATA} workshop},
+%<biblatex>  journaltitle = {Data Science Journal},
+%<apacite>  journal = {Data Science Journal},
+  volume = {3},
+  pages = {227--232},
+  url = {http://www.jstage.jst.go.jp/browse/dsj}
+}
+
+ at article{mazairac.beetzIPboq,
+  author = {Mazairac, W. and Beetz, J.},
+%<biblatex>  pubstate = {inpress},
+%<apacite>  year = {\BIP},
+%<biblatex>  title = {{BIMQL}},
+%<biblatex>  subtitle = {An Open Query Language for Building Information Models},
+%<apacite>  title = {{BIMQL}: An Open Query Language for Building Information Models},
+%<biblatex>  journaltitle = {Advanced Engineering Informatics},
+%<apacite>  journal = {Advanced Engineering Informatics},
+  doi = {10.1016/j.aei.2013.06.001}
+}
+
+%<biblatex>@report{nsf2003rse,
+%<apacite>@techreport{nsf2003rse,
+  author = {{National Science Foundation, Blue-Ribbon Advisory Panel on Cyberinfrastructure}},
+%<biblatex>  date = {2003},
+%<apacite>  year = {2003},
+  title = {Revolutionizing science and engineering through cyberinfrastructure},
+%<apacite>  type = {\bibnotype},
+  url = {http://www.nsf.gov/publications/pub_summ.jsp?ods_key=cise051203}
+}
+
+ at article{rinaldo.etal2011rsc,
+  author = {Rinaldo, C. and Warnement, J. and Baione, T. and Kalfatovic, M. R. and Fraser, S.},
+%<biblatex>  date = {2011-07},
+%<apacite>  year = {2011},
+%<apacite>  month = jul,
+  title = {Retooling special collections digitisation in the age of mass scanning},
+%<biblatex>  journaltitle = {Ariadne},
+%<apacite>  journal = {Ariadne},
+  volume = {67},
+  url = {http://www.ariadne.ac.uk/issue67/rinaldo-et-al/}
+}
+
+ at unpublished{santini2004sas,
+  author = {Santini, M.},
+%<biblatex>  date = {2004},
+%<apacite>  year = {2004},
+  title = {A shallow approach to syntactic feature extraction for genre classification},
+  howpublished = {Paper presented at the Seventh Annual Colloquium for the UK Special Interest Group for Computational Linguistics, Birmingham, UK},
+  url = {ftp://ftp.itri.bton.ac.uk/reports/ITRI-04-02.pdf}
+}
+
+%<biblatex>@report{santini2004saa,
+%<apacite>@techreport{santini2004saa,
+  author = {Santini, M.},
+%<biblatex>  date = {2004},
+%<apacite>  year = {2004},
+  title = {State-of-the-art on automatic genre identification},
+  type = {Technical Report},
+  number = {ITRI-04-03},
+  institution = {Information Technology Research Institute},
+  url = {ftp://ftp.itri.bton.ac.uk/reports/ITRI-04-03.pdf}
+}
+
+ at article{smith.etal2003das,
+  author = {Smith, M. and Barton, M. and Bass, M. and Branschofsky, M. and McClellan, G. and Stuve, D. and Walker, J. H.},
+%<biblatex>  date = {2003},
+%<apacite>  year = {2003},
+%<biblatex>  title = {{DSpace}},
+%<biblatex>  subtitle = {An open source dynamic digital repository},
+%<apacite>  title = {{DSpace}: An open source dynamic digital repository},
+%<biblatex>  journaltitle = {D-Lib Magazine},
+%<apacite>  journal = {D-Lib Magazine},
+  volume = {9},
+  number = {1},
+  doi = {10.1045/january2003-smith}
+}
+
+%<biblatex>@data{waterton.etal2013ual,
+%<apacite>@misc{waterton.etal2013ual,
+  author = {Waterton, C. and Watson, N. and Norton, L.},
+  title = {Understanding and Acting in {Loweswater}, 2007–2010},
+%<biblatex>  entrysubtype = {Data set},
+%<apacite>  type = {Data set},
+%<biblatex>  date = {2013},
+%<apacite>  year = {2013},
+  publisher = {UK Data Archive},
+%<biblatex>  location = {Colchester, UK},
+%<apacite>  address = {Colchester, UK},
+  doi = {10.5255/UKDA-SN-7359-1}
+}
+
+ at book{witten.frank2005dmp,
+  author = {Witten, I. H. and Frank, E.},
+%<biblatex>  date = {2005},
+%<apacite>  year = {2005},
+%<biblatex>  title = {Data mining},
+%<biblatex>  subtitle = {Practical machine learning tools and techniques},
+%<apacite>  title = {Data mining: Practical machine learning tools and techniques},
+  edition = {2},
+%<biblatex>  location = {San Francisco, CA},
+%<apacite>  address = {San Francisco, CA},
+  publisher = {Morgan Kaufmann}
+}
+%</biblatex|apacite>
+%<*internal>
+\fi
+\def\nameofplainTeX{plain}
+\ifx\fmtname\nameofplainTeX\else
+  \expandafter\begingroup
+\fi
+%</internal>
+%<*install>
+\input docstrip.tex
+\keepsilent
+\askforoverwritefalse
+\preamble
+
+----------------------------------------------------------------
+The dccpaper bundle: Classes for submissions to IJDC and IDCC
+Author:  Alex Ball
+E-mail:  a.ball at ukoln.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) 2015 Digital Curation Centre, University of Edinburgh
+<info at dcc.ac.uk>
+\endpostamble
+
+\usedir{tex/latex/dccpaper}
+\generate{
+  \file{ijdc-v9.cls}{\from{\jobname.dtx}{ijdc9}}
+  \file{idcc.cls}{\from{\jobname.dtx}{idcc}}
+  \file{dccpaper-base.sty}{\from{\jobname.dtx}{base}}
+}
+%</install>
+%<install>\endbatchfile
+%<*internal>
+\usedir{source/latex/dccpaper}
+\generate{
+  \file{\jobname.ins}{\from{\jobname.dtx}{install}}
+}
+\nopreamble\nopostamble
+\usedir{doc/latex/dccpaper}
+\generate{
+  \file{README.md}{\from{\jobname.dtx}{readme}}
+  \file{dccpaper-biblatex.bib}{\from{\jobname.dtx}{biblatex}}
+  \file{dccpaper-apacite.bib}{\from{\jobname.dtx}{apacite}}
+}
+\ifx\fmtname\nameofplainTeX
+  \expandafter\endbatchfile
+\else
+  \expandafter\endgroup
+\fi
+%</internal>
+%<*driver>
+\ProvidesFile{dccpaper.dtx}
+    [\Version\ Classes for submissions to IJDC and IDCC]
+\documentclass{ijdc-v9}
+\let\DccpaperMaketitle=\maketitle
+
+\usepackage[utf8]{luainputenc}
+
+% For typesetting the documentation generally
+\usepackage{doc}
+\usepackage{enumitem}
+\usepackage{listings}
+\colorlet{Command}{red!75!black}
+\colorlet{Environment}{blue!75!black}
+\colorlet{Option}{violet}
+\colorlet{Value}{olive!75!black}
+\lstloadlanguages{[LaTeX]TeX}
+\lstset
+  { columns=fullflexible
+  , basicstyle=\ttfamily
+  , language={[LaTeX]TeX}
+  , texcsstyle=*\color{Command}
+  , moretexcs=
+    { affil
+    , conference
+    , correspondence
+    , submitted
+    , received
+    , revised
+    , accepted
+    , subno
+    , volume
+    , issue
+    , maketitle
+    , sisetup
+    , toprule
+    , cmidrule
+    , midrule
+    , bottomrule
+    , DeclareLanguageMapping
+    , printbibliography
+    , addbibresource
+    , subsection
+    , subparagraph
+    }
+  , moredelim=**[s][\color{Option}]{[}{]}
+  , moredelim=**[s][\color{Environment}]{\{}{\}}
+  , mathescape
+  }
+\newcommand*{\pkg}[1]{\href{http://www.ctan.org/pkg/#1}{\textsf{#1}}}
+\newcommand*{\cs}[1]{\textcolor{Command}{\texttt{\textbackslash#1}}}
+\newcommand*{\env}[1]{\textcolor{Environment}{\ttfamily #1}}
+\newcommand*{\key}[1]{\textcolor{Option}{\ttfamily #1}}
+\newcommand*{\val}[1]{\textcolor{Value}{\ttfamily #1}}
+\let\myrmfamily=\rmfamily
+\renewcommand*{\meta}[1]{\ensuremath{\langle\textrm{\emph{#1}}\rangle}}
+\def\brackets#1{%
+  \texttt{\textcolor{Environment}{\char`\{}#1\textcolor{Environment}{\char`\}}}}
+\def\marg#1{%
+  \textcolor{Environment}{\ttfamily\char`\{}\meta{#1}\textcolor{Environment}{\ttfamily\char`\}}}
+\def\sqbrackets#1{%
+  \texttt{\textcolor{Option}{[}#1\textcolor{Option}{]}}}
+\def\oarg#1{%
+  \textcolor{Option}{\ttfamily\char`\{}\meta{#1}\textcolor{Option}{\ttfamily\char`\}}}
+\makeatletter
+\let\PrintMacroName=\@gobble
+\let\PrintEnvName=\@gobble
+\makeatother
+\newenvironment{optionkey}[1]{}{}
+\newenvironment{optionvalue}[1]{}{}
+
+% For typesetting the implementation
+\usepackage{metalogo}
+% This bit inspired by ydoc
+\makeatletter
+\newwrite\ydocwrite
+\def\ydocfname{\jobname.lsttemp}
+\def\ydoc at catcodes{%
+  \let\do\@makeother
+  \dospecials
+  \catcode`\\=\active
+  \catcode`\^^M=\active
+  \catcode`\ =\active
+}
+\def\macrocode{%
+  \begingroup
+  \ydoc at catcodes
+  \macro at code
+}
+\def\endmacrocode{}
+\begingroup
+\endlinechar\m at ne
+\@firstofone{%
+\catcode`\|=0\relax
+\catcode`\(=1\relax
+\catcode`\)=2\relax
+\catcode`\*=14\relax
+\catcode`\{=12\relax
+\catcode`\}=12\relax
+\catcode`\ =12\relax
+\catcode`\%=12\relax
+\catcode`\\=\active
+\catcode`\^^M=\active
+\catcode`\ =\active
+}*
+|gdef|macro at code#1^^M%    \end{macrocode}(*
+|endgroup|expandafter|macro@@code|expandafter(|ydoc at removeline#1|noexpand|lastlinemacro)*
+)*
+|gdef|ydoc at removeline#1^^M(|noexpand|firstlinemacro)*
+|gdef|ydoc at defspecialmacros(*
+|def^^M(|noexpand|newlinemacro)*
+|def (|noexpand|spacemacro)*
+|def\(|noexpand|bslashmacro)*
+)*
+|gdef|ydoc at defrevspecialmacros(*
+|def|newlinemacro(|noexpand^^M)*
+|def|spacemacro(|noexpand )*
+|def|bslashmacro(|noexpand\)*
+)*
+|endgroup
+\def\macro@@code#1{%
+  {\ydoc at defspecialmacros
+  \xdef\themacrocode{#1}}%
+  \PrintMacroCode
+  \end{macrocode}%
+}
+\def\PrintMacroCode{%
+  \begingroup
+  \let\firstlinemacro\empty
+  \let\lastlinemacro\empty
+  \def\newlinemacro{^^J}%
+  \let\bslashmacro\bslash
+  \let\spacemacro\space
+  \immediate\openout\ydocwrite=\ydocfname\relax
+  \immediate\write\ydocwrite{\themacrocode}%
+  \immediate\closeout\ydocwrite
+  \let\input\@input
+  \lstinputlisting[firstnumber=last]{\ydocfname}%
+  \endgroup
+}
+\makeatother
+
+\let\maketitle=\DccpaperMaketitle
+
+\usepackage{dcolumn,csquotes}
+\usepackage[iso,british]{isodate}
+\usepackage[expansion=false]{microtype}
+\DisableLigatures{family=tt*}
+\usepackage[tightLists=false]{markdown}
+\markdownSetup{rendererPrototypes={%
+ link = {#1\footnote{\ifx\empty#4\empty\else#4:
+ \fi\url{#3}}}%
+}}
+\def\T#1{}  % Work around bug where \T1 inserted as control sequence
+\usepackage{fnpct}
+
+\usepackage[style=apa]{biblatex}
+\addbibresource{dccpaper-biblatex.bib}
+\DeclareLanguageMapping{british}{british-apa}
+
+%%\usepackage{apacite}
+%%\bibliographystyle{apacite}
+%%\let\textcite=\citeA
+%%\let\autocite=\cite
+
+\title[The \textsf{dccpaper} bundle]{The \protect\textsf{dccpaper} bundle: Classes for submissions to IJDC and IDCC}
+
+\author{Alex Ball}
+\affil{University of Bath}
+\correspondence{Alex Ball, University of Bath, Claverton Down, Bath BA2 7AY. Email: \email{a.j.ball at bath.ac.uk}}
+
+\received{4 July 2013}
+\revised{10 December 2013}
+\accepted{1 January 2014}
+
+\GetFileInfo{dccpaper-base.sty}
+
+\begin{document}
+\maketitle
+
+\begin{abstract}
+This is the documentation for the \pkg{dccpaper} bundle, consisting of the following classes:
+\begin{itemize}
+\item\textsf{ijdc-v9}, which corresponds to the template used by the International Journal of Digital Curation, beginning with volume 9.
+\item\textsf{idcc}, which corresponds to the template used for the International Digital Curation Conference, beginning with IDCC15.
+\end{itemize}
+
+The version to which it relates is \fileversion, last revised \printdateTeX{\filedate}.
+
+The code for this bundle is maintained at \url{https://github.com/DigitalCurationCentre/dccpaper}.
+
+Versions of the templates are also available that target Microsoft Word and LibreOffice\slash OpenOffice.org.
+
+Please note that the DOI attached to this document is fake and should not be used for identification purposes.
+\end{abstract}
+
+\section{Introduction}
+
+The \LaTeX\ class \textsf{ijdc-v9} produces camera-ready papers and articles suitable for inclusion in the International Journal of Digital Curation, with applicability from volume 9 onwards. The similar \textsf{idcc} class can be used for submissions to the International Digital Curation Conference, beginning with the 2015 conference. This document explains how to use these classes.
+
+\section{Dependencies}
+
+Certain aspects of the template design have been implemented using third-party packages, aside from those that are required parts of the \LaTeX\ system. Therefore you should ensure that you have these packages installed on your system before attempting to use the class.
+
+\begin{itemize}
+\item\pkg{atbegshi} is used for switching geometry between pages.
+\item Tables in your document must be formatted according to the design principles promoted and supported by the \pkg{booktabs} package.
+\item\pkg{caption} is used to format the figure and table captions.
+\item\pkg{etoolbox} is used behind the scenes for patching commands.
+\item\pkg{footmisc} is used to format the footnotes.
+\item\pkg{titlesec} is used to format the section headings.
+\end{itemize}
+
+In some cases the class prefers to use packages that are not part of the base installation (but are nevertheless commonly available in \TeX\ distributions), but will fall back to their base equivalents if necessary.
+
+\begin{itemize}
+\item
+\pkg{newtx} will be used if available in place of \pkg{times}.
+\item
+\pkg{xcolor} will be used if available in place of \pkg{color}.
+\end{itemize}
+
+For referencing, you are encouraged to use either \pkg{biblatex} using the styles provided by \pkg{biblatex-apa} (preferred), or \pkg{apacite}.
+
+\section{Loading the Classes}
+
+\subsection{International Journal of Digital Curation}
+
+The class is loaded in the usual way with
+\lstinline|\documentclass[$\meta{options}$]{ijdc-v9}|.
+The following options are available:
+
+\begin{description}[font=\normalfont\key]
+\item[paper]
+Use this for peer-reviewed papers.
+\item[article]
+Use this for general (non-peer-reviewed) articles if you like, but you do not have to as the class defaults to this state.
+\item[editorial]
+Use this for an editorial.
+\end{description}
+
+\subsection{International Digital Curation Conference}
+
+The class is loaded in the usual way with
+\lstinline|\documentclass[$\meta{options}$]{idcc}|.
+Two types of option are available. The first relates to the type of submission:
+\begin{description}[font=\normalfont\key]
+\item[research]
+Use this for full research papers.
+\item[practice]
+Use this for extended abstracts of practice papers, and full practice papers. The class defaults to this state, making this option even more optional than normal.
+\item[data]
+Use this for data paper abstracts and full data papers.
+\item[poster]
+Use this for poster abstracts.
+\item[demo]
+Use this for demonstration proposals.
+\item[bof]
+Use this for Birds of a Feather session abstracts.
+\item[workshop]
+Use this for workshop proposals.
+\end{description}
+
+The second type of option relates to the conference to which the submission will be made:
+\begin{multicols}{2}
+\begin{description}[font=\normalfont\key]
+\item[15]
+Use this for the 2015 conference.
+\item[16]
+Use this for the 2016 conference.
+\item[17]
+Use this for the 2017 conference.
+\item[18]
+Use this for the 2018 conference.
+\end{description}
+\end{multicols}
+
+\section{Preamble Commands}
+
+The following commands should be given in the preamble to fill out the document metadata.
+
+The following command should be used in all submissions.
+
+\begin{description}
+\item[]
+\hskip-\labelsep
+\lstinline|\title[$\meta{name}$]{$\meta{full version}$}|
+\hskip\labelsep
+The long version of the title is shown on the cover page of the submission, while the short version appears in the (even page) headers.
+\end{description}
+
+The following commands should be given in general articles and IDCC submissions. They should \emph{not} be given in peer-reviewed IJDC papers until after the peer review process is complete.
+
+\begin{description}
+\item[]
+\hskip-\labelsep
+\lstinline|\author{$\meta{name}$}|
+\hskip\labelsep
+The name of one author. Repeat the command for each additional author.
+
+It is customary in IJDC and IDCC papers to group authors by institution. Within each institution, the authors are ordered by the level of contribution (or alphabetically where this is equal), and the institutional groups are ordered by the level of contribution of the first author in the group (or alphabetically by first author where this is equal). A different convention may be used if appropriate.
+
+\item[]
+\hskip-\labelsep
+\lstinline|\affil{$\meta{name}$}|
+\hskip\labelsep
+The affiliation (institution, company) of the immediately preceding author(s). This command may be repeated as necessary.
+
+\item[]
+\hskip-\labelsep
+\lstinline|\correspondence{$\meta{name, postal address.}$ Email: \email{$\meta{email address}$}}|
+\hskip\labelsep
+Name, address and email address of the corresponding author. This information appears in the footer of the cover page.
+\end{description}
+
+If an IJDC submission is a reworked conference paper (that has not already been formally published), for reasons of transparency the name of the conference should be given.
+
+\begin{description}
+\item[]
+\hskip-\labelsep
+\lstinline|\conference{$\meta{name of conference}$}|
+\hskip\labelsep
+The conference at which the earlier version of the paper was presented, e.g.\ ‘the 10th International Digital Curation Conference’.
+\end{description}
+
+For IDCC papers, authors are invited to record the date on which they made their submission.
+
+\begin{description}
+\item[]
+\hskip-\labelsep
+\lstinline|\submitted{$\meta{date}$}|
+\hskip\labelsep
+The date on which the initial submission was made to the conference by the authors.
+\end{description}
+
+Some additional commands are used by the editorial team when preparing a submission for publication. Though authors would not normally need to use them, here they are for completeness.
+
+\begin{description}
+\item[]
+\hskip-\labelsep
+\lstinline|\received{$\meta{date}$}|
+\hskip\labelsep
+The date on which the initial submission was received by the editorial team (IJDC papers only).
+
+\item[]
+\hskip-\labelsep
+\lstinline|\revised{$\meta{date}$}|
+\hskip\labelsep
+The date on which the latest revision was received by the editorial team.
+
+\item[]
+\hskip-\labelsep
+\lstinline|\accepted{$\meta{date}$}|
+\hskip\labelsep
+The date on which the submission was accepted for publication.
+
+\item[]
+\hskip-\labelsep
+\lstinline|\subno{$\meta{number}$}|
+\hskip\labelsep
+The submission number allocated by the IJDC Open Journal System.
+
+\item[]
+\hskip-\labelsep
+\lstinline|\volume{$\meta{number}$}|
+\hskip\labelsep
+The number of the IJDC volume in which the submission will be published.
+
+\item[]
+\hskip-\labelsep
+\lstinline|\issue{$\meta{number}$}|
+\hskip\labelsep
+The number of the IJDC issue in which the submission will be published.
+
+\item[]
+\hskip-\labelsep
+\lstinline|\date{$\meta{year}$}|
+\hskip\labelsep
+The year in which the submission will be published.
+\end{description}
+
+\section{Document Body}
+
+When it comes to writing the body of the submission, the template should allow you to use the usual \LaTeX\ markup without much adaptation. So, for example, you would start as in Figure~\ref{fig:start-paper}.
+
+\begin{figure}[ht]
+\begin{lstlisting}[frame=single]
+\begin{document}
+\maketitle
+
+\begin{abstract}
+Text of the abstract\dots
+\end{abstract}
+
+\section{Introduction}
+
+The text of the introduction starts here\dots
+\end{lstlisting}
+\caption{Sample code for the beginning of an IJDC submission or IDCC full paper.}
+\label{fig:start-paper}
+\end{figure}
+
+Please note that if submitting an abstract or proposal to the IDCC instead of a full paper, you should \emph{not} use the \texttt{abstract} environment. Instead, start with a section headed `Abstract' as in Figure~\ref{fig:start-abstract}. Further guidance on how to write such submissions is given on the conference website.
+
+\begin{figure}[ht]
+\begin{lstlisting}[frame=single]
+\begin{document}
+\maketitle
+
+\section{Abstract}
+
+The text of the abstract or proposal starts here\dots
+\end{lstlisting}
+\caption{Sample code for the beginning of an IDCC abstract or proposal.}
+\label{fig:start-abstract}
+\end{figure}
+
+IJDC and IDCC papers follow the formatting conventions specified by the \textcite{apa6ed}, with a few minor changes. There are some instances where this affects how you write your submission.
+
+\subsection{Headings}
+
+Five levels of heading are defined (\lstinline|\section| down to \lstinline|\subparagraph|) but most authors only need the first one or two levels. \lstinline|\section| and \lstinline|\subsection| headings should be written in title case, that is, with Each Significant Word Given an Initial Capital, while the remaining headers should be written in sentence case as if running text. Do not end your heading names with full stops\slash periods.
+
+\subsection{Quotations}
+
+Quotations should be put in a \texttt{quote} environment, wrapped in inverted commas, with the citation placed in parentheses at the end.
+
+\begin{quote}
+‘Cras porttitor dictum lacus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. In consectetuer, diam at volutpat elementum, libero lectus pulvinar sem.’ (Borgman, 2007)
+\end{quote}
+
+\subsection{Tables}
+
+\begin{itemize}
+\item
+Table text should be in the \lstinline|\small| font size.
+\item
+Tables should not use vertical lines to separate columns, and ideally should not use horizontal lines to separate rows in the body of the table; white space and text alignment should be sufficient. The top and bottom rules should be drawn with \lstinline|\toprule| and \lstinline|\bottomrule| respectively, with other rules drawn with \lstinline|\midrule| or \lstinline|\cmidrule|. See the documentation of the \pkg{booktabs} package for more information.
+\item
+Text in the body of tables should normally be left-aligned. Numeric data should be aligned at the decimal point among itself but centred with respect to the heading; the \texttt{D} column type from the \pkg{dcolumn} package and the \texttt{S} column type from the \pkg{siunitx} package are particularly useful for this.
+\item
+Where decked (subdivided) headings are used, there should be a border beneath the upper-level heading (column spanner) indicating to which of the lower-level headings it applies.
+\item
+Empty cells can either be left blank or represented by an em dash. A blank cell indicates non-applicability, while an em dash signifies that the data was not collected or has been omitted.
+\item
+Captions should end in a full stop\slash period.
+\end{itemize}
+
+Table~\ref{tab:issues} demonstrates these features. The code used to produce the table is shown in Figure~\ref{fig:table} (note that the \pkg{dcolumn} package was loaded in the preamble).
+
+\begin{table}[ht]
+\caption{Papers and articles published in the IJDC in 2008 and 2009.}
+\label{tab:issues}
+\centering\small
+\begin{tabular}{lD..{2.0}D..{2.0}D..{2.1}D..{2.1}}
+\toprule
+ & \multicolumn{2}{c}{Frequency} & \multicolumn{2}{c}{Percentage} \\
+\cmidrule(lr){2-3}\cmidrule(l){4-5}
+Issue
+ & \multicolumn{1}{c}{Peer-reviewed} & \multicolumn{1}{c}{General}
+ & \multicolumn{1}{c}{Peer-reviewed} & \multicolumn{1}{c}{General} \\
+\midrule
+3(1) &  9 &  7 & 56.3 & 43.8 \\
+3(2) &  5 &  7 & 41.7 & 58.3 \\
+4(1) & 10 &  4 & 71.4 & 28.6 \\
+4(2) &  8 &  6 & 57.1 & 42.9 \\
+4(3) &  3 & 15 & 16.7 & 83.3 \\
+\bottomrule
+\end{tabular}
+\end{table}
+
+\begin{figure}[h]
+\begin{lstlisting}[frame=single]
+\begin{table}
+\caption{Papers and articles published in the IJDC in 2008 and 2009.}
+\label{tab:issues}
+\centering\small
+\begin{tabular}{lD..{2.0}D..{2.0}D..{2.1}D..{2.1}}
+\toprule
+& \multicolumn{2}{c}{Frequency} & \multicolumn{2}{c}{Percentage} \\
+\cmidrule(lr){2-3}\cmidrule(l){4-5}
+Issue
+& \multicolumn{1}{c}{Peer-reviewed} & \multicolumn{1}{c}{General}
+& \multicolumn{1}{c}{Peer-reviewed} & \multicolumn{1}{c}{General} \\
+\midrule
+3(1) &  9 &  7 & 56.3 & 43.8 \\
+3(2) &  5 &  7 & 41.7 & 58.3 \\
+4(1) & 10 &  4 & 71.4 & 28.6 \\
+4(2) &  8 &  6 & 57.1 & 42.9 \\
+4(3) &  3 & 15 & 16.7 & 83.3 \\
+\bottomrule
+\end{tabular}
+\end{table}
+\end{lstlisting}
+\caption{Code used to typeset Table~\ref{tab:issues}.}
+\label{fig:table}
+\end{figure}
+
+Note the different relative positions of the table and figure captions.
+
+\subsection{Reference List and Citations}
+
+To use \pkg{biblatex} for your reference list, add the following to your preamble:
+\begin{lstlisting}
+\usepackage[style=apa]{biblatex}
+\addbibresource{$\meta{bib file}$.bib}
+\DeclareLanguageMapping{british}{british-apa}
+\end{lstlisting}
+and include \lstinline|\printbibliography| at the end of the document.
+
+To use \pkg{apacite} for your reference list, add the following to your preamble:
+\begin{lstlisting}
+\usepackage{apacite}
+\bibliographystyle{apacite}
+\end{lstlisting}
+and include \lstinline|\bibliography{$\meta{bib file}$}| at the end of the document.
+
+In-text citations are given parenthetically in author–date format. If author forms part of the narrative, as with \textcite{rinaldo.etal2011rsc}, only the date is added in parenthesis, otherwise both author and date are given \autocite{smith.etal2003das}. Where multiple citations are given at once, the order should be the same as in the reference list, i.e.\ alphabetically by author, with co-authored works coming after singly-authored works, then chronologically \autocite{borgman.etal2006bdl, dcc2005dcp, mazairac.beetzIPboq, santini2004sas, santini2004saa, smith.etal2003das, witten.frank2005dmp}. Please consult the documentation of the package you are using for how to achieve this.
+
+Please do not cite entire websites through the reference list mechanism. Instead, provide the title of the website (in English) and the URL in a footnote.\footnote{Digital Curation Centre: \url{http://www.dcc.ac.uk/}} If the title of the website is not clear from the visible pages, the contents of the HTML title element may be used. Other explanatory notes, whether about the body text or cited items, should also be given as footnotes rather than as endnotes or reference list annotations.\footnote{This avoids unnecessary page turning or scrolling.}
+
+Please provide digital object identifiers (DOIs) for referenced items where available.
+
+The data underlying the results presented in the submission should be placed in an appropriate custodial environment and cited \autocite{waterton.etal2013ual}, with the reference placed in the reference list. The \pkg{biblatex-apa} package provides a \texttt{data} entry type which should be used for datasets; the \texttt{entrysubtype} value should be \enquote{\texttt{Data set}} or similar. If using \pkg{apacite}, use the \texttt{misc} entry type with a \texttt{type} value of \enquote{\texttt{Data set}} or similar.
+
+\section{Acknowledgements}
+
+Any acknowledgements should be placed in a section immediately before the references.\nocite{*}
+
+\printbibliography
+%%\bibliography{dccpaper-apacite.bib}
+
+\newpage
+\section{Appendix A: Change History}
+
+\begin{description}
+\item[v1.6] 2017-10-20\\
+Added details of IDCC 2018. Allowed files to be unpacked by \TeX\ without compiling. Refactored some documentation commands for efficiency.
+\item[v1.5] 2016-08-05\\
+Added details of IDCC 2017. Slightly refactored code to convert dccpaper-base.tex into a package, dccpaper-base.sty.
+\item[v1.4.1] 2015-06-22\\
+Fixed bug preventing compilation in DVI mode.
+\item[v1.4] 2015-05-22\\
+Added details of IDCC 2016. Improved whitespace handling. Fixed bug triggered by \texttt{demo} option. Fixed missing use of \lstinline|\Authfont|. Added missing DOI tweak for \pkg{biblatex-apa}.
+\item[v1.3.2] 2015-01-21\\
+Removed dependence on user supplying a title. Fixed bug triggered by numbered sections.
+\item[v1.3.1] 2014-10-14\\
+Fixed typographical error relating to details of IDCC 2015.
+\item[v1.3] 2014-08-07\\
+Added documentation of \lstinline|\conference| command. Improved display of footnotes, footnote markers and \texttt{itemize}\slash \texttt{enumerate} lists. Fixed a bug in the handling of author information. Fixed and improved how the transition from first to subsequent page geometry is achieved. Updated the details of IDCC 2015.
+\item[v1.2] 2014-04-11\\
+Added implementation, installation and licence sections to the Appendix of the documentation. Moved the majority of the file postamble information to the README, and synchronized the latter with the GitHub version. Improved the adaptation of \pkg{apacite} referencing to the house style.
+\item[v1.1] 2014-03-06\\
+Refactored the source for distribution through CTAN, and to allow the addition of the \textsf{idcc} class.
+\item[v1.0] 2013-12-18\\
+First public release of \textsf{ijdc-v9} class.
+\end{description}
+
+\newpage
+\section{Appendix B: Implementation}
+
+\lstset
+  { aboveskip=1em plus 0.5em minus 0.2em
+  , belowskip=1em plus 0.5em minus 0.2em
+  , frame=single
+  , numbers=left
+  , numberstyle=\color{gray}\footnotesize\itshape
+  , basicstyle=\footnotesize\ttfamily
+  , breaklines=true
+  , escapechar=
+  }%
+\MakeShortVerb{\|}%
+\DocInput{\jobname.dtx}
+
+\newpage
+\section{Appendix C: Installation}
+
+\begin{markdown*}{hybrid=true}
+%</driver>
+%<readme>## Installation
+%<readme>
+%<*driver|readme>
 ### Managed way
 
 The latest stable release of the dccpaper bundle has been packaged for
@@ -38,35 +865,97 @@
 
 A makefile is provided which you can use with the Make utility:
 
-  * Running `make` generates the derived files
+  * Running `make source` generates the derived files
       - README.md
-      - dccpaper.pdf
       - ijdc-v9.cls
       - idcc.cls
       - dccpaper-base.sty
       - dccpaper-apacite.bib
       - dccpaper-biblatex.bib
+  * Running `make` generates the above files and also dccpaper.pdf.
   * Running `make inst` installs the files in the user's TeX tree.
   * Running `make install` installs the files in the local TeX tree.
 
 ### Manual way
 
- 1. Compile dccpaper.dtx just as you would a normal LaTeX file. Bear in
-    mind the documentation requires the Biblatex package and the Biber
-    tool rather than regular BibTeX. As well as the usual PDF (or DVI)
-    and auxiliary files, several others are generated.
- 2. Move the files to your TeX tree as follows:
-      - `source/latex/dccpaper`: dccpaper.dtx, dccpaper.ins
-      - `tex/latex/dccpaper`: ijdc-v9.cls, idcc.cls, dccpaper-base.sty,
-        dccpaper-by.eps, dccpaper-by.pdf
-      - `doc/latex/dccpaper`: dccpaper.pdf, dccpaper-apacite.bib,
-        dccpaper-biblatex.bib, README.md
+ 1. Run `tex dccpaper.dtx` to generate the source files.
+ 2. Compile dccpaper.dtx with (any version of) LaTeX and Biber to generate the
+    documentation. Due to a dependency on the markdown package, you will need
+    either to use LuaLaTeX or to enable shell escape.
+ 3. Move the files to your TeX tree as follows:
+      - `source/latex/dccpaper`:
+        dccpaper.dtx,
+        dccpaper.ins
+      - `tex/latex/dccpaper`:
+        ijdc-v9.cls,
+        idcc.cls,
+        dccpaper-base.sty,
+        dccpaper-by.eps,
+        dccpaper-by.pdf
+      - `doc/latex/dccpaper`:
+        dccpaper.pdf,
+        dccpaper-apacite.bib,
+        dccpaper-biblatex.bib,
+        README.md
 
- 3. You may then have to update your installation's file name database
+ 4. You may then have to update your installation's file name database
     before TeX and friends can see the files.
 
-## Licence
+%</driver|readme>
+%<*driver>
+\end{markdown*}
 
+\newpage
+\section{Appendix D: Sample Document}
+
+The following code demonstrates how to use \pkg{dccpaper} to write a IDCC conference paper.
+
+\begin{lstlisting}[frame=single]
+\documentclass[research,15]{idcc}
+
+\title{How to write a conference paper}
+\author{Alex Ball}
+\affil{Digital Curation Centre}
+\author{Fred Bloggs}
+\affil{University of Life}
+
+\submitted{1 October 2014}
+
+\usepackage[style=apa]{biblatex}
+\addbibresource{references.bib}
+\DeclareLanguageMapping{british}{british-apa}
+
+\begin{document}
+\maketitle
+
+\begin{abstract}
+Text of the abstract\dots
+\end{abstract}
+
+\section{Introduction}
+
+The text of the introduction starts here\dots
+
+\section{Conclusions}
+
+The text of the conclusions starts here\dots
+
+\section{Acknowledgements}
+
+Any acknowledgements should be placed here\dots
+
+\printbibliography
+\end{document}
+\end{lstlisting}
+
+\newpage
+\section{Appendix E: Licence}
+
+\begin{markdown*}{hybrid=true}
+%</driver>
+%<readme>## Licence
+%<readme>
+%<*driver|readme>
 Copyright 2016 Digital Curation Centre, University of Edinburgh.
 
 This work consists of the image files dccpaper-by.eps and
@@ -73,53 +962,58 @@
 dccpaper-by.pdf, the documented LaTeX file dccpaper.dtx and a Makefile.
 
 The text files contained in this work may be distributed and/or modified
-under the conditions of the [LaTeX Project Public License (LPPL)],
+under the conditions of the [LaTeX Project Public License (LPPL)][lppl],
 either version 1.3c of this license or (at your option) any later
 version.
 
 The image files distributed with this bundle derive from the file
 [by.eps] distributed by Creative Commons. The image is a trademark of
-Creative Commons and is subject to the [Creative Commons trademark
-policy].
+Creative Commons and is subject to the [Creative Commons trademark policy][cctp].
 
-This work is "maintained" (as per LPPL maintenance status) by [Alex
-Ball].
+This work is “maintained” (as per LPPL maintenance status) by [Alex Ball][me].
 
-[International Journal of Digital Curation]: http://www.ijdc.net/index.php/ijdc
-[International Digital Curation Conference]: http://www.dcc.ac.uk/events/international-digital-curation-conference-idcc
-[LaTeX Project Public License (LPPL)]: http://www.latex-project.org/lppl.txt
-[by.eps]: http://mirrors.creativecommons.org/presskit/buttons/88x31/eps/by.eps
-[Creative Commons trademark policy]: http://creativecommons.org/policies
-[Alex Ball]: http://alexball.me.uk/
-%</readme>
-%<ijdc9|idcc>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-%<ijdc9>\ProvidesClass{ijdc-v9}
-%<idcc>\ProvidesClass{idcc}
-%<base>\ProvidesPackage{dccpaper-base.sty}
+[lppl]: http://www.latex-project.org/lppl.txt "LaTeX Project Public License (LPPL)"
+[by.eps]: http://mirrors.creativecommons.org/presskit/buttons/88x31/eps/by.eps "CC BY licence badge"
+[cctp]: http://creativecommons.org/policies "Creative Commons trademark policy"
+[me]: http://alexball.me.uk/ "Alex Ball"
+%</driver|readme>
+%<*driver>
+\end{markdown*}
+
+The file dccpaper.pdf, generated by this work, is licensed as shown on page 1.
+\end{document}
+%</driver>
+% \fi
+% \iffalse
 %<*ijdc9>
-    [\Version\space Class for submissions to the International Journal of Digital Curation, volume 9 onwards.]
-%</ijdc9>
-%<*idcc>
-    [\Version\space Class for submissions to the International Digital Curation Conference.]
-%</idcc>
-%<*base>
-    [\Version\space Common class code for IJDC and IDCC papers.]
-%</base>
-%<*ijdc9>
-%<<LITERATE
+% \fi
 %
-% The type of paper is recorded in |\dccp at type|. The possible values are
+% \subsection{ijdc-v9.cls}
+% \setcounter{lstnumber}{21}
+%
+% \begin{macro}{dccp at type}
+% \begin{macro}{dccp at editorial}
+% The type of paper is recorded in \cs{dccp at type}. The possible values are
 % `General Article', `Peer-Reviewed Paper', or `Editorial'.
-% The latter is provided through the constant |\dccp at editorial| so we can
+% The latter is provided through the constant \cs{dccp at editorial} so we can
 % test for it later with ease.
 %
+%    \begin{macrocode}
 \def\dccp at type{General Article}
 \def\dccp at editorial{Editorial}
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
 %
-% These three options set |\dccp at type| appropriately. The |editorial|
+% \begin{optionkey}{editorial}
+% \begin{optionkey}{paper}
+% \begin{optionkey}{article}
+% These three options set \cs{dccp at type} appropriately. The \key{editorial}
 % option additionally switches page numbers to roman numerals.
-% The |article| option is redundant, but included for symmetry.
+% The \key{article} option is redundant, but included for symmetry with
+% \key{paper}.
 %
+%    \begin{macrocode}
 \DeclareOption{editorial}{\let\dccp at type=\dccp at editorial%
   \AtBeginDocument{% Editorials use Roman numerals for page numbers
     \pagenumbering{roman}%
@@ -130,11 +1024,22 @@
 \DeclareOption{article}{\def\dccp at type{General Article}}
 \ProcessOptions\relax
 
+%    \end{macrocode}
+% \end{optionkey}
+% \end{optionkey}
+% \end{optionkey}
 %
-% These definitions are used to fill out the headers and footers. They include 
-% some details that are defined in \textsf{dccpaper-base.sty} and provided by
-% the user: |\thedate|, |\thevolume|, |\theissue|, |\thelastpage|, |\thedoi|.
+% \begin{macro}{dccp at publ@long}
+% \begin{macro}{dccp at publ@short}
+% \begin{macro}{dccp at publ@msg}
+% \begin{macro}{dccp at titlefoot@bib}
+% \begin{macro}{dccp at titlefoot@doi}
+% \begin{macro}{dccp at normhead@doi}
+% These definitions are used to fill out the headers and footers. They include
+% some details that are defined in \textsf{dccpaper-base} and provided by
+% the user: \cs{thedate}, \cs{thevolume}, \cs{theissue}, \cs{thelastpage}, \cs{thedoi}.
 %
+%    \begin{macrocode}
 \def\dccp at publ@long{International Journal of Digital Curation}
 \def\dccp at publ@short{IJDC}
 \def\dccp at publ@msg{The \emph{\dccp at publ@long} is an international journal
@@ -151,49 +1056,91 @@
   DOI: \thedoi
 }
 \def\dccp at normhead@doi{doi:\thedoi}
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
-% |\dccp at subject| will be used for the PDF subject, and will specify the journal 
+% \cs{dccp at subject} will be used for the PDF subject, and will specify the journal
 % and the issue.
 %
+% \begin{macro}{dccp at subject}
+%    \begin{macrocode}
 \def\dccp at subject{\dccp at publ@long, \thedate, Vol.\ \thevolume, Iss.\ \theissue}
 
+%    \end{macrocode}
+% \end{macro}
 %
-% The class is based on the \textsf{article} class, and uses A4 paper.
+% The class is based on the \pkg{article} class, and uses A4 paper.
 %
+%    \begin{macrocode}
 \LoadClass[a4paper,12pt,twoside]{article}
 
+%    \end{macrocode}
 %
 % The rest of the formatting happens in the following file.
 %
+%    \begin{macrocode}
 \usepackage{dccpaper-base}
-%LITERATE
+%    \end{macrocode}
+% \iffalse
 %</ijdc9>
 %<*idcc>
-%<<LITERATE
+% \fi
 %
+% \subsection{idcc.cls}
+% \setcounter{lstnumber}{21}
+%
+% \begin{macro}{dccp at publ@long}
+% \begin{macro}{dccp at publ@short}
+% \begin{macro}{dccp at publ@msg}
 % These definitions are used to fill out the headers and footers.
-% The ones for |\dccp at publ@short| and |\dccp at publ@msg| are a fallback,
+% The ones for \cs{dccp at publ@short} and \cs{dccp at publ@msg} are a fallback,
 % defined here but ordinarily overridden using a package option.
 %
+%    \begin{macrocode}
 \def\dccp at publ@long{International Digital Curation Conference}
 \def\dccp at publ@short{IDCC}
-\def\dccp at publ@msg{The \dccp at publ@long\ takes place on [TBC] in [TBC]. URL: 
+\def\dccp at publ@msg{The \dccp at publ@long\ takes place on [TBC] in [TBC]. URL:
 \url{http://www.dcc.ac.uk/events/international-digital-curation-conference-idcc}}
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
-% |\dccp at subject| will be used for the PDF subject. The value here is again a
+% \begin{macro}{dccp at subject}
+% \cs{dccp at subject} will be used for the PDF subject. The value here is again a
 % fallback, ordinarily overridden using a package option.
 %
+%    \begin{macrocode}
 \def\dccp at subject{\dccp at publ@long}
 
+%    \end{macrocode}
+% \end{macro}
 %
-% Paper type is recorded in |\def\dccp at type|. The values can be 
+% \begin{macro}{dccp at type}
+% Paper type is recorded in \cs{dccp at type}. The values can be
 % `Research Paper', `Practice Paper', `Poster', `Demonstration', or `Workshop'.
 %
+%    \begin{macrocode}
 \def\dccp at type{Practice Paper}
+%    \end{macrocode}
+% \end{macro}
 %
-% These options set the value of |\def\dccp at type| appropriately.
-% The |practice| option is redundant, but included for symmetry.
+% \begin{optionkey}{research}
+% \begin{optionkey}{data}
+% \begin{optionkey}{poster}
+% \begin{optionkey}{demo}
+% \begin{optionkey}{bof}
+% \begin{optionkey}{workshop}
+% \begin{optionkey}{practice}
+% These options set the value of \cs{dccp at type} appropriately.
+% The \key{practice} option is redundant, but included for symmetry.
 %
+%    \begin{macrocode}
 \DeclareOption{research}{\def\dccp at type{Research Paper}}
 \DeclareOption{data}{\def\dccp at type{Data Paper}}
 \DeclareOption{poster}{\def\dccp at type{Poster}}
@@ -201,11 +1148,24 @@
 \DeclareOption{bof}{\def\dccp at type{Birds of a Feather}}
 \DeclareOption{workshop}{\def\dccp at type{Workshop}}
 \DeclareOption{practice}{\def\dccp at type{Practice Paper}}
+%    \end{macrocode}
+% \end{optionkey}
+% \end{optionkey}
+% \end{optionkey}
+% \end{optionkey}
+% \end{optionkey}
+% \end{optionkey}
+% \end{optionkey}
 %
+% \begin{optionkey}{15}
+% \begin{optionkey}{16}
+% \begin{optionkey}{17}
+% \begin{optionkey}{18}
 % The details for each conference are slightly different, so they each have an
 % associated option for overriding the fallback definitions for
-% |\dccp at publ@short|, |\dccp at publ@msg| and |\dccp at subject|.
+% \cs{dccp at publ@short}, \cs{dccp at publ@msg} and \cs{dccp at subject}.
 %
+%    \begin{macrocode}
 \DeclareOption{15}{%
   \def\dccp at publ@short{IDCC15}
   \def\dccp at publ@msg{The 10th \dccp at publ@long\ takes place on 9--12 February
@@ -224,14 +1184,27 @@
   2017 in Edinburgh. URL: \url{http://www.dcc.ac.uk/events/idcc17/}}
   \def\dccp at subject{12th \dccp at publ@long, 2017}
 }
+\DeclareOption{18}{%
+  \def\dccp at publ@short{IDCC18}
+  \def\dccp at publ@msg{The 13th \dccp at publ@long\ takes place on 19--22 February
+    2018 in Barcelona. URL: \url{http://www.dcc.ac.uk/events/idcc18/}}
+  \def\dccp at subject{13th \dccp at publ@long, 2018}
+}
 \ProcessOptions\relax
 
+%    \end{macrocode}
+% \end{optionkey}
+% \end{optionkey}
+% \end{optionkey}
+% \end{optionkey}
 %
-% The |demo| option, if passed, would be passed on to the \textsf{graphics}
+% \begin{macro}{@clearglobaloption}
+% The \key{demo} option, if passed, would be passed on to the \pkg{graphics}
 % package wreaking havoc with each and every included image. To avoid this,
 % we clear it from the list of class options using
 % \href{http://tex.stackexchange.com/q/33245}{code from Enrico Gregorio}.
 %
+%    \begin{macrocode}
 \def\@clearglobaloption#1{%
   \def\@tempa{#1}%
   \def\@tempb{\@gobble}%
@@ -249,38 +1222,52 @@
 }
 \@clearglobaloption{demo}
 
+%    \end{macrocode}
+% \end{macro}
 %
-% The class is based on the \textsf{article} class, and uses A4 paper.
+% The class is based on the \pkg{article} class, and uses A4 paper.
 %
+%    \begin{macrocode}
 \LoadClass[a4paper,12pt,twoside]{article}
 
+%    \end{macrocode}
 %
 % The rest of the formatting happens in the following file.
 %
+%    \begin{macrocode}
 \usepackage{dccpaper-base}
-%LITERATE
+%    \end{macrocode}
+% \iffalse
 %</idcc>
 %<*base>
-%<<LITERATE
+% \fi
 %
-% The \textsf{dccpaper} classes are deliberately very similar. This package 
+% \subsection{dccpaper-base.sty}
+% \setcounter{lstnumber}{21}
+%
+% The \pkg{dccpaper} classes are deliberately very similar. This package
 % contains the common code.
 %
 % We use British English orthography.
 %
+%    \begin{macrocode}
 \RequirePackage[british]{babel}
+%    \end{macrocode}
 %
-% The macro patching commands from \textsf{etoolbox} come in useful for handling 
-% author and date information, and also for compatibility with \textsf{apacite}.
+% The macro patching commands from \pkg{etoolbox} come in useful for handling
+% author and date information, and also for compatibility with \pkg{apacite}.
 %
+%    \begin{macrocode}
 \RequirePackage{etoolbox}
+%    \end{macrocode}
 %
-% The \textsf{dccpaper} classes use Times as the main text font. We prefer 
-% \textsf{newtx} as it provides support for mathematics, but the standard 
-% \textsf{times} package will do. In case they are needed, we also provide 
+% The \pkg{dccpaper} classes use Times as the main text font. We prefer
+% \pkg{newtx} as it provides support for mathematics, but the standard
+% \pkg{times} package will do. In case they are needed, we also provide
 % Helvetica for the sans serif font and Computer Modern Teletype for the
 % monospaced.
 %
+%    \begin{macrocode}
 \RequirePackage[T1]{fontenc}
 \IfFileExists{newtxtext.sty}%
   {\RequirePackage{newtxtext,newtxmath}}%
@@ -287,11 +1274,13 @@
   {\RequirePackage{times}}
 \RequirePackage[scaled=0.92]{helvet}
 \renewcommand{\ttdefault}{cmtt}
+%    \end{macrocode}
 %
-% We will need support for included graphics and colour. The structural elements 
-% are a medium turquoise, while the links are slightly darker to make them 
+% We will need support for included graphics and colour. The structural elements
+% are a medium turquoise, while the links are slightly darker to make them
 % easier to read on screen.
 %
+%    \begin{macrocode}
 \RequirePackage{graphicx}
 \IfFileExists{xcolor.sty}%
   {\RequirePackage{xcolor}}%
@@ -298,28 +1287,35 @@
   {\RequirePackage{color}}
 \definecolor[named]{struct}{rgb}{0,0.5,0.5}
 \definecolor[named]{links}{rgb}{0,0.4,0.4}
+%    \end{macrocode}
 %
 % We will calculate some lengths later.
 %
+%    \begin{macrocode}
 \RequirePackage{calc}
 
+%    \end{macrocode}
 %
 % Ragged right text is easier to read on screen, but fully justified text looks
-% better. The |\raggedyright| layout from Peter Wilson's \textsf{memoir} class 
+% better. The \cs{raggedyright} layout from Peter Wilson's \pkg{memoir} class
 % (2005/09/25 v1.618) is an excellent compromise. The code below replicates it.
 %
-% First we save the original definitions of |\\| and |\parindent| as 
-% |\OrigLineBreak| and |\RaggedParindent| respectively.
+% First we save the original definitions of \cs{\textbackslash} and
+% \cs{parindent} as \cs{OrigLineBreak} and \cs{RaggedParindent} respectively.
 %
+%    \begin{macrocode}
 \let\OrigLineBreak\\
 \newdimen\RaggedParindent
 \setlength{\RaggedParindent}{\parindent}
 
+%    \end{macrocode}
 %
-% The |\raggedyright| layout more or less lays text out as with full 
+% \begin{macro}{raggedyright}
+% The \cs{raggedyright} layout more or less lays text out as with full
 % justification, but then lets the shorter lines relax a bit from the right
 % margin. It is the default for DCC papers.
 %
+%    \begin{macrocode}
 \newcommand{\raggedyright}[1][2em]{%
   \let\\\@centercr\@rightskip \z@ \@plus #1\relax
   \rightskip\@rightskip
@@ -327,10 +1323,14 @@
   \parindent\RaggedParindent}
 \AtBeginDocument{\raggedyright}
 
+%    \end{macrocode}
+% \end{macro}
 %
-% The |\flushleftright| layout restores full justification, in case it is
+% \begin{macro}{flushleftright}
+% The \cs{flushleftright} layout restores full justification, in case it is
 % needed.
 %
+%    \begin{macrocode}
 \newcommand*{\flushleftright}{%
   \let\\\OrigLineBreak
   \leftskip\z at skip
@@ -338,62 +1338,92 @@
   \parfillskip\@flushglue
   \everypar{}}
 
+%    \end{macrocode}
+% \end{macro}
 %
 % Pdf\TeX\ 1.40.15 introduced the facility to include dummy interword spaces
 % to improve text extraction and reflow. We test for this facility and use it
 % if available.
 %
+%    \begin{macrocode}
 \RequirePackage{ifpdf}
-%LITERATE
-%<base>\ifpdf
-%<base>  \ifdef{\pdfinterwordspaceon}{\pdfinterwordspaceon}{}
-%<base>\fi
-%<<LITERATE
+\ifpdf
+  \ifdef{\pdfinterwordspaceon}{\pdfinterwordspaceon}{}
+\fi
 
+%    \end{macrocode}
 %
 % The classes have some special metadata requirements. We start with the author
 % information.
 %
-% The macro |\thecorrespondence| is used in the title page footer for the name, 
+% \begin{macro}{thecorrespondence}
+% \begin{macro}{correspondence}
+% The macro \cs{thecorrespondence} is used in the title page footer for the name,
 % postal address and email address of the corresponding author.
 %
+%    \begin{macrocode}
 \def\thecorrespondence{}
 \newcommand*{\correspondence}[1]{\def\thecorrespondence{#1}}
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
 %
-% The handling of authors here is inspired by Patrick W Daly's \textsf{authblk}, 
-% (2001/02/27 1.3), and defines the familiar user commands. Authors are 
+% The handling of authors here is inspired by Patrick W Daly's \pkg{authblk},
+% (2001/02/27 1.3), and defines the familiar user commands. Authors are
 % presented in blocks, one affiliation but perhaps several authors per block.
 %
+% \begin{macro}{Authfont}
+% \begin{macro}{Affilfont}
+% \begin{macro}{affilsep}
+% \begin{macro}{authblksep}
 % We make the presentation of the author information configurable (just in case)
 % with some hooks and lengths:
 % \begin{itemize}
-% \item |\Authfont| is the font used for author names;
-% \item |\Affilfont| is the font used for affiliations;
-% \item |\affilsep| is the line spacing between author names and affiliations;
-% \item |\authblksep| is the line spacing between author name/affiliation 
+% \item \cs{Authfont} is the font used for author names;
+% \item \cs{Affilfont} is the font used for affiliations;
+% \item \cs{affilsep} is the line spacing between author names and affiliations;
+% \item \cs{authblksep} is the line spacing between author name/affiliation
 %       blocks.
 % \end{itemize}
 %
+%    \begin{macrocode}
 \newcommand*{\Authfont}{\normalfont}
 \newcommand*{\Affilfont}{\normalfont\small}
 \newlength{\affilsep}\setlength{\affilsep}{0pt}
 \newlength{\authblksep}\setlength{\authblksep}{1.5\baselineskip}
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
-% The |\AuthorBlock| command will be used to collect all the author information.
+% \begin{macro}{AuthorBlock}
+% The \cs{AuthorBlock} command will be used to collect all the author information.
 %
+%    \begin{macrocode}
 \newcommand{\AuthorBlock}{}
+%    \end{macrocode}
+% \end{macro}
 %
-% The |\MainAuthor| command collects abbreviated author information for use in 
+% \begin{macro}{MainAuthor}
+% The \cs{MainAuthor} command collects abbreviated author information for use in
 % the headers.
 %
+%    \begin{macrocode}
 \newcommand{\MainAuthor}{}
+%    \end{macrocode}
+% \end{macro}
 %
-% The |\dccp at author| command, meanwhile, collects a full list of authors for the
+% \begin{macro}{dccp at author}
+% The \cs{dccp at author} command, meanwhile, collects a full list of authors for the
 % PDF metatdata.
-% 
+%
+%    \begin{macrocode}
 \newcommand{\dccp at author}{}
+%    \end{macrocode}
+% \end{macro}
 %
-% We define counters for 
+% We define counters for
 % \begin{itemize}
 % \item the total number of authors defined;
 % \item the number of authors in the current block;
@@ -400,26 +1430,34 @@
 % \item the number of blocks defined.
 % \end{itemize}
 %
+%    \begin{macrocode}
 \newcounter{authors}
 \newcounter{authorsinblock}
 \newcounter{block}
+%    \end{macrocode}
 %
 % The |block| counter will increase once in the preamble, and again when the
 % information is typeset, so we need to reset it at the beginning of the
 % document.
 %
+%    \begin{macrocode}
 \AtBeginDocument{\setcounter{block}{0}}
+%    \end{macrocode}
 %
+% \begin{macro}{author}
 % The new definition of the author command starts here.
 %
+%    \begin{macrocode}
 \renewcommand{\author}[1]{%
+%    \end{macrocode}
 %
-% If this is the first or second |\author| command, we add the name to our 
-% abbreviated list of authors. Otherwise, we replace the name of the second 
+% If this is the first or second \cs{author} command, we add the name to our
+% abbreviated list of authors. Otherwise, we replace the name of the second
 % and subsequent authors with `et al.' in that list.
-% 
-% At the same time, we use a simpler technique to populate |\dccp at author|.
 %
+% At the same time, we use a simpler technique to populate \cs{dccp at author}.
+%
+%    \begin{macrocode}
   \ifnum\theauthors=0
     \def\dccp at author{#1}%
     \def\MainAuthor{#1}%
@@ -435,15 +1473,17 @@
     \fi
   \fi
   \stepcounter{authors}%
+%    \end{macrocode}
 %
-% Each block has its author names collected in a macro like |\blocki at auth|,
-% and its affiliation collected in a macro like |\blocki at affil| (the `i' is a
+% Each block has its author names collected in a macro like \cs{blocki at auth},
+% and its affiliation collected in a macro like \cs{blocki at affil} (the `i' is a
 % serial number).
 %
-% If this is the first author in a block, we need to create the block and add it 
-% to |\AuthorBlock|; second and subsequent blocks are preceded by a |\quad| of 
-% space. 
+% If this is the first author in a block, we need to create the block and add it
+% to \cs{AuthorBlock}; second and subsequent blocks are preceded by a \cs{quad} of
+% space.
 %
+%    \begin{macrocode}
   \ifnum\theauthorsinblock=0%
     \stepcounter{block}%
     \expandafter\def\csname block\roman{block}@auth\endcsname{\Authfont#1}%
@@ -460,31 +1500,45 @@
       \rule{0pt}{2\baselineskip}%
       }
   \else
+%    \end{macrocode}
 %
-% Otherwise we just add the name to the right |\blocki at auth|-style macro.
+% Otherwise we just add the name to the right \cs{blocki at auth}-style macro.
 %
+%    \begin{macrocode}
     \csappto{block\roman{block}@auth}{, #1}%
   \fi
   \stepcounter{authorsinblock}%
 }
+%    \end{macrocode}
+% \end{macro}
 %
-% The |\affil| command adds an affiliation to the current block and closes it by
+% \begin{macro}{affil}
+% The \cs{affil} command adds an affiliation to the current block and closes it by
 % resetting the |authorsinblock| counter.
 %
+%    \begin{macrocode}
 \newcommand{\affil}[1]{%
   \expandafter\def\csname block\roman{block}@affil\endcsname{\Affilfont#1}%
   \setcounter{authorsinblock}{0}%
 }
 
+%    \end{macrocode}
+% \end{macro}
 %
-% The |\HeadTitle| collects the abbreviated title for use in the headers.  
+% \begin{macro}{HeadTitle}
+% The \cs{HeadTitle} collects the abbreviated title for use in the headers.
 %
+%    \begin{macrocode}
 \newcommand*{\HeadTitle}{}
+%    \end{macrocode}
+% \end{macro}
 %
-% We wrap the normal |\title| command with code to populate |\HeadTitle| with
-% the optional argument if provided, or the mandatory one otherwise. We also 
-% provide a persistent |\thetitle| macro, stripped of any |\thanks|.
+% \begin{macro}{title}
+% We wrap the normal \cs{title} command with code to populate \cs{HeadTitle} with
+% the optional argument if provided, or the mandatory one otherwise. We also
+% provide a persistent \cs{thetitle} macro, stripped of any \cs{thanks}.
 %
+%    \begin{macrocode}
 \let\ProperTitle=\title
 \renewcommand{\title}[2][\empty]{
   \ifx\empty #1%
@@ -499,10 +1553,14 @@
     \protected at xdef\thetitle{#2}
   \endgroup\endgroup
 }
+%    \end{macrocode}
+% \end{macro}
 %
+% \begin{macro}{thetitle}
 % To prevent \LaTeX\ throwing an error if no title is supplied, we supply a
 % fallback value and issue a warning instead.
 %
+%    \begin{macrocode}
 \def\thetitle{%
   Please supply a title
   \ClassWarning{dccpaper}{%
@@ -510,10 +1568,15 @@
   }
 }
 
+%    \end{macrocode}
+% \end{macro}
 %
-% We make |\thedate| persistent, borrowing the technique used in Peter Wilson's 
-% \textsf{memoir} class (2005/09/25 v1.618).
+% \begin{macro}{date}
+% \begin{macro}{thedate}
+% We make \cs{thedate} persistent, borrowing the technique used in Peter Wilson's
+% \pkg{memoir} class (2005/09/25 v1.618).
 %
+%    \begin{macrocode}
 \pretocmd{\date}{\begingroup\let\footnote\@gobble}{}{}%
 \apptocmd{\date}{%
   \begingroup
@@ -521,21 +1584,34 @@
     \protected at xdef\thedate{#1}
   \endgroup\endgroup%
 }{}{}
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
 %
-% We ensure |\thedate| is defined using a dummy date.
+% We ensure \cs{thedate} is defined using a dummy date.
 %
+%    \begin{macrocode}
 \date{20xx}
 
+%    \end{macrocode}
 %
+% \begin{macro}{thevolume}
+% \begin{macro}{volume}
+% \begin{macro}{theissue}
+% \begin{macro}{issue}
+% \begin{macro}{thesubno}
+% \begin{macro}{subno}
+% \begin{macro}{thedoi}
 % IJDC articles have extra bibliographic information:
 % \begin{itemize}
-% \item |\volume| sets the volume number, |\thevolume|;
-% \item |\issue| sets the issue number, |\theissue|;
-% \item |\subno| sets the submission number, |\thesubno|.
+% \item \cs{volume} sets the volume number, \cs{thevolume};
+% \item \cs{issue} sets the issue number, \cs{theissue};
+% \item \cs{subno} sets the submission number, \cs{thesubno}.
 % \end{itemize}
-% 
-% These numbers are used to build the DOI, |\thedoi|.
 %
+% These numbers are used to build the DOI, \cs{thedoi}.
+%
+%    \begin{macrocode}
 \newcommand*{\thevolume}{0}
 \newcommand*{\volume}[1]{\renewcommand*{\thevolume}{#1}}
 \newcommand*{\theissue}{0}
@@ -543,11 +1619,21 @@
 \newcommand*{\thesubno}{0}
 \newcommand*{\subno}[1]{\renewcommand*{\thesubno}{#1}}
 \newcommand*{\thedoi}{10.2218/ijdc.v\thevolume i\theissue .\thesubno}
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
-% They also display the page range. The following code was borrowed from Peter 
-% Wilson's \textsf{memoir} class (2005/09/25 v1.618). It defines a counter 
+% \begin{macro}{dol at stpage}
+% They also display the page range. The following code was borrowed from Peter
+% Wilson's \pkg{memoir} class (2005/09/25 v1.618). It defines a counter
 % |lastpage| which, on the second run, will contain the number of the last page.
 %
+%    \begin{macrocode}
 \newcounter{lastpage}
 \setcounter{lastpage}{0}
 \newcommand{\dol at stpage}{%
@@ -560,23 +1646,34 @@
 }
 \AtBeginDocument{\AtEndDocument{\clearpage\dol at stpage}}
 
+%    \end{macrocode}
+% \end{macro}
 %
-% DCC papers display some important dates. We collect these in |\dccp at dates|, 
+% \begin{macro}{dccp at dates}
+% DCC papers display some important dates. We collect these in \cs{dccp at dates},
 % initially setting the value to something sensible for papers in draft.
 %
+%    \begin{macrocode}
 \def\dccp at dates{\emph{Draft from} \today}
+%    \end{macrocode}
+% \end{macro}
 %
+% \begin{macro}{submitted}
+% \begin{macro}{received}
+% \begin{macro}{revised}
+% \begin{macro}{accepted}
 % Several types of date can be added:
 % \begin{itemize}
-% \item |\submitted| for when the authors submitted the paper (intended for
+% \item \cs{submitted} for when the authors submitted the paper (intended for
 %       IDCC papers).
-% \item |\received| for when the paper was received by the editorial board 
+% \item \cs{received} for when the paper was received by the editorial board
 %       (intended for IJDC papers).
-% \item |\revised| for when the most recent version was received by the 
+% \item \cs{revised} for when the most recent version was received by the
 %       editorial board.
-% \item |\accepted| for when the paper was accepted by the editorial board.
+% \item \cs{accepted} for when the paper was accepted by the editorial board.
 % \end{itemize}
 %
+%    \begin{macrocode}
 \newcommand*{\submitted}[1]{%
   \def\dccp at dates{\emph{Submitted} #1}}
 \newcommand*{\received}[1]{%
@@ -591,21 +1688,34 @@
     \space\space\space\textbar\space\space\space
     \emph{Accepted} #1}%
   }
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
-% IJDC papers need to say if they had a previous life as a conference paper. 
-% This statement goes in |\dccp at conf|, which is initially empty. The user 
-% command for setting this text is |\conference|.
+% \begin{macro}{dccp at conf}
+% \begin{macro}{conference}
+% IJDC papers need to say if they had a previous life as a conference paper.
+% This statement goes in \cs{dccp at conf}, which is initially empty. The user
+% command for setting this text is \cs{conference}.
 %
+%    \begin{macrocode}
 \let\dccp at conf=\empty
 \newcommand*{\conference}[1]{%
   \renewcommand*{\dccp at conf}{An earlier version of this paper was presented at #1.}%
 }
 
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
 %
-% The macro |\FixTextHeight| will be useful when switching from the first page
+% \begin{macro}{FixTextHeight}
+% The macro \cs{FixTextHeight} will be useful when switching from the first page
 % geometry to the regular geometry for the rest of the paper. It is based on
-% code from  Hideo Umeki's \textsf{geometry} package (2002/07/08 v3.2).
+% code from  Hideo Umeki's \pkg{geometry} package (2002/07/08 v3.2).
 %
+%    \begin{macrocode}
 \newcommand{\FixTextHeight}{%
   \setlength\@tempdima{\textheight}%
   \addtolength\@tempdima{-\topskip}%
@@ -625,42 +1735,58 @@
   \global\textheight\@tempdimb
 }
 
+%    \end{macrocode}
+% \end{macro}
 %
-% The width of the textblock (on all pages) is 150mm, which on A4 paper implies 
+% The width of the textblock (on all pages) is 150mm, which on A4 paper implies
 % margins of 30mm each. (Making both horizontal margins the same in a two-sided
-% context makes the paper more pleasant to read on screen). 
+% context makes the paper more pleasant to read on screen).
 %
+%    \begin{macrocode}
 \setlength{\textwidth}{150mm}
 \setlength{\oddsidemargin}{30mm - \hoffset - 1in}
 \setlength{\evensidemargin}{30mm - \hoffset - 1in}
+%    \end{macrocode}
 %
 % It is rare to have marginal notes, but in case we ever do, we centre them in
 % the margin.
 %
+%    \begin{macrocode}
 \setlength{\marginparwidth}{30mm - 2\marginparsep}
+%    \end{macrocode}
 %
-% We also want a distance of 15mm from the top of the page to the top of the 
-% header, and two blank lines between the bottom of the header and the top of 
+% We also want a distance of 15mm from the top of the page to the top of the
+% header, and two blank lines between the bottom of the header and the top of
 % the textblock.
 %
+%    \begin{macrocode}
 \setlength{\topmargin}{15mm - \voffset - 1in}
 \setlength{\headsep}{2\baselineskip}
 
+%    \end{macrocode}
 %
+% \begin{macro}{dccp at editorial}
 % IJDC editorials have slightly different headers and footers. This requires
-% testing for |\dccp at editorial| if it exists. In case it doesn't, we provide it.
+% testing for \cs{dccp at editorial} if it exists. In case it doesn't, we provide it.
 %
+%    \begin{macrocode}
 \providecommand{\dccp at editorial}{Editorial}
+%    \end{macrocode}
+% \end{macro}
 %
+% \begin{macro}{ps at title}
+% \begin{macro}{TitleHead}
+% \begin{macro}{TitleFoot}
 % The height of the footer can vary a lot. To keep it a fixed distance from the
-% bottom of the page rather than the top, we need to vary the |\textheight| 
-% accordingly. This means we need to measure the height of the footer. (The 
+% bottom of the page rather than the top, we need to vary the \cs{textheight}
+% accordingly. This means we need to measure the height of the footer. (The
 % header is more predictable but we may as well measure it while we are at it).
 %
-% Here we define the header and footer of the title page (i.e.\ the 
-% \textsf{title} page style), making sure we save them to auxiliary macros 
-% |\TitleHead| and |\TitleFoot| so we can measure them.
+% Here we define the header and footer of the title page (i.e.\ the
+% \val{title} page style), making sure we save them to auxiliary macros
+% \cs{TitleHead} and \cs{TitleFoot} so we can measure them.
 %
+%    \begin{macrocode}
 \def\ps at title{%
   \def\@oddhead{%
     \begin{minipage}{\textwidth}%
@@ -716,22 +1842,34 @@
   \let\@evenfoot=\@oddfoot
   \let\TitleFoot=\@oddfoot
 }
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
-% We set the normal page style to \textsf{title} here so that |\TitleHead| and
-% |\TitleFoot| are defined, but we will override it with the \textsf{dccpaper} 
+% We set the normal page style to \val{title} here so that \cs{TitleHead} and
+% \cs{TitleFoot} are defined, but we will override it with the \val{dccpaper}
 % page style later.
 %
+%    \begin{macrocode}
 \pagestyle{title}
+%    \end{macrocode}
 %
-% The first page should use the \textsf{title} page style, however.
+% The first page should use the \val{title} page style, however.
 %
+%    \begin{macrocode}
 \AtBeginDocument{\thispagestyle{title}}
 
+%    \end{macrocode}
 %
-% Here are the normal headers and footers (i.e.\ the \textsf{dccpaper} page 
-% style). We save them to |\NormalHead| and |\NormalFoot|, again so we can 
+% \begin{macro}{ps at dccpaper}
+% \begin{macro}{NormalHead}
+% \begin{macro}{NormalFoot}
+% Here are the normal headers and footers (i.e.\ the \val{dccpaper} page
+% style). We save them to \cs{NormalHead} and \cs{NormalFoot}, again so we can
 % measure them.
 %
+%    \begin{macrocode}
 \def\ps at dccpaper{%
   \def\@oddhead{%
     \begin{minipage}{\textwidth}\frenchspacing
@@ -772,13 +1910,22 @@
 }
 \pagestyle{dccpaper}
 
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
-% We need to wait until the author has supplied the necessary information before 
-% we can do our measuring and set the remainder of the geometry, so we do it at 
-% the end of the preamble. First we put our saved macros into boxes we can 
-% measure (i.e.\ |\dccp at firstpagehead|, |\dccp at firstpagefoot|, 
-% |\dccp at restpagehead|, |\dccp at restpagefoot|).
+% \begin{macro}{dccp at firstpagehead}
+% \begin{macro}{dccp at firstpagefoot}
+% \begin{macro}{dccp at restpagehead}
+% \begin{macro}{dccp at restpagefoot}
+% We need to wait until the author has supplied the necessary information before
+% we can do our measuring and set the remainder of the geometry, so we do it at
+% the end of the preamble. First we put our saved macros into boxes we can
+% measure (i.e.\ \cs{dccp at firstpagehead}, \cs{dccp at firstpagefoot},
+% \cs{dccp at restpagehead}, \cs{dccp at restpagefoot}).
 %
+%    \begin{macrocode}
 \AtEndPreamble{
   \newsavebox{\dccp at firstpagehead}
   \sbox\dccp at firstpagehead{\normalfont\TitleHead}
@@ -789,9 +1936,15 @@
   \sbox\dccp at restpagehead{\normalfont\NormalHead}
   \newsavebox{\dccp at restpagefoot}
   \sbox\dccp at restpagefoot{\normalfont\NormalFoot}
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
 % We can now set the geometry of the title page\dots
 %
+%    \begin{macrocode}
   \setlength{\headheight}{\ht\dccp at firstpagehead + \dp\dccp at firstpagehead}
   \setlength{\footskip}{%
     2\baselineskip + \ht\dccp at firstpagefoot + \dp\dccp at firstpagefoot
@@ -803,10 +1956,13 @@
     - \headsep
     - \footskip
   }
+%    \end{macrocode}
 %
-% {\dots}and provide a macro that will reset the geometry for the remaining 
+% \begin{macro}{dccp at resetgeometry}
+% {\dots}and provide a macro that will reset the geometry for the remaining
 % pages.
 %
+%    \begin{macrocode}
   \def\dccp at resetgeometry{%
     \setlength{\headheight}{\ht\dccp at restpagehead + \dp\dccp at restpagehead}
     \global\headheight=\headheight
@@ -826,12 +1982,16 @@
   }
 }
 
+%    \end{macrocode}
+% \end{macro}
 %
-% The |\maketitle| command is redefined to the correct formatting. At the end it
+% \begin{macro}{maketitle}
+% The \cs{maketitle} command is redefined to the correct formatting. At the end it
 % sets a hook that will reset the geometry when the first page is shipped out,
 % i.e.\ with effect from the second page. It is here rather than at the end of
 % the abstract in case the abstract itself spills over to the second page.
 %
+%    \begin{macrocode}
 \RequirePackage{atbegshi}
 \renewcommand{\maketitle}{%
   \null\nobreak\vspace*{-0.528\baselineskip}%
@@ -845,12 +2005,18 @@
   \AtBeginShipoutNext{\dccp at resetgeometry}%
 }
 
+%    \end{macrocode}
+% \end{macro}
 %
-% The \textsf{abstract} environment is redefined in terms of an environment 
-% \textsf{widequote}, which mimics the \textsf{quote} environment, but is a bit 
-% wider. We also provide a hook, |\afterabstract|, so that if some annotation 
+% \begin{environment}{widequote}
+% \begin{macro}{afterabstract}
+% \begin{environment}{abstract}
+% The \env{abstract} environment is redefined in terms of an environment
+% \env{widequote}, which mimics the \env{quote} environment, but is a bit
+% wider. We also provide a hook, \cs{afterabstract}, so that if some annotation
 % needs to be appended to the title page after the abstract, we can do that.
 %
+%    \begin{macrocode}
 \newenvironment{widequote}{%
   \list{}{%
     \setlength{\rightmargin}{2\parindent}%
@@ -871,13 +2037,18 @@
   \endwidequote\afterabstract\newpage
 }
 
+%    \end{macrocode}
+% \end{environment}
+% \end{macro}
+% \end{environment}
 %
-% We use the \textsf{titlesec} package to give headings the correct formatting.
+% We use the \pkg{titlesec} package to give headings the correct formatting.
 % The settings below try to space out headings so they occupy an integer number
-% of normal lines (an attempt at grid typesetting). They are a little 
-% complicated because we want it to work even if the heading appears at the top 
+% of normal lines (an attempt at grid typesetting). They are a little
+% complicated because we want it to work even if the heading appears at the top
 % of the page.
 %
+%    \begin{macrocode}
 \RequirePackage{titlesec}
 \titlespacing*{\section}{0pt}{0pt}{\baselineskip}
 \titlespacing*{\subsection}{0pt}{0pt}{0.6\baselineskip}
@@ -884,24 +2055,30 @@
 \titlespacing{\subsubsection}{\parindent}{\baselineskip}{0pt}
 \titlespacing{\paragraph}{\parindent}{\baselineskip}{0pt}
 \titlespacing{\subparagraph}{\parindent}{\baselineskip}{0pt}
+%    \end{macrocode}
 %
-% An unfortunate side effect of spacing headings like this is that if a 
-% |\subsection| immediately follows a |\section| it forms an unsightly gap. To
+% \begin{macro}{dccp at old@ep}
+% An unfortunate side effect of spacing headings like this is that if a
+% \cs{subsection} immediately follows a \cs{section} it forms an unsightly gap. To
 % remedy this, we count how many paragraphs there have been since the last
-% |\section|. Note that as we do not normally number the sections, an automatic
+% \cs{section}. Note that as we do not normally number the sections, an automatic
 % reset of the |sectionpars| counter within the |section| counter won't work.
 %
+%    \begin{macrocode}
 \newcounter{sectionpars}
 \let\dccp at old@ep\everypar
 \newtoks\everypar
-\dccp at old@ep{\the\everypar\stepcounter{sectionpars}} 
+\dccp at old@ep{\the\everypar\stepcounter{sectionpars}}
+%    \end{macrocode}
+% \end{macro}
 %
-% We need to manually reset |sectionpars| when |\section| is called. Also,
-% the normal font size is 12pt/14.5pt, while |\Large| is 17pt/22pt;
-% so the |\Large| line height = 1.5172 $\times$ normal line height. Nevertheless
-% it seems to work better if we let the heading eat 0.528|\baselineskip| into 
-% the 2|\baselineskip| of padding above it.
+% We need to manually reset |sectionpars| when \cs{section} is called. Also,
+% the normal font size is 12pt/14.5pt, while \cs{Large} is 17pt/22pt;
+% so the \cs{Large} line height = 1.5172 $\times$ normal line height. Nevertheless
+% it seems to work better if we let the heading eat 0.528\cs{baselineskip} into
+% the 2\cs{baselineskip} of padding above it.
 %
+%    \begin{macrocode}
 \titleformat{\section}
   [block]
   {%
@@ -914,12 +2091,14 @@
   {\thesection}
   {1em}
   {}
+%    \end{macrocode}
 %
-% The others use a |\normalsize| font so that makes life easier. The format
-% for |\subsection| command includes conditional spacing: if the |sectionpars| 
-% counter equals 2, this means the heading immediately follows a |\section|, so 
+% The others use a \cs{normalsize} font so that makes life easier. The format
+% for \cs{subsection} command includes conditional spacing: if the |sectionpars|
+% counter equals 2, this means the heading immediately follows a \cs{section}, so
 % less white space is needed.
 %
+%    \begin{macrocode}
 \titleformat{\subsection}
   {%
     \ifnum\thesectionpars>2%
@@ -951,22 +2130,28 @@
   {\thesubsubsection}
   {1em}
   {}
+%    \end{macrocode}
 %
 % DCC papers do not typically number their sections.
 %
+%    \begin{macrocode}
 \setcounter{secnumdepth}{0}
 
+%    \end{macrocode}
 %
-% To help with the display of tables we load the \textsf{array} and 
-% \textsf{booktabs} packages. As we don't like lines between rows in the table
+% To help with the display of tables we load the \pkg{array} and
+% \pkg{booktabs} packages. As we don't like lines between rows in the table
 % body, we stretch them out a bit so that white space does the job instead.
 %
+%    \begin{macrocode}
 \RequirePackage{array,booktabs}
 \renewcommand{\arraystretch}{1.25}
 
+%    \end{macrocode}
 %
-% We use the \textsf{caption} package to give captions the right format.
+% We use the \pkg{caption} package to give captions the right format.
 %
+%    \begin{macrocode}
 \RequirePackage
   [ format=hang
   , labelsep=period
@@ -976,25 +2161,35 @@
   , tableposition=top
   ]{caption}
 
+%    \end{macrocode}
 %
+% \begin{macro}{footnotelayout}
 % Footnotes should be set right up against the left margin. They should be
 % set hung and in the same half-ragged style as the main text. They should also,
 % for neatness, be at the bottom of the page regardless of how short it is. The
-% \textsf{footmisc} package helps here.
+% \pkg{footmisc} package helps here.
 %
+%    \begin{macrocode}
 \RequirePackage[hang,bottom]{footmisc}
 \settowidth{\footnotemargin}{\footnotesize\textsuperscript{99}\space}
 \renewcommand{\footnotelayout}{\raggedyright}
+%    \end{macrocode}
+% \end{macro}
 %
+% \begin{macro}{dccp at footnote}
+% \begin{macro}{dccp at next@token}
+% \begin{macro}{dccp at supercomma}
+% \begin{macro}{dccp at check@for at footnote}
 % Also, if multiple footnotes are set at once, the markers should be separated
-% with superscript commas. The \textsf{footmisc} package should help here but
-% its solution is clobbered by \textsf{hyperref}. So after a footnote is set,
+% with superscript commas. The \pkg{footmisc} package should help here but
+% its solution is clobbered by \pkg{hyperref}. So after a footnote is set,
 % we check to see if the next token is also a footnote, and if so, slip a comma
-% in before it.\footnote{This solution was provided at 
+% in before it.\footnote{This solution was provided at
 % \url{http://tex.stackexchange.com/q/40072}} This tweak needs to be done late,
-% |\AtBeginDocument|. Note that the \textsf{newtx} superior figures are a bit
+% \cs{AtBeginDocument}. Note that the \pkg{newtx} superior figures are a bit
 % lower than normal superscript text.
 %
+%    \begin{macrocode}
 \AtBeginDocument{
   \let\dccp at footnote\footnote
   \def\dccp at next@token{\relax}%
@@ -1015,28 +2210,38 @@
   }
 }
 
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
 % By default lists are quite loose. These settings help to tighten them.
 %
+%    \begin{macrocode}
 \topsep = \z@
 \partopsep = \z@
 \appto{\enumerate}{\itemsep = 0.5ex plus 0.25ex minus 0.25ex}
 \appto{\itemize}{\itemsep = 0.5ex plus 0.25ex minus 0.25ex}
 
+%    \end{macrocode}
 %
-% A DCC paper should either be using \textsf{biblatex} or \textsf{apacite} for
+% A DCC paper should either be using \pkg{biblatex} or \pkg{apacite} for
 % references.
 %
-% If \textsf{biblatex} is used, we need to ensure that the reference list
-% heading is a normal section rather than a starred one so it appears in the 
+% If \pkg{biblatex} is used, we need to ensure that the reference list
+% heading is a normal section rather than a starred one so it appears in the
 % PDF bookmarks.
 %
+%    \begin{macrocode}
 \AtBeginDocument{
   \@ifpackageloaded{biblatex}{%
     \defbibheading{bibliography}[\refname]{\section{#1}}%
+%    \end{macrocode}
 %
-% We also move the ‘doi:’ portion of a DOI inside the hyperlink. 
+% We also move the ‘doi:’ portion of a DOI inside the hyperlink.
 %
+%    \begin{macrocode}
     \DeclareFieldFormat{doi}{%
       \ifhyperref{%
         \href{http://dx.doi.org/#1}{\nolinkurl{doi:#1}}%
@@ -1045,16 +2250,21 @@
       }%
     }
   }{%
+%    \end{macrocode}
 %
-% If \textsf{apacite} is used, there are a few other adaptations we need to
+% If \pkg{apacite} is used, there are a few other adaptations we need to
 % make.
 %
+%    \begin{macrocode}
     \@ifpackageloaded{apacite}{%
+%    \end{macrocode}
 %
-% With \textsf{hyperref} loaded, \textsf{apacite} makes the whole of a citation
-% a link to the reference list item. We patch |\@ifauthorsunequalc at de| so only
+% \begin{macro}{@ifauthorsunequalc at de}
+% With \pkg{hyperref} loaded, \pkg{apacite} makes the whole of a citation
+% a link to the reference list item. We patch \cs{@ifauthorsunequalc at de} so only
 % the year portion gets linked.
 %
+%    \begin{macrocode}
       \def\@ifauthorsunequalc at de#1{%
         \if at F@cite
           \@F at citefalse
@@ -1081,17 +2291,20 @@
         \fi
         \let\BBA\relax
       }
+%    \end{macrocode}
+% \end{macro}
 %
 % The Spanish language support file defines a different version of
-% |\@ifauthorsunequalc at de|, which might override the patch we have just
-% introduced. So we employ the same test that \textsf{apacite} uses when
+% \cs{@ifauthorsunequalc at de}, which might override the patch we have just
+% introduced. So we employ the same test that \pkg{apacite} uses when
 % deciding whether to load that file; if successful, we patch the Spanish
-% version. Note that as \textsf{apacite} loads language support files
-% |\AtBeginDocument|, we have to do our thing after that, |\AfterEndPreamble|.
+% version. Note that as \pkg{apacite} loads language support files
+% \cs{AtBeginDocument}, we have to do our thing after that, \cs{AfterEndPreamble}.
 %
 % (Note that as we set the language to British English earlier, this should
 % never be needed, but we try to be resilient to tinkering!)
 %
+%    \begin{macrocode}
       \AfterEndPreamble{%
         \@ifundefined{iflanguage}{%
           \relax
@@ -1136,41 +2349,57 @@
             \fi
           \fi
         }%
+%    \end{macrocode}
 %
-% Another thing \textsf{apacite} does |\AtBeginDocument| is set the URL style
-% to monospaced. So we reset it back to normal roman type |\AfterEndPreamble|.
+% Another thing \pkg{apacite} does \cs{AtBeginDocument} is set the URL style
+% to monospaced. So we reset it back to normal roman type \cs{AfterEndPreamble}.
 %
+%    \begin{macrocode}
         \urlstyle{APACrm}
        }%
+%    \end{macrocode}
 %
-% We pre-empt \textsf{apacite}'s |\providecommand| of |\doi| with our own
+% \begin{macro}{doi}
+% \begin{macro}{doiprefix}
+% We pre-empt \pkg{apacite}'s \cs{providecommand} of \cs{doi} with our own
 % definition that includes the `doi' URI scheme label in the link, remembering
-% to remove the one inserted by |\doiprefix|.
+% to remove the one inserted by \cs{doiprefix}.
 %
+%    \begin{macrocode}
       \newcommand{\doi}[1]{\href{http://dx.doi.org/#1}{\nolinkurl{doi:#1}}}%
       \renewcommand{\doiprefix}{\unskip}%
     }{}%
   }%
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
 %
-% Both \textsf{biblatex} and \textsf{apacite} use |\bibitemsep| for the space
+% \begin{macro}{bibitemsep}
+% Both \pkg{biblatex} and \pkg{apacite} use \cs{bibitemsep} for the space
 % between bibliography items. Just in case they haven't been loaded, though, we
-% protect our setting of that length with an |\ifx| test.
+% protect our setting of that length with an \cs{ifx} test.
 %
+%    \begin{macrocode}
   \ifx\undefined\bibitemsep
   \else
     \setlength{\bibitemsep}{1em plus 1ex minus 1ex}%
   \fi
 }
+%    \end{macrocode}
+% \end{macro}
 %
-% As mentioned above, if \textsf{apacite} is used, we can use a package option
+% As mentioned above, if \pkg{apacite} is used, we can use a package option
 % to ensure that the reference list heading appears in the PDF bookmarks.
 %
+%    \begin{macrocode}
 \PassOptionsToPackage{numberedbib}{apacite}
 
+%    \end{macrocode}
 %
-% We, of course, use \textsf{hyperref} for enhancing the PDF with working links,
+% We, of course, use \pkg{hyperref} for enhancing the PDF with working links,
 % bookmarks, metadata, etc.
 %
+%    \begin{macrocode}
 \usepackage
   [ colorlinks=true
   , linkcolor=black
@@ -1181,19 +2410,27 @@
   , runcolor=black
   , urlcolor=links
   ]{hyperref}
+%    \end{macrocode}
 %
 % Links should be in roman type, not monospaced.
 %
+%    \begin{macrocode}
 \urlstyle{rm}
+%    \end{macrocode}
 %
-% We provide an |\email| command for displaying the email address of the 
+% \begin{macro}{email}
+% We provide an \cs{email} command for displaying the email address of the
 % corresponding author.
 %
+%    \begin{macrocode}
 \newcommand*{\email}[1]{\href{mailto:#1}{#1}}
+%    \end{macrocode}
+% \end{macro}
 %
 % Once the user has had a chance to provide the metadata, we can add it to the
 % PDF metadata.
 %
+%    \begin{macrocode}
 \AtBeginDocument{%
   \hypersetup
     { pdftitle={\thetitle}
@@ -1200,11 +2437,13 @@
     , pdfauthor={\dccp at author}
     , pdfsubject={\dccp at subject}
     }
+%    \end{macrocode}
 %
-% The APA has its own style for line breaks in URLs. The \textsf{apacite} 
-% package provides the code for this, but in case \textsf{biblatex} is used
+% The APA has its own style for line breaks in URLs. The \pkg{apacite}
+% package provides the code for this, but in case \pkg{biblatex} is used
 % instead, we repeat the settings (from 2013/07/21 v6.03) here.
 %
+%    \begin{macrocode}
   \@ifundefined{Url at force@Tilde}{\def\Url at force@Tilde{\relax}}{}%
   \def\url at apa@dot{\mathchar"2E }%
   \def\url at apa@comma{\mathchar"2C }%
@@ -1230,12 +2469,13 @@
     \\{\mathbin{\backslash}}\UrlTildeSpecial}
 }
 
+%    \end{macrocode}
 %
 % We now embed the Creative Commons licence information in the PDF using an XMP
-% packet. To do this, we employ the same technique as Scott Pakin's 
-% \textsf{hyperxmp} (2014/01/02 v2.4). In order to avoid avoid a bug whereby
-% Adobe Acrobat confuses the XMP author information and the regular author 
-% information, though, we \emph{only} embed the licence information. 
+% packet. To do this, we employ the same technique as Scott Pakin's
+% \pkg{hyperxmp} (2014/01/02 v2.4). In order to avoid avoid a bug whereby
+% Adobe Acrobat confuses the XMP author information and the regular author
+% information, though, we \emph{only} embed the licence information.
 %
 % We need to make sure that any characters to appear verbatim in the XMP packet
 % are treated as ordinary characters and not active ones. The likely active
@@ -1242,26 +2482,35 @@
 % characters are symbols and punctuation, so should be treated as `other'
 % (category 12).
 %
+%    \begin{macrocode}
 \begingroup
-\catcode`\"=12 
-\catcode`\&=12 
+\catcode`\"=12
+\catcode`\&=12
 \catcode`\#=12
 \catcode`\<=12
 \catcode`\>=12
 \catcode`\_=12
+%    \end{macrocode}
 %
 % We construct the XMP packet as the document begins.
 %
+%    \begin{macrocode}
 \AtBeginDocument{%
+%    \end{macrocode}
 %
-% For convenience we define |\sp| to be a level of indent, translating to three
+% \begin{macro}{sp}
+% For convenience we define \cs{sp} to be a level of indent, translating to three
 % spaces.
 %
+%    \begin{macrocode}
   \def\sp{\space\space\space}
+%    \end{macrocode}
+% \end{macro}
 %
-% The text of the XMP packet is recorded in |\cc at xmp@packet|. We use |^^J| to 
+% The text of the XMP packet is recorded in \cs{cc at xmp@packet}. We use |^^J| to
 % break lines.
 %
+%    \begin{macrocode}
   \long\gdef\cc at xmp@packet{%
 <?xpacket begin='' id=''?>^^J%
 <x:xmpmeta xmlns:x='adobe:ns:meta/'>^^J%
@@ -1288,11 +2537,14 @@
   }%
 }
 \endgroup
+%    \end{macrocode}
 %
 % Different workflows require the XMP packet to be embedded in different ways.
 %
+% \begin{macro}{ccxmp at embed@packet at pdftex}
 % Pdf\TeX\ can inject objects into PDFs natively.
 %
+%    \begin{macrocode}
 \newcommand*{\ccxmp at embed@packet at pdftex}{%
   \bgroup
     \pdfcompresslevel=0
@@ -1303,10 +2555,14 @@
     \pdfcatalog {/Metadata \the\pdflastobj\space 0 R}%
   \egroup
 }
+%    \end{macrocode}
+% \end{macro}
 %
-% The |\pdfmark| command defined by \textsf{hyperref} is respected by tools such
+% \begin{macro}{ccxmp at embed@packet at pdfmark}
+% The \cs{pdfmark} command defined by \pkg{hyperref} is respected by tools such
 % as Dvipdf, Dvips, Dvipsone, etc.
 %
+%    \begin{macrocode}
 \newcommand*{\ccxmp at embed@packet at pdfmark}{%
   \pdfmark{%
     pdfmark=/NamespacePush
@@ -1337,14 +2593,18 @@
     pdfmark=/NamespacePop
   }%
 }
+%    \end{macrocode}
+% \end{macro}
 %
-% Dvipdfm has its own |\special| command for inserting PDF objects, but
+% Dvipdfm has its own \cs{special} command for inserting PDF objects, but
 % it is a bit basic and requires advance knowledge of how long (in characters)
 % the object is.
 %
-% The |\ccxmp at count@spaces| macro counts the number of spaces in its parameter 
-% through a process of iteration, adding this figure to |\@tempcnta|.
+% \begin{macro}{ccxmp at count@spaces}
+% The \cs{ccxmp at count@spaces} macro counts the number of spaces in its parameter
+% through a process of iteration, adding this figure to \cs{@tempcnta}.
 %
+%    \begin{macrocode}
 \def\ccxmp at count@spaces#1 {%
   \def\ccxmp at one@token{#1}%
   \ifx\ccxmp at one@token\@empty
@@ -1354,10 +2614,14 @@
     \expandafter\ccxmp at count@spaces
   \fi
 }
+%    \end{macrocode}
+% \end{macro}
 %
-% The |\ccxmp at count@non at spaces| command counts the number of non-spaces in its 
-% argument through a process of iteration, adding this figure to |\@tempcnta|.
+% \begin{macro}{ccxmp at count@non at spaces}
+% The \cs{ccxmp at count@non at spaces} command counts the number of non-spaces in its
+% argument through a process of iteration, adding this figure to \cs{@tempcnta}.
 %
+%    \begin{macrocode}
 \newcommand*{\ccxmp at count@non at spaces}[1]{%
   \def\ccxmp at one@token{#1}%
   \ifx\ccxmp at one@token\@empty
@@ -1366,18 +2630,26 @@
     \expandafter\ccxmp at count@non at spaces
   \fi
 }
+%    \end{macrocode}
+% \end{macro}
 %
-% The |\ccxmp at string@len| command sets |\@tempcnta| to the number of characters 
+% \begin{macro}{ccxmp at string@len}
+% The \cs{ccxmp at string@len} command sets \cs{@tempcnta} to the number of characters
 % (spaces + non-spaces) in its argument.
 %
+%    \begin{macrocode}
 \newcommand*{\ccxmp at string@len}[1]{%
   \@tempcnta=0
   \expandafter\ccxmp at count@spaces#1 {} %
   \expandafter\ccxmp at count@non at spaces#1{}%
 }
+%    \end{macrocode}
+% \end{macro}
 %
+% \begin{macro}{ccxmp at embed@packet at dvipdfm}
 % So now, finally, is the command for embedding the packet using Dvipdfm.
 %
+%    \begin{macrocode}
 \newcommand*{\ccxmp at embed@packet at dvipdfm}{%
   \ccxmp at string@len{\cc at xmp@packet}%
   \special{pdf: object @ccxmp at packet
@@ -1394,10 +2666,14 @@
     >>
   }%
 }
+%    \end{macrocode}
+% \end{macro}
 %
-% \XeTeX\ creates PDFs with Xdvipdfmx, which supports a simpler |\special| for
+% \begin{macro}{ccxmp at embed@packet at xetex}
+% \XeTeX\ creates PDFs with Xdvipdfmx, which supports a simpler \cs{special} for
 % inserting objects that does not require us to count characters.
 %
+%    \begin{macrocode}
 \newcommand*{\ccxmp at embed@packet at xetex}{%
   \special{pdf:stream @ccxmp at packet (\cc at xmp@packet)
     <<
@@ -1411,11 +2687,14 @@
     >>
   }%
 }
+%    \end{macrocode}
+% \end{macro}
 %
-% We rely on \textsf{hyperref} to tell us how the PDF will be generated (after
+% We rely on \pkg{hyperref} to tell us how the PDF will be generated (after
 % all, it may not be done in the current pass) and use the respective technique
 % to embed the XMP packet.
 %
+%    \begin{macrocode}
 \AtBeginDocument{%
   \begingroup
   \def\ccxmp at driver{hpdftex}%
@@ -1438,899 +2717,8 @@
   \fi
   \endgroup
 }
-%LITERATE
+%    \end{macrocode}
+% \iffalse
 %</base>
-%<*biblatex|apacite>
- at book{apa6ed,
-  author = {{American Psychological Association}},
-  shortauthor = {{APA}},
-  publisher = {Author},
-%<biblatex>  date = {2010},
-%<apacite>  year = {2010},
-  title = {Publication manual of the {American} {Psychological} {Association}},
-  edition = {6},
-%<biblatex>  location = {Washington, DC}
-%<apacite>  address = {Washington, DC}
-}
-
- at book{borgman2007sda,
-  author = {Borgman, C. L.},
-%<biblatex>  date = {2007},
-%<apacite>  year = {2007},
-%<biblatex>  title = {Scholarship in the digital age},
-%<biblatex>  subtitle = {Information, infrastructure, and the {Internet}},
-%<apacite>  title = {Scholarship in the digital age: Information, infrastructure, and the {Internet}},
-%<biblatex>  location = {Cambridge, MA},
-%<apacite>  address = {Cambridge, MA},
-  publisher = {MIT Press}
-}
-
- at inbook{borgman.etal2006bdl,
-  author = {Borgman, C. L. and Wallis, J. C. and Enyedy, N.},
-%<biblatex>  date = {2006},
-%<apacite>  year = {2006},
-%<biblatex>  title = {Building digital libraries for scientific data},
-%<biblatex>  subtitle = {An exploratory study of data practices in habitat ecology},
-%<apacite>  title = {Building digital libraries for scientific data: An exploratory study of data practices in habitat ecology},
-  editor = {J. Gonzalo and C. Thanos and M. F. Verdejo and R. C. Carrasco},
-%<biblatex>  booktitle = {{Lecture} {Notes} in {Computer} {Science}},
-%<biblatex>  booksubtitle = {Vol. 4172. {Research} and {Advanced} {Technology} for {Digital} {Libraries}},
-%<apacite>  booktitle = {{Lecture} {Notes} in {Computer} {Science:} {Vol.} 4172. {Research} and {Advanced} {Technology} for {Digital} {Libraries}},
-  pages = {170--183},
-  doi = {10.1007/11863878_15}
-}
-
-%<biblatex>@report{ccsds2012oais,
-%<apacite>@techreport{ccsds2012oais,
-  author = {{Consultative Committee for Space Data Systems}},
-  shortauthor = {{CCSDS}},
-%<biblatex>  date = {2012},
-%<apacite>  year = {2012},
-  title = {Reference model for an {Open} {Archival} {Information} {System} {(OAIS)}},
-  type = {Magenta Book},
-  number = {CCSDS 650.0-M-2},
-  url = {http://public.ccsds.org/publications/archive/650x0m2.pdf}
-}
-
-%<biblatex>@report{dcc2005dcp,
-%<apacite>@techreport{dcc2005dcp,
-  author = {{Digital Curation Centre}},
-%<biblatex>  date = {2005},
-%<apacite>  year = {2005},
-%<biblatex>  title = {Digital curation and preservation},
-%<biblatex>  subtitle = {Defining the research agenda for the next decade},
-%<apacite>  title = {Digital curation and preservation: Defining the research agenda for the next decade},
-%<apacite>  type = {\bibnotype},
-%<biblatex>  note = {Report of the Warwick Workshop, November 7–8, 2005},
-%<apacite>  howpublished = {Report of the Warwick Workshop, November 7–8, 2005},
-  url = {http://www.dcc.ac.uk/webfm_send/346}
-}
-
- at article{esanu.etal2004sar,
-  author = {Esanu, J. and Davidson, J. and Ross, S. and Anderson, W.},
-%<biblatex>  date = {2004},
-%<apacite>  year = {2004},
-%<biblatex>  title = {Selection, appraisal, and retention of digital scientific data},
-%<biblatex>  subtitle = {Highlights of an {ERPANET\slash CODATA} workshop},
-%<apacite>  title = {Selection, appraisal, and retention of digital scientific data: Highlights of an {ERPANET\slash CODATA} workshop},
-%<biblatex>  journaltitle = {Data Science Journal},
-%<apacite>  journal = {Data Science Journal},
-  volume = {3},
-  pages = {227--232},
-  url = {http://www.jstage.jst.go.jp/browse/dsj}
-}
-
- at article{mazairac.beetzIPboq,
-  author = {Mazairac, W. and Beetz, J.},
-%<biblatex>  pubstate = {inpress},
-%<apacite>  year = {\BIP},
-%<biblatex>  title = {{BIMQL}},
-%<biblatex>  subtitle = {An Open Query Language for Building Information Models},
-%<apacite>  title = {{BIMQL}: An Open Query Language for Building Information Models},
-%<biblatex>  journaltitle = {Advanced Engineering Informatics},
-%<apacite>  journal = {Advanced Engineering Informatics},
-  doi = {10.1016/j.aei.2013.06.001}
-}
-
-%<biblatex>@report{nsf2003rse,
-%<apacite>@techreport{nsf2003rse,
-  author = {{National Science Foundation, Blue-Ribbon Advisory Panel on Cyberinfrastructure}},
-%<biblatex>  date = {2003},
-%<apacite>  year = {2003},
-  title = {Revolutionizing science and engineering through cyberinfrastructure},
-%<apacite>  type = {\bibnotype},
-  url = {http://www.nsf.gov/publications/pub_summ.jsp?ods_key=cise051203}
-}
-
- at article{rinaldo.etal2011rsc,
-  author = {Rinaldo, C. and Warnement, J. and Baione, T. and Kalfatovic, M. R. and Fraser, S.},
-%<biblatex>  date = {2011-07},
-%<apacite>  year = {2011},
-%<apacite>  month = jul,
-  title = {Retooling special collections digitisation in the age of mass scanning},
-%<biblatex>  journaltitle = {Ariadne},
-%<apacite>  journal = {Ariadne},
-  volume = {67},
-  url = {http://www.ariadne.ac.uk/issue67/rinaldo-et-al/}
-}
-
- at unpublished{santini2004sas,
-  author = {Santini, M.},
-%<biblatex>  date = {2004},
-%<apacite>  year = {2004},
-  title = {A shallow approach to syntactic feature extraction for genre classification},
-  howpublished = {Paper presented at the Seventh Annual Colloquium for the UK Special Interest Group for Computational Linguistics, Birmingham, UK},
-  url = {ftp://ftp.itri.bton.ac.uk/reports/ITRI-04-02.pdf}
-}
-
-%<biblatex>@report{santini2004saa,
-%<apacite>@techreport{santini2004saa,
-  author = {Santini, M.},
-%<biblatex>  date = {2004},
-%<apacite>  year = {2004},
-  title = {State-of-the-art on automatic genre identification},
-  type = {Technical Report},
-  number = {ITRI-04-03},
-  institution = {Information Technology Research Institute},
-  url = {ftp://ftp.itri.bton.ac.uk/reports/ITRI-04-03.pdf}
-}
-
- at article{smith.etal2003das,
-  author = {Smith, M. and Barton, M. and Bass, M. and Branschofsky, M. and McClellan, G. and Stuve, D. and Walker, J. H.},
-%<biblatex>  date = {2003},
-%<apacite>  year = {2003},
-%<biblatex>  title = {{DSpace}},
-%<biblatex>  subtitle = {An open source dynamic digital repository},
-%<apacite>  title = {{DSpace}: An open source dynamic digital repository},
-%<biblatex>  journaltitle = {D-Lib Magazine},
-%<apacite>  journal = {D-Lib Magazine},
-  volume = {9},
-  number = {1},
-  doi = {10.1045/january2003-smith}
-}
-
-%<biblatex>@data{waterton.etal2013ual,
-%<apacite>@misc{waterton.etal2013ual,
-  author = {Waterton, C. and Watson, N. and Norton, L.},
-  title = {Understanding and Acting in {Loweswater}, 2007–2010},
-%<biblatex>  entrysubtype = {Data set},
-%<apacite>  type = {Data set},
-%<biblatex>  date = {2013},
-%<apacite>  year = {2013},
-  publisher = {UK Data Archive},
-%<biblatex>  location = {Colchester, UK},
-%<apacite>  address = {Colchester, UK},
-  doi = {10.5255/UKDA-SN-7359-1}
-}
-
- at book{witten.frank2005dmp,
-  author = {Witten, I. H. and Frank, E.},
-%<biblatex>  date = {2005},
-%<apacite>  year = {2005},
-%<biblatex>  title = {Data mining},
-%<biblatex>  subtitle = {Practical machine learning tools and techniques},
-%<apacite>  title = {Data mining: Practical machine learning tools and techniques},
-  edition = {2},
-%<biblatex>  location = {San Francisco, CA},
-%<apacite>  address = {San Francisco, CA},
-  publisher = {Morgan Kaufmann}
-}
-%</biblatex|apacite>
-%<*internal>
-\fi
-\def\nameofplainTeX{plain}
-\ifx\fmtname\nameofplainTeX\else
-  \expandafter\begingroup
-\fi
-%</internal>
-%<*install>
-\input docstrip.tex
-\keepsilent
-\askforoverwritefalse
-\preamble
-
-----------------------------------------------------------------
-The dccpaper bundle: Classes for submissions to IJDC and IDCC
-Author:  Alex Ball
-E-mail:  a.ball at ukoln.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) 2015 Digital Curation Centre, University of Edinburgh
-<info at dcc.ac.uk>
-\endpostamble
-
-\usedir{tex/latex/dccpaper}
-\generate{
-  \file{ijdc-v9.cls}{\from{\jobname.dtx}{ijdc9}}
-  \file{idcc.cls}{\from{\jobname.dtx}{idcc}}
-  \file{dccpaper-base.sty}{\from{\jobname.dtx}{base}}
-}
-%</install>
-%<install>\endbatchfile
-%<*internal>
-\usedir{source/latex/dccpaper}
-\generate{
-  \file{\jobname.ins}{\from{\jobname.dtx}{install}}
-}
-\nopreamble\nopostamble
-\usedir{doc/latex/dccpaper}
-\generate{
-  \file{README.md}{\from{\jobname.dtx}{readme}}
-  \file{dccpaper-biblatex.bib}{\from{\jobname.dtx}{biblatex}}
-  \file{dccpaper-apacite.bib}{\from{\jobname.dtx}{apacite}}
-}
-\ifx\fmtname\nameofplainTeX
-  \expandafter\endbatchfile
-\else
-  \expandafter\endgroup
-\fi
-%</internal>
-%<*driver>
-\ProvidesFile{dccpaper.dtx}
-    [\Version\ Classes for submissions to IJDC and IDCC]
-\documentclass{ijdc-v9}
-
-\title[The \textsf{dccpaper} bundle]{The \protect\textsf{dccpaper} bundle: Classes for submissions to IJDC and IDCC}
-
-\author{Alex Ball}
-\affil{Digital Curation Centre}
-\correspondence{Alex Ball, UKOLN, University of Bath, Claverton Down, Bath BA2 7AY. Email: \email{a.ball at ukoln.ac.uk}}
-
-\received{4 July 2013}
-\revised{10 December 2013}
-\accepted{1 January 2014}
-
-\usepackage{dcolumn,csquotes}
-\usepackage[utf8]{inputenc}
-
-\usepackage[style=apa]{biblatex}
-\addbibresource{dccpaper-biblatex.bib}
-\DeclareLanguageMapping{british}{british-apa}
-
-%%\usepackage{apacite}
-%%\bibliographystyle{apacite}
-%%\let\textcite=\citeA
-%%\let\autocite=\cite
-
-\usepackage{enumitem}
-\usepackage{listings}
-\lstloadlanguages{[LaTeX]TeX}
-\lstset
-  { columns=fullflexible
-  , basicstyle=\ttfamily
-  , language={[LaTeX]TeX}
-  , texcsstyle=*\color{red!75!black}
-  , moretexcs=
-    { affil
-    , conference
-    , correspondence
-    , submitted
-    , received
-    , revised
-    , accepted
-    , subno
-    , volume
-    , issue
-    , maketitle
-    , sisetup
-    , toprule
-    , cmidrule
-    , midrule
-    , bottomrule
-    , DeclareLanguageMapping
-    , printbibliography
-    , addbibresource
-    , subsection
-    , subparagraph
-    }
-  , moredelim=**[s][\color{violet}]{[}{]}
-  , moredelim=**[s][\color{blue!75!black}]{\{}{\}}
-  , mathescape
-  , escapechar=~
-  }
-\newcommand{\subtext}[1]{\ensuremath\langle\textit{\rmfamily#1}\rangle}
-
-\usepackage[iso,british]{isodate}
-\usepackage{readprov}
-
-% For typesetting the implementation
-\usepackage{metalogo}
-\usepackage{makedoc}[2012/04/03]
-\usepackage{niceverb}[2012/08/27]
-\renewcommand{\SetOffInlineCmdBox}{\textcolor{red!75!black}}
-\renewcommand*{\TreatAsCode}[1]{%
-  \ifPackageCode
-  \else
-    \WriteResult{\string\begin{lstlisting}[firstnumber=last]}%
-    \PackageCodeTrue
-  \fi
-  \WriteResult{#1}%
-}
-\renewcommand*{\TreatAsComment}[1]{%
-  \ifPackageCode
-    \WriteResult{\string\end{lstlisting}}%
-    \WriteResult{}
-    \PackageCodeFalse
-    \EveryComment
-  \fi
-  \WriteResult{#1}%
-}
-\makeatletter
-\PushCatMakeLetter\_
-\renewcommand*{\make_doc_arg}[1]{%
-  \makedoc_maybe_autocorr
-  \ifnum\value{lstnumber}>\z@
-    \WriteResult{\string\begin{lstlisting}[firstnumber=1]}%
-    \PackageCodeTrue
-  \else
-    \PackageCodeFalse
-  \fi
-  \ProcessFileWith{#1}{%
-    \CountInputLines
-    \makedoc_line_body
-    \process_line_message
-  }%
-  \ifPackageCode
-    \WriteResult{\string\end{lstlisting}}
-    \PackageCodeFalse
-  \fi
-}
-\PopLetterCat\_
-\makeatother
-
-\begin{document}
-\noNiceVerb
-\maketitle
-
-\begin{abstract}
-This is the documentation for the \textsf{dccpaper} bundle, consisting of the following classes:
-\begin{itemize}
-\item\textsf{ijdc-v9}, which corresponds to the template used by the International Journal of Digital Curation, beginning with volume 9. 
-\item\textsf{idcc}, which corresponds to the template used for the International Digital Curation Conference, beginning with IDCC15.
-\end{itemize}
-
-The version to which it relates is \UseVersionOf{dccpaper-base.sty}, last revised\printdateTeX{\UseDateOf{dccpaper-base.sty}}.
-
-The code for this bundle is maintained at \url{https://github.com/DigitalCurationCentre/dccpaper}.
-
-Versions of the templates are also available that target Microsoft Word and LibreOffice\slash OpenOffice.org.
-
-Please note that the DOI attached to this document is fake and should not be used for identification purposes.
-\end{abstract}
-
-\section{Introduction}
-
-The \LaTeX\ class \textsf{ijdc-v9} produces camera-ready papers and articles suitable for inclusion in the International Journal of Digital Curation, with applicability from volume 9 onwards. The similar \textsf{idcc} class can be used for submissions to the International Digital Curation Conference, beginning with the 2015 conference. This document explains how to use these classes.
-
-\section{Dependencies}
-
-Certain aspects of the template design have been implemented using third-party packages, aside from those that are required parts of the \LaTeX\ system. Therefore you should ensure that you have these packages installed on your system before attempting to use the class.
-
-\begin{itemize}
-\item\textsf{atbegshi} is used for switching geometry between pages.
-\item Tables in your document must be formatted according to the design principles promoted and supported by the \textsf{booktabs} package.
-\item\textsf{caption} is used to format the figure and table captions.
-\item\textsf{etoolbox} is used behind the scenes for patching commands.
-\item\textsf{footmisc} is used to format the footnotes.
-\item\textsf{titlesec} is used to format the section headings.
-\end{itemize}
-
-In some cases the class prefers to use packages that are not part of the base installation (but are nevertheless commonly available in \TeX\ distributions), but will fall back to their base equivalents if necessary.
-
-\begin{itemize}
-\item
-\textsf{newtx} will be used if available in place of \textsf{times}.
-\item
-\textsf{xcolor} will be used if available in place of \textsf{color}.
-\end{itemize}
-
-For referencing, you are encouraged to use either \textsf{biblatex} using the styles provided by \textsf{biblatex-apa} (preferred), or \textsf{apacite}.
-
-\section{Loading the Classes}
-
-\subsection{International Journal of Digital Curation}
-
-The class is loaded in the usual way with 
-\lstinline|\documentclass[$\subtext{options}$]{ijdc-v9}|.
-The following options are available:
-
-\begin{description}[font=\color{violet}\ttfamily]
-\item[paper]
-Use this for peer-reviewed papers.
-\item[article]
-Use this for general (non-peer-reviewed) articles if you like, but you do not have to as the class defaults to this state.
-\item[editorial]
-Use this for an editorial.
-\end{description}
-
-\subsection{International Digital Curation Conference}
-
-The class is loaded in the usual way with
-\lstinline|\documentclass[$\subtext{options}$]{idcc}|.
-Two types of option are available. The first relates to the type of submission:
-\begin{description}[font=\color{violet}\ttfamily]
-\item[research]
-Use this for full research papers.
-\item[practice]
-Use this for extended abstracts of practice papers, and full practice papers. The class defaults to this state, making this option even more optional than normal.
-\item[data]
-Use this for data paper abstracts and full data papers.
-\item[poster]
-Use this for poster abstracts.
-\item[demo]
-Use this for demonstration proposals.
-\item[bof]
-Use this for Birds of a Feather session abstracts.
-\item[workshop]
-Use this for workshop proposals.
-\end{description}
-
-The second type of option relates to the conference to which the submission will be made:
-\begin{description}[font=\color{violet}\ttfamily]
-\item[15]
-Use this for the 2015 conference.
-\item[16]
-Use this for the 2016 conference.
-\item[17]
-Use this for the 2017 conference.
-\end{description}
-
-\section{Preamble Commands}
-
-The following commands should be given in the preamble to fill out the document metadata.
-
-The following command should be used in all submissions.
-
-\begin{description}
-\item[]
-\hskip-\labelsep
-\lstinline|\title[$\subtext{short version}$]{$\subtext{full version}$}|
-\hskip\labelsep
-The long version of the title is shown on the cover page of the submission, while the short version appears in the (even page) headers.
-\end{description}
-
-The following commands should be given in general articles and IDCC submissions. They should \emph{not} be given in peer-reviewed IJDC papers until after the peer review process is complete.
-
-\begin{description}
-\item[]
-\hskip-\labelsep
-\lstinline|\author{$\subtext{name}$}|
-\hskip\labelsep
-The name of one author. Repeat the command for each additional author.
-
-It is customary in IJDC and IDCC papers to group authors by institution. Within each institution, the authors are ordered by the level of contribution (or alphabetically where this is equal), and the institutional groups are ordered by the level of contribution of the first author in the group (or alphabetically by first author where this is equal). A different convention may be used if appropriate.
-
-\item[]
-\hskip-\labelsep
-\lstinline|\affil{$\subtext{name}$}|
-\hskip\labelsep
-The affiliation (institution, company) of the immediately preceding author(s). This command may be repeated as necessary.
-
-\item[]
-\hskip-\labelsep
-\lstinline|\correspondence{$\subtext{name, postal address.}$ Email: \email{$\subtext{email address}$}}|
-\hskip\labelsep
-Name, address and email address of the corresponding author. This information appears in the footer of the cover page.
-\end{description}
-
-If an IJDC submission is a reworked conference paper (that has not already been formally published), for reasons of transparency the name of the conference should be given.
-
-\begin{description}
-\item[]
-\hskip-\labelsep
-\lstinline|\conference{$\subtext{name of conference}$}|
-\hskip\labelsep
-The conference at which the earlier version of the paper was presented, e.g.\ ‘the 10th International Digital Curation Conference’.
-\end{description}
-
-For IDCC papers, authors are invited to record the date on which they made their submission.
-
-\begin{description}
-\item[]
-\hskip-\labelsep
-\lstinline|\submitted{$\subtext{date}$}|
-\hskip\labelsep
-The date on which the initial submission was made to the conference by the authors.
-\end{description}
-
-Some additional commands are used by the editorial team when preparing a submission for publication. Though authors would not normally need to use them, here they are for completeness.
-
-\begin{description}
-\item[]
-\hskip-\labelsep
-\lstinline|\received{$\subtext{date}$}|
-\hskip\labelsep
-The date on which the initial submission was received by the editorial team (IJDC papers only).
-
-\item[]
-\hskip-\labelsep
-\lstinline|\revised{$\subtext{date}$}|
-\hskip\labelsep
-The date on which the latest revision was received by the editorial team.
-
-\item[]
-\hskip-\labelsep
-\lstinline|\accepted{$\subtext{date}$}|
-\hskip\labelsep
-The date on which the submission was accepted for publication.
-
-\item[]
-\hskip-\labelsep
-\lstinline|\subno{$\subtext{number}$}|
-\hskip\labelsep
-The submission number allocated by the IJDC Open Journal System.
-
-\item[]
-\hskip-\labelsep
-\lstinline|\volume{$\subtext{number}$}|
-\hskip\labelsep
-The number of the IJDC volume in which the submission will be published.
-
-\item[]
-\hskip-\labelsep
-\lstinline|\issue{$\subtext{number}$}|
-\hskip\labelsep
-The number of the IJDC issue in which the submission will be published.
-
-\item[]
-\hskip-\labelsep
-\lstinline|\date{$\subtext{year}$}|
-\hskip\labelsep
-The year in which the submission will be published.
-\end{description}
-
-\section{Document Body}
-
-When it comes to writing the body of the submission, the template should allow you to use the usual \LaTeX\ markup without much adaptation. So, for example, you would start as in Figure~\ref{fig:start-paper}.
-
-\begin{figure}[ht]
-\begin{lstlisting}[frame=single]
-\begin{document}
-\maketitle
-
-\begin{abstract}
-Text of the abstract\dots
-\end{abstract}
-
-\section{Introduction}
-
-The text of the introduction starts here\dots
-\end{lstlisting}
-\caption{Sample code for the beginning of an IJDC submission or IDCC full paper.}
-\label{fig:start-paper}
-\end{figure}
-
-Please note that if submitting an abstract or proposal to the IDCC instead of a full paper, you should \emph{not} use the \texttt{abstract} environment. Instead, start with a section headed `Abstract' as in Figure~\ref{fig:start-abstract}. Further guidance on how to write such submissions is given on the conference website.
-
-\begin{figure}[ht]
-\begin{lstlisting}[frame=single]
-\begin{document}
-\maketitle
-
-\section{Abstract}
-
-The text of the abstract or proposal starts here\dots
-\end{lstlisting}
-\caption{Sample code for the beginning of an IDCC abstract or proposal.}
-\label{fig:start-abstract}
-\end{figure}
-
-IJDC and IDCC papers follow the formatting conventions specified by the \textcite{apa6ed}, with a few minor changes. There are some instances where this affects how you write your submission.
-
-\subsection{Headings}
-
-Five levels of heading are defined (\lstinline|\section| down to \lstinline|\subparagraph|) but most authors only need the first one or two levels. \lstinline|\section| and \lstinline|\subsection| headings should be written in title case, that is, with Each Significant Word Given an Initial Capital, while the remaining headers should be written in sentence case as if running text. Do not end your heading names with full stops\slash periods.
-
-\subsection{Quotations}
-
-Quotations should be put in a \texttt{quote} environment, wrapped in inverted commas, with the citation placed in parentheses at the end.
-
-\begin{quote}
-‘Cras porttitor dictum lacus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. In consectetuer, diam at volutpat elementum, libero lectus pulvinar sem.’ (Borgman, 2007)
-\end{quote}
-
-\subsection{Tables}
-
-\begin{itemize}
-\item
-Table text should be in the \lstinline|\small| font size.
-\item
-Tables should not use vertical lines to separate columns, and ideally should not use horizontal lines to separate rows in the body of the table; white space and text alignment should be sufficient. The top and bottom rules should be drawn with \lstinline|\toprule| and \lstinline|\bottomrule| respectively, with other rules drawn with \lstinline|\midrule| or \lstinline|\cmidrule|. See the documentation of the \textsf{booktabs} package for more information.
-\item
-Text in the body of tables should normally be left-aligned. Numeric data should be aligned at the decimal point among itself but centred with respect to the heading; the \texttt{D} column type from the \textsf{dcolumn} package and the \texttt{S} column type from the \textsf{siunitx} package are particularly useful for this.
-\item
-Where decked (subdivided) headings are used, there should be a border beneath the upper-level heading (column spanner) indicating to which of the lower-level headings it applies.
-\item
-Empty cells can either be left blank or represented by an em dash. A blank cell indicates non-applicability, while an em dash signifies that the data was not collected or has been omitted.
-\item
-Captions should end in a full stop\slash period.
-\end{itemize}
-
-Table~\ref{tab:issues} demonstrates these features. The code used to produce the table is shown in Figure~\ref{fig:table} (note that the \textsf{dcolumn} package was loaded in the preamble).
-
-\begin{table}[ht]
-\caption{Papers and articles published in the IJDC in 2008 and 2009.}
-\label{tab:issues}
-\centering\small
-\begin{tabular}{lD..{2.0}D..{2.0}D..{2.1}D..{2.1}}
-\toprule
- & \multicolumn{2}{c}{Frequency} & \multicolumn{2}{c}{Percentage} \\
-\cmidrule(lr){2-3}\cmidrule(l){4-5}
-Issue
- & \multicolumn{1}{c}{Peer-reviewed} & \multicolumn{1}{c}{General}
- & \multicolumn{1}{c}{Peer-reviewed} & \multicolumn{1}{c}{General} \\
-\midrule
-3(1) &  9 &  7 & 56.3 & 43.8 \\
-3(2) &  5 &  7 & 41.7 & 58.3 \\
-4(1) & 10 &  4 & 71.4 & 28.6 \\
-4(2) &  8 &  6 & 57.1 & 42.9 \\
-4(3) &  3 & 15 & 16.7 & 83.3 \\
-\bottomrule
-\end{tabular}
-\end{table}
-
-\begin{figure}[h]
-\begin{lstlisting}[frame=single]
-\begin{table}
-\caption{Papers and articles published in the IJDC in 2008 and 2009.}
-\label{tab:issues}
-\centering\small
-\begin{tabular}{lD..{2.0}D..{2.0}D..{2.1}D..{2.1}}
-\toprule
-& \multicolumn{2}{c}{Frequency} & \multicolumn{2}{c}{Percentage} \\
-\cmidrule(lr){2-3}\cmidrule(l){4-5}
-Issue
-& \multicolumn{1}{c}{Peer-reviewed} & \multicolumn{1}{c}{General}
-& \multicolumn{1}{c}{Peer-reviewed} & \multicolumn{1}{c}{General} \\
-\midrule
-3(1) &  9 &  7 & 56.3 & 43.8 \\
-3(2) &  5 &  7 & 41.7 & 58.3 \\
-4(1) & 10 &  4 & 71.4 & 28.6 \\
-4(2) &  8 &  6 & 57.1 & 42.9 \\
-4(3) &  3 & 15 & 16.7 & 83.3 \\
-\bottomrule
-\end{tabular}
-\end{table}
-\end{lstlisting}
-\caption{Code used to typeset Table~\ref{tab:issues}.}
-\label{fig:table}
-\end{figure}
-
-Note the different relative positions of the table and figure captions.
-
-\subsection{Reference List and Citations}
-
-To use \textsf{biblatex} for your reference list, add the following to your preamble:
-\begin{lstlisting}
-\usepackage[style=apa]{biblatex}
-\addbibresource{$\subtext{bib file}$.bib}
-\DeclareLanguageMapping{british}{british-apa}
-\end{lstlisting}
-and include \lstinline|\printbibliography| at the end of the document.
-
-To use \textsf{apacite} for your reference list, add the following to your preamble: 
-\begin{lstlisting}
-\usepackage{apacite}
-\bibliographystyle{apacite}
-\end{lstlisting}
-and include \lstinline|\bibliography{$\subtext{bib file}$}| at the end of the document.
-
-In-text citations are given parenthetically in author–date format. If author forms part of the narrative, as with \textcite{rinaldo.etal2011rsc}, only the date is added in parenthesis, otherwise both author and date are given \autocite{smith.etal2003das}. Where multiple citations are given at once, the order should be the same as in the reference list, i.e.\ alphabetically by author, with co-authored works coming after singly-authored works, then chronologically \autocite{borgman.etal2006bdl, dcc2005dcp, mazairac.beetzIPboq, santini2004sas, santini2004saa, smith.etal2003das, witten.frank2005dmp}. Please consult the documentation of the package you are using for how to achieve this.
-
-Please do not cite entire websites through the reference list mechanism. Instead, provide the title of the website (in English) and the URL in a footnote.\footnote{Digital Curation Centre: \url{http://www.dcc.ac.uk/}} If the title of the website is not clear from the visible pages, the contents of the HTML title element may be used. Other explanatory notes, whether about the body text or cited items, should also be given as footnotes rather than as endnotes or reference list annotations.\footnote{This avoids unnecessary page turning or scrolling.}
-
-Please provide digital object identifiers (DOIs) for referenced items where available.
-
-The data underlying the results presented in the submission should be placed in an appropriate custodial environment and cited \autocite{waterton.etal2013ual}, with the reference placed in the reference list. The \textsf{biblatex-apa} package provides a \texttt{data} entry type which should be used for datasets; the \texttt{entrysubtype} value should be \enquote{\texttt{Data set}} or similar. If using \textsf{apacite}, use the \texttt{misc} entry type with a \texttt{type} value of \enquote{\texttt{Data set}} or similar.
-
-\section{Acknowledgements}
-
-Any acknowledgements should be placed in a section immediately before the references.\nocite{*}
-
-\printbibliography
-%%\bibliography{dccpaper-apacite.bib}
-
-\newpage
-\section{Appendix A: Change History}
-
-\begin{description}
-\item[v1.5] 2016-08-05\\
-Added details of IDCC 2017. Slightly refactored code to convert dccpaper-base.tex into a package, dccpaper-base.sty.
-\item[v1.4.1] 2015-06-22\\
-Fixed bug preventing compilation in DVI mode.
-\item[v1.4] 2015-05-22\\
-Added details of IDCC 2016. Improved whitespace handling. Fixed bug triggered by \texttt{demo} option. Fixed missing use of \lstinline|\Authfont|. Added missing DOI tweak for \textsf{biblatex-apa}.
-\item[v1.3.2] 2015-01-21\\
-Removed dependence on user supplying a title. Fixed bug triggered by numbered sections.
-\item[v1.3.1] 2014-10-14\\
-Fixed typographical error relating to details of IDCC 2015.
-\item[v1.3] 2014-08-07\\
-Added documentation of \lstinline|\conference| command. Improved display of footnotes, footnote markers and \texttt{itemize}\slash \texttt{enumerate} lists. Fixed a bug in the handling of author information. Fixed and improved how the transition from first to subsequent page geometry is achieved. Updated the details of IDCC 2015.
-\item[v1.2] 2014-04-11\\
-Added implementation, installation and licence sections to the Appendix of the documentation. Moved the majority of the file postamble information to the README, and synchronized the latter with the GitHub version. Improved the adaptation of \textsf{apacite} referencing to the house style.
-\item[v1.1] 2014-03-06\\
-Refactored the source for distribution through CTAN, and to allow the addition of the \textsf{idcc} class.
-\item[v1.0] 2013-12-18\\
-First public release of \textsf{ijdc-v9} class.
-\end{description}
-
-\newpage
-\section{Appendix B: Implementation}
-
-\lstset
-  { aboveskip=1em plus 0.5em minus 0.2em
-  , belowskip=1em plus 0.5em minus 0.2em
-  , frame=single
-  , numbers=left
-  , numberstyle=\footnotesize\itshape
-  , basicstyle=\footnotesize\ttfamily
-  , breaklines=true
-  , escapechar=
-  }%
-\useNiceVerb
-
-\subsection{ijdc-v9.cls}
-
-\renewcommand*{\mdJobName}{ijdc-v9}
-\MakeInputJobDoc[cls]{0}{\ProcessInputWith{PScomment}}
-
-\subsection{idcc.cls}
-
-\renewcommand*{\mdJobName}{idcc}
-\MakeInputJobDoc[cls]{0}{\ProcessInputWith{PScomment}}
-
-\subsection{dccpaper-base.sty}
-
-\renewcommand*{\mdJobName}{dccpaper-base}
-\MakeInputJobDoc[sty]{0}{\ProcessInputWith{PScomment}}
-
-\noNiceVerb
-
-\newpage
-\section{Appendix C: Installation}
-
-\subsection{Managed way}
-
-The latest stable release of the dccpaper bundle has been packaged for
-\TeX\ Live and MiK\TeX. If you are running \TeX\ Live and have \texttt{tlmgr}
-installed, you can install the bundle simply by running
-\texttt{tlmgr install dccpaper}. If you are running MiK\TeX, you can
-install the bundle by running \texttt{mpm -{}-install=dccpaper}. Both
-\texttt{tlmgr} and \texttt{mpm} have GUI versions that you might find
-friendlier.
-
-\subsection{Automated way}
-
-A makefile is provided which you can use with the Make utility:
-
-\begin{itemize}
-\item
-  Running \texttt{make} generates the derived files
-
-  \begin{itemize}
-  \item
-    README.md
-  \item
-    dccpaper.pdf
-  \item
-    ijdc-v9.cls
-  \item
-    idcc.cls
-  \item
-    dccpaper-base.sty
-  \item
-    dccpaper-apacite.bib
-  \item
-    dccpaper-biblatex.bib
-  \end{itemize}
-\item
-  Running \texttt{make inst} installs the files in the user's \TeX\ tree.
-\item
-  Running \texttt{make install} installs the files in the local \TeX\
-  tree.
-\end{itemize}
-
-\subsection{Manual way}
-
-\begin{enumerate}
-\item
-  Compile dccpaper.dtx just as you would a normal \LaTeX\ file. Bear in
-  mind the documentation requires the \textsf{biblatex} package and the Biber
-  tool rather than regular Bib\TeX. As well as the usual PDF (or DVI) and
-  auxiliary files, several others are generated.
-\item
-  Move the files to your \TeX\ tree as follows:
-
-  \begin{itemize}
-  \item
-    \path{source/latex/dccpaper}: dccpaper.dtx, dccpaper.ins
-  \item
-    \path{tex/latex/dccpaper}: ijdc-v9.cls, idcc.cls,
-    dccpaper-base.sty, dccpaper-by.eps, dccpaper-by.pdf
-  \item
-    \path{doc/latex/dccpaper}: dccpaper.pdf, dccpaper-apacite.bib,
-    dccpaper-biblatex.bib, README.md
-  \end{itemize}
-\item
-  You may then have to update your installation's file name database
-  before \TeX\ and friends can see the files.
-\end{enumerate}
-
-\newpage
-\section{Appendix D: Sample Document}
-
-The following code demonstrates how to use \textsf{dccpaper} to write a IDCC conference paper.
-
-\begin{lstlisting}[frame=single]
-\documentclass[research,15]{idcc}
-
-\title{How to write a conference paper}
-\author{Alex Ball}
-\affil{Digital Curation Centre}
-\author{Fred Bloggs}
-\affil{University of Life}
-
-\submitted{1 October 2014}
-
-\usepackage[style=apa]{biblatex}
-\addbibresource{references.bib}
-\DeclareLanguageMapping{british}{british-apa}
-
-\begin{document}
-\maketitle
-
-\begin{abstract}
-Text of the abstract\dots
-\end{abstract}
-
-\section{Introduction}
-
-The text of the introduction starts here\dots
-
-\section{Conclusions}
-
-The text of the conclusions starts here\dots
-
-\section{Acknowledgements}
-
-Any acknowledgements should be placed here\dots
-
-\printbibliography
-\end{document}
-\end{lstlisting}
-
-\newpage
-\section{Appendix E: Licence}
-
-Copyright \textcopyright\ 2016 Digital Curation Centre, University of Edinburgh.
-
-This work consists of the image files dccpaper-by.eps and
-dccpaper-by.pdf, the documented LaTeX file dccpaper.dtx and a Makefile.
-
-The text files contained in this work may be distributed and/or modified
-under the conditions of the
-\href{http://www.latex-project.org/lppl.txt}{LaTeX Project Public
-License (LPPL)}, either version 1.3c of this license or (at your option)
-any later version.
-
-The image files distributed with this bundle derive from the file
-\href{http://mirrors.creativecommons.org/presskit/buttons/88x31/eps/by.eps}{by.eps}
-distributed by Creative Commons. The image is a trademark of Creative
-Commons and is subject to the
-\href{http://creativecommons.org/policies}{Creative Commons trademark
-policy}.
-
-This work is ``maintained'' (as per LPPL maintenance status) by
-\href{http://alexball.me.uk/}{Alex Ball}.
-
-The file dccpaper.pdf, generated by this work, is licensed as shown on page 1.
-\end{document}
-%</driver>
 % \fi
-%
-\endinput
+%\Finale

Modified: trunk/Master/texmf-dist/tex/latex/dccpaper/dccpaper-base.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/dccpaper/dccpaper-base.sty	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/tex/latex/dccpaper/dccpaper-base.sty	2017-10-20 20:03:58 UTC (rev 45563)
@@ -14,28 +14,12 @@
 %% See:     http://www.latex-project.org/lppl.txt
 %% ----------------------------------------------------------------
 %% 
-\def\Version{2016/08/05 v1.5}
-\ProvidesPackage{dccpaper-base.sty}
+\def\Version{2017/10/20 v1.6}
+\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+\ProvidesPackage{dccpaper-base}
     [\Version\space Common class code for IJDC and IDCC papers.]
-%
-% The \textsf{dccpaper} classes are deliberately very similar. This package
-% contains the common code.
-%
-% We use British English orthography.
-%
 \RequirePackage[british]{babel}
-%
-% The macro patching commands from \textsf{etoolbox} come in useful for handling
-% author and date information, and also for compatibility with \textsf{apacite}.
-%
 \RequirePackage{etoolbox}
-%
-% The \textsf{dccpaper} classes use Times as the main text font. We prefer
-% \textsf{newtx} as it provides support for mathematics, but the standard
-% \textsf{times} package will do. In case they are needed, we also provide
-% Helvetica for the sans serif font and Computer Modern Teletype for the
-% monospaced.
-%
 \RequirePackage[T1]{fontenc}
 \IfFileExists{newtxtext.sty}%
   {\RequirePackage{newtxtext,newtxmath}}%
@@ -42,11 +26,6 @@
   {\RequirePackage{times}}
 \RequirePackage[scaled=0.92]{helvet}
 \renewcommand{\ttdefault}{cmtt}
-%
-% We will need support for included graphics and colour. The structural elements
-% are a medium turquoise, while the links are slightly darker to make them
-% easier to read on screen.
-%
 \RequirePackage{graphicx}
 \IfFileExists{xcolor.sty}%
   {\RequirePackage{xcolor}}%
@@ -53,28 +32,12 @@
   {\RequirePackage{color}}
 \definecolor[named]{struct}{rgb}{0,0.5,0.5}
 \definecolor[named]{links}{rgb}{0,0.4,0.4}
-%
-% We will calculate some lengths later.
-%
 \RequirePackage{calc}
 
-%
-% Ragged right text is easier to read on screen, but fully justified text looks
-% better. The |\raggedyright| layout from Peter Wilson's \textsf{memoir} class
-% (2005/09/25 v1.618) is an excellent compromise. The code below replicates it.
-%
-% First we save the original definitions of |\\| and |\parindent| as
-% |\OrigLineBreak| and |\RaggedParindent| respectively.
-%
 \let\OrigLineBreak\\
 \newdimen\RaggedParindent
 \setlength{\RaggedParindent}{\parindent}
 
-%
-% The |\raggedyright| layout more or less lays text out as with full
-% justification, but then lets the shorter lines relax a bit from the right
-% margin. It is the default for DCC papers.
-%
 \newcommand{\raggedyright}[1][2em]{%
   \let\\\@centercr\@rightskip \z@ \@plus #1\relax
   \rightskip\@rightskip
@@ -82,10 +45,6 @@
   \parindent\RaggedParindent}
 \AtBeginDocument{\raggedyright}
 
-%
-% The |\flushleftright| layout restores full justification, in case it is
-% needed.
-%
 \newcommand*{\flushleftright}{%
   \let\\\OrigLineBreak
   \leftskip\z at skip
@@ -93,86 +52,25 @@
   \parfillskip\@flushglue
   \everypar{}}
 
-%
-% Pdf\TeX\ 1.40.15 introduced the facility to include dummy interword spaces
-% to improve text extraction and reflow. We test for this facility and use it
-% if available.
-%
 \RequirePackage{ifpdf}
 \ifpdf
   \ifdef{\pdfinterwordspaceon}{\pdfinterwordspaceon}{}
 \fi
 
-%
-% The classes have some special metadata requirements. We start with the author
-% information.
-%
-% The macro |\thecorrespondence| is used in the title page footer for the name,
-% postal address and email address of the corresponding author.
-%
 \def\thecorrespondence{}
 \newcommand*{\correspondence}[1]{\def\thecorrespondence{#1}}
-%
-% The handling of authors here is inspired by Patrick W Daly's \textsf{authblk},
-% (2001/02/27 1.3), and defines the familiar user commands. Authors are
-% presented in blocks, one affiliation but perhaps several authors per block.
-%
-% We make the presentation of the author information configurable (just in case)
-% with some hooks and lengths:
-% \begin{itemize}
-% \item |\Authfont| is the font used for author names;
-% \item |\Affilfont| is the font used for affiliations;
-% \item |\affilsep| is the line spacing between author names and affiliations;
-% \item |\authblksep| is the line spacing between author name/affiliation
-%       blocks.
-% \end{itemize}
-%
 \newcommand*{\Authfont}{\normalfont}
 \newcommand*{\Affilfont}{\normalfont\small}
 \newlength{\affilsep}\setlength{\affilsep}{0pt}
 \newlength{\authblksep}\setlength{\authblksep}{1.5\baselineskip}
-%
-% The |\AuthorBlock| command will be used to collect all the author information.
-%
 \newcommand{\AuthorBlock}{}
-%
-% The |\MainAuthor| command collects abbreviated author information for use in
-% the headers.
-%
 \newcommand{\MainAuthor}{}
-%
-% The |\dccp at author| command, meanwhile, collects a full list of authors for the
-% PDF metatdata.
-%
 \newcommand{\dccp at author}{}
-%
-% We define counters for
-% \begin{itemize}
-% \item the total number of authors defined;
-% \item the number of authors in the current block;
-% \item the number of blocks defined.
-% \end{itemize}
-%
 \newcounter{authors}
 \newcounter{authorsinblock}
 \newcounter{block}
-%
-% The |block| counter will increase once in the preamble, and again when the
-% information is typeset, so we need to reset it at the beginning of the
-% document.
-%
 \AtBeginDocument{\setcounter{block}{0}}
-%
-% The new definition of the author command starts here.
-%
 \renewcommand{\author}[1]{%
-%
-% If this is the first or second |\author| command, we add the name to our
-% abbreviated list of authors. Otherwise, we replace the name of the second
-% and subsequent authors with `et al.' in that list.
-%
-% At the same time, we use a simpler technique to populate |\dccp at author|.
-%
   \ifnum\theauthors=0
     \def\dccp at author{#1}%
     \def\MainAuthor{#1}%
@@ -188,15 +86,6 @@
     \fi
   \fi
   \stepcounter{authors}%
-%
-% Each block has its author names collected in a macro like |\blocki at auth|,
-% and its affiliation collected in a macro like |\blocki at affil| (the `i' is a
-% serial number).
-%
-% If this is the first author in a block, we need to create the block and add it
-% to |\AuthorBlock|; second and subsequent blocks are preceded by a |\quad| of
-% space.
-%
   \ifnum\theauthorsinblock=0%
     \stepcounter{block}%
     \expandafter\def\csname block\roman{block}@auth\endcsname{\Authfont#1}%
@@ -213,31 +102,16 @@
       \rule{0pt}{2\baselineskip}%
       }
   \else
-%
-% Otherwise we just add the name to the right |\blocki at auth|-style macro.
-%
     \csappto{block\roman{block}@auth}{, #1}%
   \fi
   \stepcounter{authorsinblock}%
 }
-%
-% The |\affil| command adds an affiliation to the current block and closes it by
-% resetting the |authorsinblock| counter.
-%
 \newcommand{\affil}[1]{%
   \expandafter\def\csname block\roman{block}@affil\endcsname{\Affilfont#1}%
   \setcounter{authorsinblock}{0}%
 }
 
-%
-% The |\HeadTitle| collects the abbreviated title for use in the headers.
-%
 \newcommand*{\HeadTitle}{}
-%
-% We wrap the normal |\title| command with code to populate |\HeadTitle| with
-% the optional argument if provided, or the mandatory one otherwise. We also
-% provide a persistent |\thetitle| macro, stripped of any |\thanks|.
-%
 \let\ProperTitle=\title
 \renewcommand{\title}[2][\empty]{
   \ifx\empty #1%
@@ -252,10 +126,6 @@
     \protected at xdef\thetitle{#2}
   \endgroup\endgroup
 }
-%
-% To prevent \LaTeX\ throwing an error if no title is supplied, we supply a
-% fallback value and issue a warning instead.
-%
 \def\thetitle{%
   Please supply a title
   \ClassWarning{dccpaper}{%
@@ -263,10 +133,6 @@
   }
 }
 
-%
-% We make |\thedate| persistent, borrowing the technique used in Peter Wilson's
-% \textsf{memoir} class (2005/09/25 v1.618).
-%
 \pretocmd{\date}{\begingroup\let\footnote\@gobble}{}{}%
 \apptocmd{\date}{%
   \begingroup
@@ -274,21 +140,8 @@
     \protected at xdef\thedate{#1}
   \endgroup\endgroup%
 }{}{}
-%
-% We ensure |\thedate| is defined using a dummy date.
-%
 \date{20xx}
 
-%
-% IJDC articles have extra bibliographic information:
-% \begin{itemize}
-% \item |\volume| sets the volume number, |\thevolume|;
-% \item |\issue| sets the issue number, |\theissue|;
-% \item |\subno| sets the submission number, |\thesubno|.
-% \end{itemize}
-%
-% These numbers are used to build the DOI, |\thedoi|.
-%
 \newcommand*{\thevolume}{0}
 \newcommand*{\volume}[1]{\renewcommand*{\thevolume}{#1}}
 \newcommand*{\theissue}{0}
@@ -296,11 +149,6 @@
 \newcommand*{\thesubno}{0}
 \newcommand*{\subno}[1]{\renewcommand*{\thesubno}{#1}}
 \newcommand*{\thedoi}{10.2218/ijdc.v\thevolume i\theissue .\thesubno}
-%
-% They also display the page range. The following code was borrowed from Peter
-% Wilson's \textsf{memoir} class (2005/09/25 v1.618). It defines a counter
-% |lastpage| which, on the second run, will contain the number of the last page.
-%
 \newcounter{lastpage}
 \setcounter{lastpage}{0}
 \newcommand{\dol at stpage}{%
@@ -313,23 +161,7 @@
 }
 \AtBeginDocument{\AtEndDocument{\clearpage\dol at stpage}}
 
-%
-% DCC papers display some important dates. We collect these in |\dccp at dates|,
-% initially setting the value to something sensible for papers in draft.
-%
 \def\dccp at dates{\emph{Draft from} \today}
-%
-% Several types of date can be added:
-% \begin{itemize}
-% \item |\submitted| for when the authors submitted the paper (intended for
-%       IDCC papers).
-% \item |\received| for when the paper was received by the editorial board
-%       (intended for IJDC papers).
-% \item |\revised| for when the most recent version was received by the
-%       editorial board.
-% \item |\accepted| for when the paper was accepted by the editorial board.
-% \end{itemize}
-%
 \newcommand*{\submitted}[1]{%
   \def\dccp at dates{\emph{Submitted} #1}}
 \newcommand*{\received}[1]{%
@@ -344,21 +176,11 @@
     \space\space\space\textbar\space\space\space
     \emph{Accepted} #1}%
   }
-%
-% IJDC papers need to say if they had a previous life as a conference paper.
-% This statement goes in |\dccp at conf|, which is initially empty. The user
-% command for setting this text is |\conference|.
-%
 \let\dccp at conf=\empty
 \newcommand*{\conference}[1]{%
   \renewcommand*{\dccp at conf}{An earlier version of this paper was presented at #1.}%
 }
 
-%
-% The macro |\FixTextHeight| will be useful when switching from the first page
-% geometry to the regular geometry for the rest of the paper. It is based on
-% code from  Hideo Umeki's \textsf{geometry} package (2002/07/08 v3.2).
-%
 \newcommand{\FixTextHeight}{%
   \setlength\@tempdima{\textheight}%
   \addtolength\@tempdima{-\topskip}%
@@ -378,42 +200,14 @@
   \global\textheight\@tempdimb
 }
 
-%
-% The width of the textblock (on all pages) is 150mm, which on A4 paper implies
-% margins of 30mm each. (Making both horizontal margins the same in a two-sided
-% context makes the paper more pleasant to read on screen).
-%
 \setlength{\textwidth}{150mm}
 \setlength{\oddsidemargin}{30mm - \hoffset - 1in}
 \setlength{\evensidemargin}{30mm - \hoffset - 1in}
-%
-% It is rare to have marginal notes, but in case we ever do, we centre them in
-% the margin.
-%
 \setlength{\marginparwidth}{30mm - 2\marginparsep}
-%
-% We also want a distance of 15mm from the top of the page to the top of the
-% header, and two blank lines between the bottom of the header and the top of
-% the textblock.
-%
 \setlength{\topmargin}{15mm - \voffset - 1in}
 \setlength{\headsep}{2\baselineskip}
 
-%
-% IJDC editorials have slightly different headers and footers. This requires
-% testing for |\dccp at editorial| if it exists. In case it doesn't, we provide it.
-%
 \providecommand{\dccp at editorial}{Editorial}
-%
-% The height of the footer can vary a lot. To keep it a fixed distance from the
-% bottom of the page rather than the top, we need to vary the |\textheight|
-% accordingly. This means we need to measure the height of the footer. (The
-% header is more predictable but we may as well measure it while we are at it).
-%
-% Here we define the header and footer of the title page (i.e.\ the
-% \textsf{title} page style), making sure we save them to auxiliary macros
-% |\TitleHead| and |\TitleFoot| so we can measure them.
-%
 \def\ps at title{%
   \def\@oddhead{%
     \begin{minipage}{\textwidth}%
@@ -469,22 +263,9 @@
   \let\@evenfoot=\@oddfoot
   \let\TitleFoot=\@oddfoot
 }
-%
-% We set the normal page style to \textsf{title} here so that |\TitleHead| and
-% |\TitleFoot| are defined, but we will override it with the \textsf{dccpaper}
-% page style later.
-%
 \pagestyle{title}
-%
-% The first page should use the \textsf{title} page style, however.
-%
 \AtBeginDocument{\thispagestyle{title}}
 
-%
-% Here are the normal headers and footers (i.e.\ the \textsf{dccpaper} page
-% style). We save them to |\NormalHead| and |\NormalFoot|, again so we can
-% measure them.
-%
 \def\ps at dccpaper{%
   \def\@oddhead{%
     \begin{minipage}{\textwidth}\frenchspacing
@@ -525,13 +306,6 @@
 }
 \pagestyle{dccpaper}
 
-%
-% We need to wait until the author has supplied the necessary information before
-% we can do our measuring and set the remainder of the geometry, so we do it at
-% the end of the preamble. First we put our saved macros into boxes we can
-% measure (i.e.\ |\dccp at firstpagehead|, |\dccp at firstpagefoot|,
-% |\dccp at restpagehead|, |\dccp at restpagefoot|).
-%
 \AtEndPreamble{
   \newsavebox{\dccp at firstpagehead}
   \sbox\dccp at firstpagehead{\normalfont\TitleHead}
@@ -542,9 +316,6 @@
   \sbox\dccp at restpagehead{\normalfont\NormalHead}
   \newsavebox{\dccp at restpagefoot}
   \sbox\dccp at restpagefoot{\normalfont\NormalFoot}
-%
-% We can now set the geometry of the title page\dots
-%
   \setlength{\headheight}{\ht\dccp at firstpagehead + \dp\dccp at firstpagehead}
   \setlength{\footskip}{%
     2\baselineskip + \ht\dccp at firstpagefoot + \dp\dccp at firstpagefoot
@@ -556,10 +327,6 @@
     - \headsep
     - \footskip
   }
-%
-% {\dots}and provide a macro that will reset the geometry for the remaining
-% pages.
-%
   \def\dccp at resetgeometry{%
     \setlength{\headheight}{\ht\dccp at restpagehead + \dp\dccp at restpagehead}
     \global\headheight=\headheight
@@ -579,12 +346,6 @@
   }
 }
 
-%
-% The |\maketitle| command is redefined to the correct formatting. At the end it
-% sets a hook that will reset the geometry when the first page is shipped out,
-% i.e.\ with effect from the second page. It is here rather than at the end of
-% the abstract in case the abstract itself spills over to the second page.
-%
 \RequirePackage{atbegshi}
 \renewcommand{\maketitle}{%
   \null\nobreak\vspace*{-0.528\baselineskip}%
@@ -598,12 +359,6 @@
   \AtBeginShipoutNext{\dccp at resetgeometry}%
 }
 
-%
-% The \textsf{abstract} environment is redefined in terms of an environment
-% \textsf{widequote}, which mimics the \textsf{quote} environment, but is a bit
-% wider. We also provide a hook, |\afterabstract|, so that if some annotation
-% needs to be appended to the title page after the abstract, we can do that.
-%
 \newenvironment{widequote}{%
   \list{}{%
     \setlength{\rightmargin}{2\parindent}%
@@ -624,13 +379,6 @@
   \endwidequote\afterabstract\newpage
 }
 
-%
-% We use the \textsf{titlesec} package to give headings the correct formatting.
-% The settings below try to space out headings so they occupy an integer number
-% of normal lines (an attempt at grid typesetting). They are a little
-% complicated because we want it to work even if the heading appears at the top
-% of the page.
-%
 \RequirePackage{titlesec}
 \titlespacing*{\section}{0pt}{0pt}{\baselineskip}
 \titlespacing*{\subsection}{0pt}{0pt}{0.6\baselineskip}
@@ -637,24 +385,10 @@
 \titlespacing{\subsubsection}{\parindent}{\baselineskip}{0pt}
 \titlespacing{\paragraph}{\parindent}{\baselineskip}{0pt}
 \titlespacing{\subparagraph}{\parindent}{\baselineskip}{0pt}
-%
-% An unfortunate side effect of spacing headings like this is that if a
-% |\subsection| immediately follows a |\section| it forms an unsightly gap. To
-% remedy this, we count how many paragraphs there have been since the last
-% |\section|. Note that as we do not normally number the sections, an automatic
-% reset of the |sectionpars| counter within the |section| counter won't work.
-%
 \newcounter{sectionpars}
 \let\dccp at old@ep\everypar
 \newtoks\everypar
 \dccp at old@ep{\the\everypar\stepcounter{sectionpars}}
-%
-% We need to manually reset |sectionpars| when |\section| is called. Also,
-% the normal font size is 12pt/14.5pt, while |\Large| is 17pt/22pt;
-% so the |\Large| line height = 1.5172 $\times$ normal line height. Nevertheless
-% it seems to work better if we let the heading eat 0.528|\baselineskip| into
-% the 2|\baselineskip| of padding above it.
-%
 \titleformat{\section}
   [block]
   {%
@@ -667,12 +401,6 @@
   {\thesection}
   {1em}
   {}
-%
-% The others use a |\normalsize| font so that makes life easier. The format
-% for |\subsection| command includes conditional spacing: if the |sectionpars|
-% counter equals 2, this means the heading immediately follows a |\section|, so
-% less white space is needed.
-%
 \titleformat{\subsection}
   {%
     \ifnum\thesectionpars>2%
@@ -704,22 +432,11 @@
   {\thesubsubsection}
   {1em}
   {}
-%
-% DCC papers do not typically number their sections.
-%
 \setcounter{secnumdepth}{0}
 
-%
-% To help with the display of tables we load the \textsf{array} and
-% \textsf{booktabs} packages. As we don't like lines between rows in the table
-% body, we stretch them out a bit so that white space does the job instead.
-%
 \RequirePackage{array,booktabs}
 \renewcommand{\arraystretch}{1.25}
 
-%
-% We use the \textsf{caption} package to give captions the right format.
-%
 \RequirePackage
   [ format=hang
   , labelsep=period
@@ -729,25 +446,9 @@
   , tableposition=top
   ]{caption}
 
-%
-% Footnotes should be set right up against the left margin. They should be
-% set hung and in the same half-ragged style as the main text. They should also,
-% for neatness, be at the bottom of the page regardless of how short it is. The
-% \textsf{footmisc} package helps here.
-%
 \RequirePackage[hang,bottom]{footmisc}
 \settowidth{\footnotemargin}{\footnotesize\textsuperscript{99}\space}
 \renewcommand{\footnotelayout}{\raggedyright}
-%
-% Also, if multiple footnotes are set at once, the markers should be separated
-% with superscript commas. The \textsf{footmisc} package should help here but
-% its solution is clobbered by \textsf{hyperref}. So after a footnote is set,
-% we check to see if the next token is also a footnote, and if so, slip a comma
-% in before it.\footnote{This solution was provided at
-% \url{http://tex.stackexchange.com/q/40072}} This tweak needs to be done late,
-% |\AtBeginDocument|. Note that the \textsf{newtx} superior figures are a bit
-% lower than normal superscript text.
-%
 \AtBeginDocument{
   \let\dccp at footnote\footnote
   \def\dccp at next@token{\relax}%
@@ -768,28 +469,14 @@
   }
 }
 
-%
-% By default lists are quite loose. These settings help to tighten them.
-%
 \topsep = \z@
 \partopsep = \z@
 \appto{\enumerate}{\itemsep = 0.5ex plus 0.25ex minus 0.25ex}
 \appto{\itemize}{\itemsep = 0.5ex plus 0.25ex minus 0.25ex}
 
-%
-% A DCC paper should either be using \textsf{biblatex} or \textsf{apacite} for
-% references.
-%
-% If \textsf{biblatex} is used, we need to ensure that the reference list
-% heading is a normal section rather than a starred one so it appears in the
-% PDF bookmarks.
-%
 \AtBeginDocument{
   \@ifpackageloaded{biblatex}{%
     \defbibheading{bibliography}[\refname]{\section{#1}}%
-%
-% We also move the ‘doi:’ portion of a DOI inside the hyperlink.
-%
     \DeclareFieldFormat{doi}{%
       \ifhyperref{%
         \href{http://dx.doi.org/#1}{\nolinkurl{doi:#1}}%
@@ -798,16 +485,7 @@
       }%
     }
   }{%
-%
-% If \textsf{apacite} is used, there are a few other adaptations we need to
-% make.
-%
     \@ifpackageloaded{apacite}{%
-%
-% With \textsf{hyperref} loaded, \textsf{apacite} makes the whole of a citation
-% a link to the reference list item. We patch |\@ifauthorsunequalc at de| so only
-% the year portion gets linked.
-%
       \def\@ifauthorsunequalc at de#1{%
         \if at F@cite
           \@F at citefalse
@@ -834,17 +512,6 @@
         \fi
         \let\BBA\relax
       }
-%
-% The Spanish language support file defines a different version of
-% |\@ifauthorsunequalc at de|, which might override the patch we have just
-% introduced. So we employ the same test that \textsf{apacite} uses when
-% deciding whether to load that file; if successful, we patch the Spanish
-% version. Note that as \textsf{apacite} loads language support files
-% |\AtBeginDocument|, we have to do our thing after that, |\AfterEndPreamble|.
-%
-% (Note that as we set the language to British English earlier, this should
-% never be needed, but we try to be resilient to tinkering!)
-%
       \AfterEndPreamble{%
         \@ifundefined{iflanguage}{%
           \relax
@@ -889,41 +556,19 @@
             \fi
           \fi
         }%
-%
-% Another thing \textsf{apacite} does |\AtBeginDocument| is set the URL style
-% to monospaced. So we reset it back to normal roman type |\AfterEndPreamble|.
-%
         \urlstyle{APACrm}
        }%
-%
-% We pre-empt \textsf{apacite}'s |\providecommand| of |\doi| with our own
-% definition that includes the `doi' URI scheme label in the link, remembering
-% to remove the one inserted by |\doiprefix|.
-%
       \newcommand{\doi}[1]{\href{http://dx.doi.org/#1}{\nolinkurl{doi:#1}}}%
       \renewcommand{\doiprefix}{\unskip}%
     }{}%
   }%
-%
-% Both \textsf{biblatex} and \textsf{apacite} use |\bibitemsep| for the space
-% between bibliography items. Just in case they haven't been loaded, though, we
-% protect our setting of that length with an |\ifx| test.
-%
   \ifx\undefined\bibitemsep
   \else
     \setlength{\bibitemsep}{1em plus 1ex minus 1ex}%
   \fi
 }
-%
-% As mentioned above, if \textsf{apacite} is used, we can use a package option
-% to ensure that the reference list heading appears in the PDF bookmarks.
-%
 \PassOptionsToPackage{numberedbib}{apacite}
 
-%
-% We, of course, use \textsf{hyperref} for enhancing the PDF with working links,
-% bookmarks, metadata, etc.
-%
 \usepackage
   [ colorlinks=true
   , linkcolor=black
@@ -934,19 +579,8 @@
   , runcolor=black
   , urlcolor=links
   ]{hyperref}
-%
-% Links should be in roman type, not monospaced.
-%
 \urlstyle{rm}
-%
-% We provide an |\email| command for displaying the email address of the
-% corresponding author.
-%
 \newcommand*{\email}[1]{\href{mailto:#1}{#1}}
-%
-% Once the user has had a chance to provide the metadata, we can add it to the
-% PDF metadata.
-%
 \AtBeginDocument{%
   \hypersetup
     { pdftitle={\thetitle}
@@ -953,11 +587,6 @@
     , pdfauthor={\dccp at author}
     , pdfsubject={\dccp at subject}
     }
-%
-% The APA has its own style for line breaks in URLs. The \textsf{apacite}
-% package provides the code for this, but in case \textsf{biblatex} is used
-% instead, we repeat the settings (from 2013/07/21 v6.03) here.
-%
   \@ifundefined{Url at force@Tilde}{\def\Url at force@Tilde{\relax}}{}%
   \def\url at apa@dot{\mathchar"2E }%
   \def\url at apa@comma{\mathchar"2C }%
@@ -983,18 +612,6 @@
     \\{\mathbin{\backslash}}\UrlTildeSpecial}
 }
 
-%
-% We now embed the Creative Commons licence information in the PDF using an XMP
-% packet. To do this, we employ the same technique as Scott Pakin's
-% \textsf{hyperxmp} (2014/01/02 v2.4). In order to avoid avoid a bug whereby
-% Adobe Acrobat confuses the XMP author information and the regular author
-% information, though, we \emph{only} embed the licence information.
-%
-% We need to make sure that any characters to appear verbatim in the XMP packet
-% are treated as ordinary characters and not active ones. The likely active
-% characters are symbols and punctuation, so should be treated as `other'
-% (category 12).
-%
 \begingroup
 \catcode`\"=12
 \catcode`\&=12
@@ -1002,19 +619,8 @@
 \catcode`\<=12
 \catcode`\>=12
 \catcode`\_=12
-%
-% We construct the XMP packet as the document begins.
-%
 \AtBeginDocument{%
-%
-% For convenience we define |\sp| to be a level of indent, translating to three
-% spaces.
-%
   \def\sp{\space\space\space}
-%
-% The text of the XMP packet is recorded in |\cc at xmp@packet|. We use |^^J| to
-% break lines.
-%
   \long\gdef\cc at xmp@packet{%
 <?xpacket begin='' id=''?>^^J%
 <x:xmpmeta xmlns:x='adobe:ns:meta/'>^^J%
@@ -1041,11 +647,6 @@
   }%
 }
 \endgroup
-%
-% Different workflows require the XMP packet to be embedded in different ways.
-%
-% Pdf\TeX\ can inject objects into PDFs natively.
-%
 \newcommand*{\ccxmp at embed@packet at pdftex}{%
   \bgroup
     \pdfcompresslevel=0
@@ -1056,10 +657,6 @@
     \pdfcatalog {/Metadata \the\pdflastobj\space 0 R}%
   \egroup
 }
-%
-% The |\pdfmark| command defined by \textsf{hyperref} is respected by tools such
-% as Dvipdf, Dvips, Dvipsone, etc.
-%
 \newcommand*{\ccxmp at embed@packet at pdfmark}{%
   \pdfmark{%
     pdfmark=/NamespacePush
@@ -1090,14 +687,6 @@
     pdfmark=/NamespacePop
   }%
 }
-%
-% Dvipdfm has its own |\special| command for inserting PDF objects, but
-% it is a bit basic and requires advance knowledge of how long (in characters)
-% the object is.
-%
-% The |\ccxmp at count@spaces| macro counts the number of spaces in its parameter
-% through a process of iteration, adding this figure to |\@tempcnta|.
-%
 \def\ccxmp at count@spaces#1 {%
   \def\ccxmp at one@token{#1}%
   \ifx\ccxmp at one@token\@empty
@@ -1107,10 +696,6 @@
     \expandafter\ccxmp at count@spaces
   \fi
 }
-%
-% The |\ccxmp at count@non at spaces| command counts the number of non-spaces in its
-% argument through a process of iteration, adding this figure to |\@tempcnta|.
-%
 \newcommand*{\ccxmp at count@non at spaces}[1]{%
   \def\ccxmp at one@token{#1}%
   \ifx\ccxmp at one@token\@empty
@@ -1119,18 +704,11 @@
     \expandafter\ccxmp at count@non at spaces
   \fi
 }
-%
-% The |\ccxmp at string@len| command sets |\@tempcnta| to the number of characters
-% (spaces + non-spaces) in its argument.
-%
 \newcommand*{\ccxmp at string@len}[1]{%
   \@tempcnta=0
   \expandafter\ccxmp at count@spaces#1 {} %
   \expandafter\ccxmp at count@non at spaces#1{}%
 }
-%
-% So now, finally, is the command for embedding the packet using Dvipdfm.
-%
 \newcommand*{\ccxmp at embed@packet at dvipdfm}{%
   \ccxmp at string@len{\cc at xmp@packet}%
   \special{pdf: object @ccxmp at packet
@@ -1147,10 +725,6 @@
     >>
   }%
 }
-%
-% \XeTeX\ creates PDFs with Xdvipdfmx, which supports a simpler |\special| for
-% inserting objects that does not require us to count characters.
-%
 \newcommand*{\ccxmp at embed@packet at xetex}{%
   \special{pdf:stream @ccxmp at packet (\cc at xmp@packet)
     <<
@@ -1164,11 +738,6 @@
     >>
   }%
 }
-%
-% We rely on \textsf{hyperref} to tell us how the PDF will be generated (after
-% all, it may not be done in the current pass) and use the respective technique
-% to embed the XMP packet.
-%
 \AtBeginDocument{%
   \begingroup
   \def\ccxmp at driver{hpdftex}%

Modified: trunk/Master/texmf-dist/tex/latex/dccpaper/idcc.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/dccpaper/idcc.cls	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/tex/latex/dccpaper/idcc.cls	2017-10-20 20:03:58 UTC (rev 45563)
@@ -14,34 +14,17 @@
 %% See:     http://www.latex-project.org/lppl.txt
 %% ----------------------------------------------------------------
 %% 
-\def\Version{2016/08/05 v1.5}
+\def\Version{2017/10/20 v1.6}
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
 \ProvidesClass{idcc}
     [\Version\space Class for submissions to the International Digital Curation Conference.]
-%
-% These definitions are used to fill out the headers and footers.
-% The ones for |\dccp at publ@short| and |\dccp at publ@msg| are a fallback,
-% defined here but ordinarily overridden using a package option.
-%
 \def\dccp at publ@long{International Digital Curation Conference}
 \def\dccp at publ@short{IDCC}
 \def\dccp at publ@msg{The \dccp at publ@long\ takes place on [TBC] in [TBC]. URL:
 \url{http://www.dcc.ac.uk/events/international-digital-curation-conference-idcc}}
-%
-% |\dccp at subject| will be used for the PDF subject. The value here is again a
-% fallback, ordinarily overridden using a package option.
-%
 \def\dccp at subject{\dccp at publ@long}
 
-%
-% Paper type is recorded in |\def\dccp at type|. The values can be
-% `Research Paper', `Practice Paper', `Poster', `Demonstration', or `Workshop'.
-%
 \def\dccp at type{Practice Paper}
-%
-% These options set the value of |\def\dccp at type| appropriately.
-% The |practice| option is redundant, but included for symmetry.
-%
 \DeclareOption{research}{\def\dccp at type{Research Paper}}
 \DeclareOption{data}{\def\dccp at type{Data Paper}}
 \DeclareOption{poster}{\def\dccp at type{Poster}}
@@ -49,11 +32,6 @@
 \DeclareOption{bof}{\def\dccp at type{Birds of a Feather}}
 \DeclareOption{workshop}{\def\dccp at type{Workshop}}
 \DeclareOption{practice}{\def\dccp at type{Practice Paper}}
-%
-% The details for each conference are slightly different, so they each have an
-% associated option for overriding the fallback definitions for
-% |\dccp at publ@short|, |\dccp at publ@msg| and |\dccp at subject|.
-%
 \DeclareOption{15}{%
   \def\dccp at publ@short{IDCC15}
   \def\dccp at publ@msg{The 10th \dccp at publ@long\ takes place on 9--12 February
@@ -72,14 +50,14 @@
   2017 in Edinburgh. URL: \url{http://www.dcc.ac.uk/events/idcc17/}}
   \def\dccp at subject{12th \dccp at publ@long, 2017}
 }
+\DeclareOption{18}{%
+  \def\dccp at publ@short{IDCC18}
+  \def\dccp at publ@msg{The 13th \dccp at publ@long\ takes place on 19--22 February
+    2018 in Barcelona. URL: \url{http://www.dcc.ac.uk/events/idcc18/}}
+  \def\dccp at subject{13th \dccp at publ@long, 2018}
+}
 \ProcessOptions\relax
 
-%
-% The |demo| option, if passed, would be passed on to the \textsf{graphics}
-% package wreaking havoc with each and every included image. To avoid this,
-% we clear it from the list of class options using
-% \href{http://tex.stackexchange.com/q/33245}{code from Enrico Gregorio}.
-%
 \def\@clearglobaloption#1{%
   \def\@tempa{#1}%
   \def\@tempb{\@gobble}%
@@ -97,14 +75,8 @@
 }
 \@clearglobaloption{demo}
 
-%
-% The class is based on the \textsf{article} class, and uses A4 paper.
-%
 \LoadClass[a4paper,12pt,twoside]{article}
 
-%
-% The rest of the formatting happens in the following file.
-%
 \usepackage{dccpaper-base}
 %% 
 %% Copyright (C) 2015 Digital Curation Centre, University of Edinburgh

Modified: trunk/Master/texmf-dist/tex/latex/dccpaper/ijdc-v9.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/dccpaper/ijdc-v9.cls	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/texmf-dist/tex/latex/dccpaper/ijdc-v9.cls	2017-10-20 20:03:58 UTC (rev 45563)
@@ -14,23 +14,12 @@
 %% See:     http://www.latex-project.org/lppl.txt
 %% ----------------------------------------------------------------
 %% 
-\def\Version{2016/08/05 v1.5}
+\def\Version{2017/10/20 v1.6}
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
 \ProvidesClass{ijdc-v9}
     [\Version\space Class for submissions to the International Journal of Digital Curation, volume 9 onwards.]
-%
-% The type of paper is recorded in |\dccp at type|. The possible values are
-% `General Article', `Peer-Reviewed Paper', or `Editorial'.
-% The latter is provided through the constant |\dccp at editorial| so we can
-% test for it later with ease.
-%
 \def\dccp at type{General Article}
 \def\dccp at editorial{Editorial}
-%
-% These three options set |\dccp at type| appropriately. The |editorial|
-% option additionally switches page numbers to roman numerals.
-% The |article| option is redundant, but included for symmetry.
-%
 \DeclareOption{editorial}{\let\dccp at type=\dccp at editorial%
   \AtBeginDocument{% Editorials use Roman numerals for page numbers
     \pagenumbering{roman}%
@@ -41,11 +30,6 @@
 \DeclareOption{article}{\def\dccp at type{General Article}}
 \ProcessOptions\relax
 
-%
-% These definitions are used to fill out the headers and footers. They include
-% some details that are defined in \textsf{dccpaper-base.sty} and provided by
-% the user: |\thedate|, |\thevolume|, |\theissue|, |\thelastpage|, |\thedoi|.
-%
 \def\dccp at publ@long{International Journal of Digital Curation}
 \def\dccp at publ@short{IJDC}
 \def\dccp at publ@msg{The \emph{\dccp at publ@long} is an international journal
@@ -62,20 +46,10 @@
   DOI: \thedoi
 }
 \def\dccp at normhead@doi{doi:\thedoi}
-%
-% |\dccp at subject| will be used for the PDF subject, and will specify the journal
-% and the issue.
-%
 \def\dccp at subject{\dccp at publ@long, \thedate, Vol.\ \thevolume, Iss.\ \theissue}
 
-%
-% The class is based on the \textsf{article} class, and uses A4 paper.
-%
 \LoadClass[a4paper,12pt,twoside]{article}
 
-%
-% The rest of the formatting happens in the following file.
-%
 \usepackage{dccpaper-base}
 %% 
 %% Copyright (C) 2015 Digital Curation Centre, University of Edinburgh

Modified: trunk/Master/tlpkg/libexec/ctan2tds
===================================================================
--- trunk/Master/tlpkg/libexec/ctan2tds	2017-10-20 20:02:21 UTC (rev 45562)
+++ trunk/Master/tlpkg/libexec/ctan2tds	2017-10-20 20:03:58 UTC (rev 45563)
@@ -2441,6 +2441,7 @@
  'ctable'       => 'latex',  # requires interaction
  'curve2e'      => 'tex',
  'dateiliste'   => 'latex',  # requires interaction
+ 'dccpaper'	=> 'tex',
  'denisbdoc' 	=> 'tex',
  'dotseqn'      => 'latex',  # requires interaction
  'delimtxt'     => 'latex -translate-file=empty.tcx',   # no 8-bit



More information about the tex-live-commits mailing list