summaryrefslogtreecommitdiff
path: root/macros/latex/contrib
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib')
-rw-r--r--macros/latex/contrib/changes/changes.drv5
-rw-r--r--macros/latex/contrib/changes/changes.dtx23
-rw-r--r--macros/latex/contrib/changes/changes.english.pdfbin368884 -> 368902 bytes
-rw-r--r--macros/latex/contrib/changes/changes.english.withcode.pdfbin451971 -> 453200 bytes
-rw-r--r--macros/latex/contrib/changes/changes.ins7
-rw-r--r--macros/latex/contrib/changes/changes.ngerman.pdfbin376287 -> 376311 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.bf.pdfbin85486 -> 85486 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.colored.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.dashuline.pdfbin82935 -> 82935 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.dotuline.pdfbin82553 -> 82553 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.em.pdfbin83749 -> 83749 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.it.pdfbin83749 -> 83749 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.sl.pdfbin84735 -> 84735 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.uline.pdfbin82746 -> 82746 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.uuline.pdfbin85371 -> 85371 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.uwave.pdfbin84759 -> 84759 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.addedmarkup.wrong.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkup.brackets.pdfbin74370 -> 74370 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkup.footnote.pdfbin99663 -> 99663 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkup.none.pdfbin73913 -> 73913 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkup.subscript.pdfbin82294 -> 82294 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkup.superscript.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkup.wrong.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkupposition.left.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkupposition.right.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkupposition.wrong.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkuptext.id.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkuptext.name.pdfbin83846 -> 83846 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.authormarkuptext.wrong.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.commandnameprefix.always.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.commandnameprefix.ifneeded.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.commandnameprefix.none.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.commandnameprefix.wrong.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.commentmarkup.footnote.pdfbin110514 -> 110514 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.commentmarkup.margin.pdfbin78953 -> 78953 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.commentmarkup.todo.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.commentmarkup.uwave.pdfbin81965 -> 81965 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.defaultcolor.pdfbin82299 -> 82299 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.bf.pdfbin84982 -> 84982 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.colored.pdfbin81125 -> 81125 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.dashuline.pdfbin82590 -> 82590 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.dotuline.pdfbin81687 -> 81687 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.em.pdfbin82891 -> 82891 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.it.pdfbin82891 -> 82891 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.sl.pdfbin85110 -> 85110 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.sout.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uline.pdfbin82291 -> 82291 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uuline.pdfbin88402 -> 88402 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uwave.pdfbin83877 -> 83877 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.wrong.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.deletedmarkup.xout.pdfbin81521 -> 81521 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.draft.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.final.pdfbin68141 -> 68141 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.highlightmarkup.background.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.highlightmarkup.uuline.pdfbin82970 -> 82970 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.highlightmarkup.uwave.pdfbin84357 -> 84357 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.listofchanges.all.pdfbin88820 -> 88820 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.listofchanges.compactsummary.pdfbin86749 -> 86749 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.listofchanges.list.pdfbin84993 -> 84993 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.listofchanges.show.pdfbin89121 -> 89121 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.listofchanges.summary.pdfbin97975 -> 97975 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.listofchanges.title.pdfbin88388 -> 88388 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.listofchanges.wrong.pdfbin84993 -> 84993 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.markup.bfit.pdfbin86058 -> 86058 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.markup.default.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.markup.nocolor.pdfbin84681 -> 84681 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.markup.underlined.pdfbin84812 -> 84812 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.markup.wrong.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.packageoptions.todonotes.pdfbin104166 -> 104166 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.packageoptions.truncate.pdfbin83517 -> 83517 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.packageoptions.ulem.pdfbin75270 -> 75270 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.packageoptions.xcolor.pdfbin84182 -> 84182 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.screenshot.pdfbin143191 -> 143191 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.setaddedmarkup.pdfbin94860 -> 94860 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.setauthormarkup.pdfbin85414 -> 85414 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.setauthormarkupposition.pdfbin93585 -> 93585 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.setauthormarkuptext.pdfbin94839 -> 94839 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.setcommentmarkup.pdfbin94058 -> 94058 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.setdeletedmarkup.pdfbin94091 -> 94091 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.sethighlightmarkup.pdfbin93929 -> 93929 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.setsocextension.pdfbin82295 -> 82295 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.setsummarytowidth.pdfbin98926 -> 98926 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.setsummarywidth.pdfbin97786 -> 97786 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.settruncatewidth.pdfbin96371 -> 96371 bytes
-rw-r--r--macros/latex/contrib/changes/examples/changes.example.simple.pdfbin92919 -> 92919 bytes
-rw-r--r--macros/latex/contrib/changes/userdoc/changes.de.tex4
-rw-r--r--macros/latex/contrib/changes/userdoc/changes.en.tex4
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx30
-rw-r--r--macros/latex/contrib/easybook/easybook.ins48
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin480303 -> 305675 bytes
-rw-r--r--macros/latex/contrib/msu-thesis/README.md (renamed from macros/latex/contrib/msu-thesis/README)38
-rw-r--r--macros/latex/contrib/msu-thesis/msu-thesis.cls87
-rw-r--r--macros/latex/contrib/msu-thesis/msu-thesis.pdfbin226815 -> 222407 bytes
-rw-r--r--macros/latex/contrib/msu-thesis/msu-thesis.tex24
-rw-r--r--macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.tex6
-rw-r--r--macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.pdfbin135882 -> 199924 bytes
-rw-r--r--macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.tex6
-rw-r--r--macros/latex/contrib/msu-thesis/samples/unified.bst1550
98 files changed, 178 insertions, 1654 deletions
diff --git a/macros/latex/contrib/changes/changes.drv b/macros/latex/contrib/changes/changes.drv
index 213bf8ba41..cfb813e288 100644
--- a/macros/latex/contrib/changes/changes.drv
+++ b/macros/latex/contrib/changes/changes.drv
@@ -1,5 +1,6 @@
%%%
% driver file of changes package
+\newcommand{\docversion}{4.0.3}
\documentclass[titlepage, parskip=half, toc=flat, cleardoublepage=empty, captions=nooneline, origlongtable, english]{scrartcl}
@@ -259,11 +260,11 @@
% document title
\ifENGLISH
\title{The \docpackage{changes}-package}
- \subtitle{Manual change markup --- version 4.0.2}
+ \subtitle{Manual change markup --- version~\docversion}
\fi
\ifGERMAN
\title{Das \docpackage{changes}-Paket}
- \subtitle{Manuelle Änderungsmarkierung -- Version 4.0.2}
+ \subtitle{Manuelle Änderungsmarkierung -- Version~\docversion}
\fi
\author{Ekkart Kleinod}
diff --git a/macros/latex/contrib/changes/changes.dtx b/macros/latex/contrib/changes/changes.dtx
index 5e29a4c990..cf459852f9 100644
--- a/macros/latex/contrib/changes/changes.dtx
+++ b/macros/latex/contrib/changes/changes.dtx
@@ -1,4 +1,4 @@
-% \CheckSum{1262}
+% \CheckSum{1263}
%
% \iffalse meta-comment
%
@@ -65,6 +65,7 @@
% \changes{v4.0.0}{2021/01/28}{new: convenience macros, setlocextension, option commandnameprefix, defaultcolor; removed: xifthen, remark}
% \changes{v4.0.1}{2021/02/14}{bugfix: Command do undefined}
% \changes{v4.0.2}{2021/04/05}{bugfix: documentation with ifthenelse references}
+% \changes{v4.0.3}{2021/05/09}{bugfix: compile error with cite command in change markup with final option}
% \GetFileInfo{changes.dtx}
% \RecordChanges
%
@@ -104,9 +105,8 @@
% Type some information to the console.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{changes}
-[2021/04/05 v4.0.2 changes package]
-\typeout{*** changes package 2021/04/05 v4.0.2 ***}
+\ProvidesPackage{changes}[2021/05/09 v4.0.3 changes package]
+\typeout{*** changes package 2021/05/09 v4.0.3 ***}
% \end{macrocode}
%
% Package \docpackage{xkeyval} provides options with key-value-pairs.
@@ -573,12 +573,16 @@
%
% Corresponds to the if macros of \docpackage{etoolbox}, so it can be used in it's boolean tests.
% Mainly the last two parameters are the results of \emph{true} and \emph{false} computation.
+%
+% I cannot add the test with \doccommand{IfStrEq} to \doccommand{IfIsEmpty} because it breaks e.g. with a \doccommand{cite} command in the final option, see issue \#102.
+% This test does not work (yet) with \doccommand{csuse} as parameter, see \doccommand{Changes@output@author} for the problem.
% \begin{macrocode}
\newrobustcmd{\IfIsEmpty}[3]{%
\ifboolexpr{%
test {\ifblank{#1}} or%
- test {\IfStrEq{#1}{}} or%
- test {\IfStrEq{#1}{\@empty}}%
+ test {\ifstrempty{#1}} or%
+ test {\ifdefstring{#1}{}} or%
+ test {\ifdefstring{#1}{\@empty}}%
}%
{#2}%
{#3}%
@@ -1131,7 +1135,12 @@
{}%
\IfStrEq{\Changes@optionauthormarkuptext}{name}%
{%
- \IfIsEmpty{\csuse{Changes@AuthorName#1}}%
+ % \end{macrocode}
+ %
+ % I cannot use \doccommand{IfIsEmpty} here, because it does not work in this case.
+ % I cannot add the test with \doccommand{IfStrEq} to \doccommand{IfIsEmpty} because it breaks e.g. with a \doccommand{cite} command in the final option.
+ % \begin{macrocode}
+ \IfStrEq{\csuse{Changes@AuthorName#1}}{}%
{#1}%
{\csuse{Changes@AuthorName#1}}%
}%
diff --git a/macros/latex/contrib/changes/changes.english.pdf b/macros/latex/contrib/changes/changes.english.pdf
index fc27c4b72b..4b4e0b695b 100644
--- a/macros/latex/contrib/changes/changes.english.pdf
+++ b/macros/latex/contrib/changes/changes.english.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/changes.english.withcode.pdf b/macros/latex/contrib/changes/changes.english.withcode.pdf
index 8380fb3ef7..b5f0ef869a 100644
--- a/macros/latex/contrib/changes/changes.english.withcode.pdf
+++ b/macros/latex/contrib/changes/changes.english.withcode.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/changes.ins b/macros/latex/contrib/changes/changes.ins
index 489d804e35..33ca5ae772 100644
--- a/macros/latex/contrib/changes/changes.ins
+++ b/macros/latex/contrib/changes/changes.ins
@@ -28,6 +28,7 @@ This work consists of the files
source/latex/changes/changes.dtx
source/latex/changes/changes.ins
source/latex/changes/examples.dtx
+ source/latex/changes/regression.dtx
source/latex/changes/README
source/latex/changes/userdoc/*.tex
@@ -40,6 +41,9 @@ and the derived files
doc/latex/changes/examples/changes.example.*.tex
doc/latex/changes/examples/changes.example.*.pdf
+ doc/latex/changes/regression/changes.regression.*.tex
+ doc/latex/changes/regression/changes.regression.*.pdf
+
tex/latex/changes/changes.sty
\endpreamble
@@ -148,6 +152,9 @@ Copyright 2007-2021 Ekkart Kleinod
\file{examples/changes.example.packageoptions.xcolor.tex}{\from{examples.dtx}{example:packageoptions.xcolor}}
%
\file{examples/changes.example.screenshot.tex}{\from{example-screenshot.dtx}{example:screenshot}}
+%
+ \file{regression/changes.regression.draft.tex}{\from{regression.dtx}{regression:draft}}
+ \file{regression/changes.regression.final.tex}{\from{regression.dtx}{regression:final}}
}
\endinput
diff --git a/macros/latex/contrib/changes/changes.ngerman.pdf b/macros/latex/contrib/changes/changes.ngerman.pdf
index b2ef68e5ba..db7e686fad 100644
--- a/macros/latex/contrib/changes/changes.ngerman.pdf
+++ b/macros/latex/contrib/changes/changes.ngerman.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.bf.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.bf.pdf
index 94aa175a4e..55ca5987a4 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.bf.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.bf.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.colored.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.colored.pdf
index c9e7997130..ec67a5c59b 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.colored.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.colored.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.dashuline.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.dashuline.pdf
index 3e82123e0c..42755a29d0 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.dashuline.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.dashuline.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.dotuline.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.dotuline.pdf
index 73ab86ac99..3d82022ab6 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.dotuline.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.dotuline.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.em.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.em.pdf
index c056f7a5d3..55c5d2326c 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.em.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.em.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.it.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.it.pdf
index 86065fdcc0..95eaa4da82 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.it.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.it.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.sl.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.sl.pdf
index ecaeee44bf..60a30bdf1f 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.sl.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.sl.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uline.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uline.pdf
index df3f69fb09..c5bd26700c 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uline.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uline.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uuline.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uuline.pdf
index 4a001be71c..2778aa204e 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uuline.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uuline.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uwave.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uwave.pdf
index f11f74a050..98ed53ebba 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uwave.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.uwave.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.wrong.pdf b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.wrong.pdf
index 6c88140c94..7f5dea591a 100644
--- a/macros/latex/contrib/changes/examples/changes.example.addedmarkup.wrong.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.addedmarkup.wrong.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkup.brackets.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkup.brackets.pdf
index bf2a1444c2..471640cda0 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkup.brackets.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkup.brackets.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkup.footnote.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkup.footnote.pdf
index a6af792a8c..f850b6d45c 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkup.footnote.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkup.footnote.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkup.none.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkup.none.pdf
index 36562b523f..f530551bb3 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkup.none.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkup.none.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkup.subscript.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkup.subscript.pdf
index a928c7c0d6..87fca6e7b5 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkup.subscript.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkup.subscript.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkup.superscript.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkup.superscript.pdf
index 412587188f..cdaf9ae0f1 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkup.superscript.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkup.superscript.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkup.wrong.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkup.wrong.pdf
index 528c03cd38..813ae0f2ed 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkup.wrong.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkup.wrong.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.left.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.left.pdf
index fbf6c35d9d..41cc948b14 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.left.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.left.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.right.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.right.pdf
index 9b72b87338..053b1a7108 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.right.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.right.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.wrong.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.wrong.pdf
index bf11a6ad51..637ab58f9c 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.wrong.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkupposition.wrong.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.id.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.id.pdf
index 0e56ee8c8c..54b6055a3a 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.id.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.id.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.name.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.name.pdf
index 59f174bbd3..73e03a81ab 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.name.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.name.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.wrong.pdf b/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.wrong.pdf
index 7cb35c63b9..c32978d197 100644
--- a/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.wrong.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.authormarkuptext.wrong.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.always.pdf b/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.always.pdf
index 1d9515058a..56836d4869 100644
--- a/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.always.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.always.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.ifneeded.pdf b/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.ifneeded.pdf
index f48df177c4..116bb6814e 100644
--- a/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.ifneeded.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.ifneeded.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.none.pdf b/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.none.pdf
index 6f821fe804..eadce526ac 100644
--- a/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.none.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.none.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.wrong.pdf b/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.wrong.pdf
index fc498affa1..39e0441dd1 100644
--- a/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.wrong.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.commandnameprefix.wrong.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.commentmarkup.footnote.pdf b/macros/latex/contrib/changes/examples/changes.example.commentmarkup.footnote.pdf
index 657c88f26f..b64d016ffe 100644
--- a/macros/latex/contrib/changes/examples/changes.example.commentmarkup.footnote.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.commentmarkup.footnote.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.commentmarkup.margin.pdf b/macros/latex/contrib/changes/examples/changes.example.commentmarkup.margin.pdf
index edbe772faf..d0899372f6 100644
--- a/macros/latex/contrib/changes/examples/changes.example.commentmarkup.margin.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.commentmarkup.margin.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.commentmarkup.todo.pdf b/macros/latex/contrib/changes/examples/changes.example.commentmarkup.todo.pdf
index 2af4f6ba9f..553d11bc50 100644
--- a/macros/latex/contrib/changes/examples/changes.example.commentmarkup.todo.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.commentmarkup.todo.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.commentmarkup.uwave.pdf b/macros/latex/contrib/changes/examples/changes.example.commentmarkup.uwave.pdf
index 836f693fc1..72f1b090d8 100644
--- a/macros/latex/contrib/changes/examples/changes.example.commentmarkup.uwave.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.commentmarkup.uwave.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.defaultcolor.pdf b/macros/latex/contrib/changes/examples/changes.example.defaultcolor.pdf
index 68494b767c..3bcbbbd277 100644
--- a/macros/latex/contrib/changes/examples/changes.example.defaultcolor.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.defaultcolor.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.bf.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.bf.pdf
index 90892b2723..5165d0142d 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.bf.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.bf.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.colored.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.colored.pdf
index bb6fd6c754..ab50ae7042 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.colored.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.colored.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.dashuline.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.dashuline.pdf
index b3a42225fe..cd3db0cff5 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.dashuline.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.dashuline.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.dotuline.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.dotuline.pdf
index cfa622e157..8dbe2decd7 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.dotuline.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.dotuline.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.em.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.em.pdf
index 51b5591abb..a1339f3f13 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.em.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.em.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.it.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.it.pdf
index 87f59d8d76..293abd5051 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.it.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.it.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.sl.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.sl.pdf
index 5d1d61d35e..7ec00ac4be 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.sl.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.sl.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.sout.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.sout.pdf
index 08119810c7..b14b88a92e 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.sout.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.sout.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uline.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uline.pdf
index 28e5cec57f..9114b60379 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uline.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uline.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uuline.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uuline.pdf
index 8f358941f5..de00241473 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uuline.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uuline.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uwave.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uwave.pdf
index 77fd6f3088..36d0f9277c 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uwave.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.uwave.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.wrong.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.wrong.pdf
index 9a7c4f778f..17f59b5f0f 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.wrong.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.wrong.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.xout.pdf b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.xout.pdf
index 40ca92b0fe..df2ca6a4e8 100644
--- a/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.xout.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.deletedmarkup.xout.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.draft.pdf b/macros/latex/contrib/changes/examples/changes.example.draft.pdf
index 7931c405c1..19604e3dc1 100644
--- a/macros/latex/contrib/changes/examples/changes.example.draft.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.draft.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.final.pdf b/macros/latex/contrib/changes/examples/changes.example.final.pdf
index 8494c403a2..8b220865d3 100644
--- a/macros/latex/contrib/changes/examples/changes.example.final.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.final.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.background.pdf b/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.background.pdf
index fc36efc655..c15f9259b8 100644
--- a/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.background.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.background.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.uuline.pdf b/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.uuline.pdf
index 4cdd1ec1f9..5980796240 100644
--- a/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.uuline.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.uuline.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.uwave.pdf b/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.uwave.pdf
index 4bb4758900..5c9b001fbd 100644
--- a/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.uwave.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.highlightmarkup.uwave.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.listofchanges.all.pdf b/macros/latex/contrib/changes/examples/changes.example.listofchanges.all.pdf
index f2d71336f2..8c0cc20248 100644
--- a/macros/latex/contrib/changes/examples/changes.example.listofchanges.all.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.listofchanges.all.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.listofchanges.compactsummary.pdf b/macros/latex/contrib/changes/examples/changes.example.listofchanges.compactsummary.pdf
index 8f0d996862..26a11f1814 100644
--- a/macros/latex/contrib/changes/examples/changes.example.listofchanges.compactsummary.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.listofchanges.compactsummary.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.listofchanges.list.pdf b/macros/latex/contrib/changes/examples/changes.example.listofchanges.list.pdf
index 7a3a422497..02ba064853 100644
--- a/macros/latex/contrib/changes/examples/changes.example.listofchanges.list.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.listofchanges.list.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.listofchanges.show.pdf b/macros/latex/contrib/changes/examples/changes.example.listofchanges.show.pdf
index c7e1862c2b..5d8bd6bf4c 100644
--- a/macros/latex/contrib/changes/examples/changes.example.listofchanges.show.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.listofchanges.show.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.listofchanges.summary.pdf b/macros/latex/contrib/changes/examples/changes.example.listofchanges.summary.pdf
index 956498b3d9..59a489ead4 100644
--- a/macros/latex/contrib/changes/examples/changes.example.listofchanges.summary.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.listofchanges.summary.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.listofchanges.title.pdf b/macros/latex/contrib/changes/examples/changes.example.listofchanges.title.pdf
index 4b6050942a..378bc395c2 100644
--- a/macros/latex/contrib/changes/examples/changes.example.listofchanges.title.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.listofchanges.title.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.listofchanges.wrong.pdf b/macros/latex/contrib/changes/examples/changes.example.listofchanges.wrong.pdf
index 4de909cf86..2f0c65b9a9 100644
--- a/macros/latex/contrib/changes/examples/changes.example.listofchanges.wrong.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.listofchanges.wrong.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.markup.bfit.pdf b/macros/latex/contrib/changes/examples/changes.example.markup.bfit.pdf
index 67742c8a20..335460ea5d 100644
--- a/macros/latex/contrib/changes/examples/changes.example.markup.bfit.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.markup.bfit.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.markup.default.pdf b/macros/latex/contrib/changes/examples/changes.example.markup.default.pdf
index cb50ff4ab4..5e19e72dad 100644
--- a/macros/latex/contrib/changes/examples/changes.example.markup.default.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.markup.default.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.markup.nocolor.pdf b/macros/latex/contrib/changes/examples/changes.example.markup.nocolor.pdf
index c3de83963f..f22f6b88bc 100644
--- a/macros/latex/contrib/changes/examples/changes.example.markup.nocolor.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.markup.nocolor.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.markup.underlined.pdf b/macros/latex/contrib/changes/examples/changes.example.markup.underlined.pdf
index 4f97f7cddd..69a6bafc59 100644
--- a/macros/latex/contrib/changes/examples/changes.example.markup.underlined.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.markup.underlined.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.markup.wrong.pdf b/macros/latex/contrib/changes/examples/changes.example.markup.wrong.pdf
index e69a1290ef..ad081f72cb 100644
--- a/macros/latex/contrib/changes/examples/changes.example.markup.wrong.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.markup.wrong.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.packageoptions.todonotes.pdf b/macros/latex/contrib/changes/examples/changes.example.packageoptions.todonotes.pdf
index 6c2ef16461..0e00c4420f 100644
--- a/macros/latex/contrib/changes/examples/changes.example.packageoptions.todonotes.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.packageoptions.todonotes.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.packageoptions.truncate.pdf b/macros/latex/contrib/changes/examples/changes.example.packageoptions.truncate.pdf
index 2bf38fe630..c98fb27a2e 100644
--- a/macros/latex/contrib/changes/examples/changes.example.packageoptions.truncate.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.packageoptions.truncate.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.packageoptions.ulem.pdf b/macros/latex/contrib/changes/examples/changes.example.packageoptions.ulem.pdf
index 679ead2652..880cadda7d 100644
--- a/macros/latex/contrib/changes/examples/changes.example.packageoptions.ulem.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.packageoptions.ulem.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.packageoptions.xcolor.pdf b/macros/latex/contrib/changes/examples/changes.example.packageoptions.xcolor.pdf
index 1f6a2e5dbf..3089085f93 100644
--- a/macros/latex/contrib/changes/examples/changes.example.packageoptions.xcolor.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.packageoptions.xcolor.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.screenshot.pdf b/macros/latex/contrib/changes/examples/changes.example.screenshot.pdf
index fb0af2d126..2eb639c281 100644
--- a/macros/latex/contrib/changes/examples/changes.example.screenshot.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.screenshot.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.setaddedmarkup.pdf b/macros/latex/contrib/changes/examples/changes.example.setaddedmarkup.pdf
index ef53f15213..a83f2f1064 100644
--- a/macros/latex/contrib/changes/examples/changes.example.setaddedmarkup.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.setaddedmarkup.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.setauthormarkup.pdf b/macros/latex/contrib/changes/examples/changes.example.setauthormarkup.pdf
index 56a33ac167..c6d7119322 100644
--- a/macros/latex/contrib/changes/examples/changes.example.setauthormarkup.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.setauthormarkup.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.setauthormarkupposition.pdf b/macros/latex/contrib/changes/examples/changes.example.setauthormarkupposition.pdf
index f0bde0ea56..fa609d6a4d 100644
--- a/macros/latex/contrib/changes/examples/changes.example.setauthormarkupposition.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.setauthormarkupposition.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.setauthormarkuptext.pdf b/macros/latex/contrib/changes/examples/changes.example.setauthormarkuptext.pdf
index 1036e247e9..1780b0bb63 100644
--- a/macros/latex/contrib/changes/examples/changes.example.setauthormarkuptext.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.setauthormarkuptext.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.setcommentmarkup.pdf b/macros/latex/contrib/changes/examples/changes.example.setcommentmarkup.pdf
index cd02212a25..a0d62a22b6 100644
--- a/macros/latex/contrib/changes/examples/changes.example.setcommentmarkup.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.setcommentmarkup.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.setdeletedmarkup.pdf b/macros/latex/contrib/changes/examples/changes.example.setdeletedmarkup.pdf
index fb44f1e006..75d1f0b381 100644
--- a/macros/latex/contrib/changes/examples/changes.example.setdeletedmarkup.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.setdeletedmarkup.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.sethighlightmarkup.pdf b/macros/latex/contrib/changes/examples/changes.example.sethighlightmarkup.pdf
index 383dc0687a..904094ba18 100644
--- a/macros/latex/contrib/changes/examples/changes.example.sethighlightmarkup.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.sethighlightmarkup.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.setsocextension.pdf b/macros/latex/contrib/changes/examples/changes.example.setsocextension.pdf
index b0bf4be302..c76adf1d00 100644
--- a/macros/latex/contrib/changes/examples/changes.example.setsocextension.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.setsocextension.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.setsummarytowidth.pdf b/macros/latex/contrib/changes/examples/changes.example.setsummarytowidth.pdf
index d62a7cf3a3..1dd53cc870 100644
--- a/macros/latex/contrib/changes/examples/changes.example.setsummarytowidth.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.setsummarytowidth.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.setsummarywidth.pdf b/macros/latex/contrib/changes/examples/changes.example.setsummarywidth.pdf
index d436e19eba..3b4a6ae2a0 100644
--- a/macros/latex/contrib/changes/examples/changes.example.setsummarywidth.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.setsummarywidth.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.settruncatewidth.pdf b/macros/latex/contrib/changes/examples/changes.example.settruncatewidth.pdf
index 7b07af4115..e816f0dde8 100644
--- a/macros/latex/contrib/changes/examples/changes.example.settruncatewidth.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.settruncatewidth.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/examples/changes.example.simple.pdf b/macros/latex/contrib/changes/examples/changes.example.simple.pdf
index c88b4ae87e..1a803ad07f 100644
--- a/macros/latex/contrib/changes/examples/changes.example.simple.pdf
+++ b/macros/latex/contrib/changes/examples/changes.example.simple.pdf
Binary files differ
diff --git a/macros/latex/contrib/changes/userdoc/changes.de.tex b/macros/latex/contrib/changes/userdoc/changes.de.tex
index 830aa591c2..924e951fd9 100644
--- a/macros/latex/contrib/changes/userdoc/changes.de.tex
+++ b/macros/latex/contrib/changes/userdoc/changes.de.tex
@@ -1086,6 +1086,7 @@ Dieses Paket besteht aus den Dateien
\>\texttt{source/latex/changes/changes.dtx}\\
\>\texttt{source/latex/changes/changes.ins}\\
\>\texttt{source/latex/changes/examples.dtx}\\
+ \>\texttt{source/latex/changes/regression.dtx}\\
\>\texttt{source/latex/changes/README}\\
\>\texttt{source/latex/changes/userdoc/*.tex}\\
@@ -1104,6 +1105,9 @@ und den generierten Dateien
\>\texttt{doc/latex/changes/examples/changes.example.*.tex}\\
\>\texttt{doc/latex/changes/examples/changes.example.*.pdf}\\
+ \>\texttt{doc/latex/changes/regression/changes.regression.*.tex}\\
+ \>\texttt{doc/latex/changes/regression/changes.regression.*.pdf}\\
+
\>\texttt{tex/latex/changes/changes.sty}
\end{tabbing}
diff --git a/macros/latex/contrib/changes/userdoc/changes.en.tex b/macros/latex/contrib/changes/userdoc/changes.en.tex
index a9853fbef1..9b621a39e3 100644
--- a/macros/latex/contrib/changes/userdoc/changes.en.tex
+++ b/macros/latex/contrib/changes/userdoc/changes.en.tex
@@ -1087,6 +1087,7 @@ This work consists of the files
\>\texttt{source/latex/changes/changes.dtx}\\
\>\texttt{source/latex/changes/changes.ins}\\
\>\texttt{source/latex/changes/examples.dtx}\\
+ \>\texttt{source/latex/changes/regression.dtx}\\
\>\texttt{source/latex/changes/README}\\
\>\texttt{source/latex/changes/userdoc/*.tex}\\
@@ -1105,6 +1106,9 @@ and the derived files
\>\texttt{doc/latex/changes/examples/changes.example.*.tex}\\
\>\texttt{doc/latex/changes/examples/changes.example.*.pdf}\\
+ \>\texttt{doc/latex/changes/regression/changes.regression.*.tex}\\
+ \>\texttt{doc/latex/changes/regression/changes.regression.*.pdf}\\
+
\>\texttt{tex/latex/changes/changes.sty}
\end{tabbing}
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index dc7e4887c0..f42234ae72 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -24,11 +24,11 @@
% \changes{v1.20}{2021/01/09}{修改和完善用户文档。}
% \changes{v1.20}{2021/01/09}{模板更改为使用 CC-BY 许可协议。}
% \changes{v1.23}{2021/03/19}{修复在 \pkg{ctex} v2.5.6 更新后 \cls{easybook} 与 \pkg{hyperref} 冲突问题。}
-% \changes{v1.25e}{2021/05/03}{取消附带的示例文件,可查看历史版本及其它来源的使用样例。}
+% \changes{v1.25f}{2021/05/03}{取消附带的示例文件,可查看历史版本及其它来源的使用样例。}
%
% \title{\sffamily easybook 文档类手册}
% \author{瞿毅}
-% \date{2021/05/08\hskip\ccwd\relax v1.25e\thanks{\url{https://gitee.com/texl3/easybook}}}
+% \date{2021/05/09\hskip\ccwd\relax v1.25f\thanks{\url{https://gitee.com/texl3/easybook}}}
%
% \maketitle
% \begin{abstract}
@@ -118,7 +118,7 @@
% \end{syntax}
% 传递给 \cls{ctexbook} 设置字体,最好不要使用原有的 \opt{fontset} 选项,默认情况下使用自定义字体而不开启这个选项,可根据安装的字体及电脑系统选取。\opt{noto} 与 \opt{none} 选项的相关描述见小节 \ref{subsec:font settings},\opt{overleaf} 是一个各系统通用选项,会检测系统环境选取对应字体。
% \changes{v1.21}{2021/01/12}{默认字体与 \CTeX 一致,不再是自定义字体。}
-% \changes{v1.25e}{2021/05/04}{修复使用 \pkg{xeCJK} 与 \pkg{fontspec} 宏包的字体设置命令在 \hologo{LuaLaTeX} 下失效的问题。}
+% \changes{v1.25f}{2021/05/04}{修复使用 \pkg{xeCJK} 与 \pkg{fontspec} 宏包的字体设置命令在 \hologo{LuaLaTeX} 下失效的问题。}
% \end{function}
%
% \begin{function}[rEXP,added = 2021-01-05,updated = 2021-01-13]{paper}
@@ -169,7 +169,7 @@
% \tn{listoflistings*+}\oarg{键值列表}
% \end{syntax}
% \tn{listoffigures} 命令输出图片目录,\tn{listoftables} 输出表格目录,\tn{listoflistings} 输出代码目录。带有星号的目录命令不将标题添加进主文档目录,带有+号的目录命令可以使当前标题编号。\tn{tableofcontents+} 与其它命令不同是用于输出双语目录,需要与双语目录标题命令 \tn{bichapter} 等或设置图片、表格和代码等英文目录的标题配合使用,附加代码是中文与英文目录之间的代码,可以插入文本和换页命令等。目录的键值列表选项如下
-% \changes{v1.25e}{2021/05/05}{命令 \tn{tableofcontents} 可以输出双语目录。}
+% \changes{v1.25f}{2021/05/05}{命令 \tn{tableofcontents} 可以输出双语目录。}
% \end{function}
%
% \begin{function}{multoc,title,format,aftertitle,pagestyle,book,article}
@@ -200,7 +200,7 @@
% 双语目录的标题命令目前设置了常用的三个级别,它们将中文标题正常输出,并使中英文标题加入双语目录,这个功能是为国内一些大学的学位论文模板的要求设计,在一般情况和英文模式下不需要使用。
%
% 它们的星号变体命令使文中标题不编号,但是仍然加入双语目录,若英文标题参数空置那么仅加入中文目录而不加入英文目录,这一特点与 \tn{chapter*} 等命令的行为不太一样,在一些情况下会用到。可选参数是目录中的中文标题,默认与中文标题一致,正文标题过长时可用它设置在目录中显示的标题。双语目录的格式是一致的,共享使用 \tn{tocset} 的设置,英文目录的章级别标题名及编号的修改方式如下
-% \changes{v1.25e}{2021/05/05}{增加与双语目录配合的标题命令。}
+% \changes{v1.25f}{2021/05/05}{增加与双语目录配合的标题命令。}
% \end{function}
%
% \begin{function}{biname,binmuber}
@@ -228,8 +228,8 @@
% \begin{center}
% \begin{tabular}{*{5}{c}}
% \toprule
-% \hyperref[subsec:style]{风格} & \hyperref[subsec:hyperlinks]{超链接} & \hyperref[subsec:other font]{其它字体} & \hyperref[subsec:spacing]{行距} & \hyperref[subsec:reference]{参考文献} \\
-% style & refset & elsefont & spread & bibset \\
+% \hyperref[subsec:style]{风格} & \hyperref[subsec:other font]{其它字体} & \hyperref[subsec:spacing]{行距} & \hyperref[subsec:hyperlinks]{超链接} & \hyperref[subsec:reference]{参考文献} \\
+% style & elsefont & spread & refset & bibset \\
% \midrule
% \hyperref[subsec:theorem of style]{定理样式} & \hyperref[subsec:page margins]{页面尺寸} & \hyperref[subsec:header and footer]{页眉页脚} & \hyperref[subsec:catalog style]{目录样式} & \\
% thmset & geoset & hdrset & tocset & \\
@@ -299,7 +299,7 @@
% \opt{refset} 将超链接选项(包括以上选项)交给 \pkg{hyperref} 处理,除了一些关于 pdf 书签的选项可能会失效,其它由键值选项命令 \tn{hypersetup} 支持的多数选项可用。
% \changes{v1.10}{2021/01/08}{修复了 \opt{linktopage} 选项关闭时目录中标题编号无超链接的问题。}
% \changes{v1.24}{2021/04/05}{增加 \pkg{hyperref} 超链接选项完整的支持。}
-% \changes{v1.25e}{2021/05/06}{模块名 \opt{link} 改为 \opt{refset},\opt{link} 作为兼容性保留。}
+% \changes{v1.25f}{2021/05/06}{模块名 \opt{link} 改为 \opt{refset},\opt{link} 作为兼容性保留。}
% \end{function}
%
% \begin{optdesc}
@@ -837,7 +837,7 @@
% \tn{ref}\marg{标签}
% \tn{labelformat}\marg{计数器}\marg{标签引用格式}
% \end{syntax}
-% 使用 \tn{ref} 命令引用 \tn{label} 设置的标签,将会自动检测环境并添加相应的前缀,比如图表、章节标题和定理等。\tn{labelformat} 可以设置标签引用格式,第二个参数中\#1代表 \tn{the}\meta{计数器},可以设置引用序号的前缀和后缀。
+% 使用 \tn{ref} 命令引用 \tn{label} 设置的标签,将会检测临近计数器并添加相应的前缀,比如图表、章节标题和定理等。\tn{labelformat} 可以设置标签引用格式,第二个参数中\#1代表 \tn{the}\meta{计数器},可以设置引用序号的前缀和后缀。
% \changes{v1.24}{2021/04/11}{取消载入 \pkg{cleveref} 宏包来交叉引用。}
% \end{function}
%
@@ -951,7 +951,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplClass{easybook}{2021/05/08}{1.25e}{beta}
+\ProvidesExplClass{easybook}{2021/05/09}{1.25f}{beta}
\cs_generate_variant:Nn \eb_ctex_define:nn { nx }
\cs_generate_variant:Nn \int_to_arabic:n { v }
@@ -1125,7 +1125,7 @@
geometry,marginnote,nccfoots,
pdfpages,graphicx,
fancyhdr,titletoc,
- caption-light,subcaption,
+ caption-light,
tabularx,multirow,booktabs,
enumitem,
listings
@@ -1438,9 +1438,9 @@
{
#1/format .tl_set:c = l__eb_toc_#1_format_tl,
#1/format+ .code:n =
- { \tl_put_right:cn {l__eb_toc_#1_format_tl} {##1} },
+ { \tl_put_right:cn { l__eb_toc_#1_format_tl } {##1} },
#1/format~+ .code:n =
- { \tl_put_right:cn {l__eb_toc_#1_format_tl} {##1} },
+ { \tl_put_right:cn { l__eb_toc_#1_format_tl } {##1} },
#1/indent .tl_set:c = l__eb_toc_#1_indent_tl,
#1/rule .tl_set:c = l__eb_toc_#1_rule_tl,
#1/numsep .tl_set:c = eb@toc@#1@numsep
@@ -1462,7 +1462,7 @@
list/lolskip .initial:n = 0.8pc,
list/belowoffset .dim_set:N = \l__eb_toc_listoffset_dim,
list/belowoffset .initial:n =
- {\bool_if:NTF \l__eb_class_book_bool { 0pc } { 0.15pc } },
+ { \bool_if:NTF \l__eb_class_book_bool { 0pc } { 0.15pc } },
belowoffset .dim_set:N = \l__eb_toc_offset_dim,
belowoffset .initial:n =
@@ -1785,7 +1785,7 @@
\ifbool{@twocolumn}
{
\booltrue{@restonecol}
- \bool_if:NTF \l__eb_multoc_bool {\twocolumn } { \onecolumn }
+ \bool_if:NTF \l__eb_multoc_bool { \twocolumn } { \onecolumn }
}{
\boolfalse{@restonecol}
\bool_if:NT \l__eb_multoc_bool { \twocolumn }
diff --git a/macros/latex/contrib/easybook/easybook.ins b/macros/latex/contrib/easybook/easybook.ins
index af8f3f8134..3abe67baa8 100644
--- a/macros/latex/contrib/easybook/easybook.ins
+++ b/macros/latex/contrib/easybook/easybook.ins
@@ -1,25 +1,25 @@
-%
-% Copyright (C) 2021 by Qu Yi <quee123@foxmail.com>
-%
-% This work may be distributed and/or modified under the
-% conditions of the CC-BY 4.0 License.
-% The latest version of this license is in
-% https://creativecommons.org/licenses/by/4.0/legalcode
-\input ctxdocstrip
-\keepsilent
-\askforoverwritefalse
-
-\usedir{tex/latex/easybook}
-
-\preamble
-Copyright (C) 2021 by Qu Yi <quee123@foxmail.com>
-
-This work may be distributed and/or modified under the
-conditions of the CC-BY 4.0 License.
-The latest version of this license is in
- https://creativecommons.org/licenses/by/4.0/legalcode
-\endpreamble
-
-\generate{\file{\jobname.cls}{\from{\jobname.dtx}{class}}}
-
+%
+% Copyright (C) 2021 by Qu Yi <quee123@foxmail.com>
+%
+% This work may be distributed and/or modified under the
+% conditions of the CC-BY 4.0 License.
+% The latest version of this license is in
+% https://creativecommons.org/licenses/by/4.0/legalcode
+\input ctxdocstrip
+\keepsilent
+\askforoverwritefalse
+
+\usedir{tex/latex/easybook}
+
+\preamble
+Copyright (C) 2021 by Qu Yi <quee123@foxmail.com>
+
+This work may be distributed and/or modified under the
+conditions of the CC-BY 4.0 License.
+The latest version of this license is in
+ https://creativecommons.org/licenses/by/4.0/legalcode
+\endpreamble
+
+\generate{\file{\jobname.cls}{\from{\jobname.dtx}{class}}}
+
\endbatchfile \ No newline at end of file
diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf
index e43ede81b4..6d30d9c28e 100644
--- a/macros/latex/contrib/easybook/easybook.pdf
+++ b/macros/latex/contrib/easybook/easybook.pdf
Binary files differ
diff --git a/macros/latex/contrib/msu-thesis/README b/macros/latex/contrib/msu-thesis/README.md
index 33897dc31e..725896b877 100644
--- a/macros/latex/contrib/msu-thesis/README
+++ b/macros/latex/contrib/msu-thesis/README.md
@@ -1,25 +1,27 @@
-MSU Thesis Class Version 2.8 2017/12/13
+# MSU Thesis Class Version 2.9c 2021/05/07
-Copyright 2011,2012,2013,2014,2015,2016, 2017 by Alan Munn <amunn@msu.edu>
+Copyright 2011-2021 by Alan Munn <amunn@msu.edu>
This is a class file for producing dissertations and theses according to
the Michigan State University Graduate School Guidelines for Electronic
-Submission of Master's Theses and Dissertations (October 2017).
+Submission of Master's Theses and Dissertations (March 2020).
The class is based on the memoir document class, and thefore inherits
all of the functionality of that class.
-Installation:
+## Installation:
The msu-thesis class is part of both TeXLive and MikTeX, so you should either already have it or should be able to install it with your package manager.
If you wish to install it locally, follow the directions below:
-Put msu-thesis.cls
-<local texmf>/tex/latex/msu-thesis
+Put `msu-thesis.cls` into
-Put msu-thesis.tex, msu-thesis.pdf and the samples folder into
-<local texmf>/doc/latex/msu-thesis
+`<local texmf>/tex/latex/msu-thesis`
+
+Put `msu-thesis.tex`, `msu-thesis.pdf` and the `samples` folder into
+
+`<local texmf>/doc/latex/msu-thesis`
The samples folder contains a thesis test-file and
a template.
@@ -30,17 +32,25 @@ any later version. The latest version of this license is in
http://www.latex-project.org/lppl.txt and version 1.3 or later is part
of all distributions of LaTeX version 2005/12/01 or later.
-This package has the LPPL maintenance status `maintained'.
+This package has the LPPL maintenance status "maintained".
The Current Maintainer of this package is Alan Munn.
This package consists of the following source file:
-msu-thesis.cls,
+ - `msu-thesis.cls`
+
Documentation files:
-msu-thesis.tex and msu-thesis.pdf;
-A template file: MSU-thesis-template.tex;
-A test file, test bibliography, and the Unified Linguistics Stylesheet bst file: MSU-thesis-testfile.tex, MSU-theis-testfile.bib, unified.bst
+ - `msu-thesis.tex`
+ - `msu-thesis.pdf`
+
+A template file:
+ - `MSU-thesis-template.tex`
+
+A test file and a test bibliography:
+
+ `MSU-thesis-testfile.tex`
+ `MSU-theis-testfile.bib`
-Use at your own risk! Report bugs/problems/questions to <amunn@msu.edu>
+Use at your own risk! Report bugs/problems/questions to [amunn@msu.edu](mailto:amunn@msu.edu) or use the [GitHub repository bug tracker](https://github.com/amunn/msu-thesis/issues).
diff --git a/macros/latex/contrib/msu-thesis/msu-thesis.cls b/macros/latex/contrib/msu-thesis/msu-thesis.cls
index d49a2ced1e..f9c1c273f7 100644
--- a/macros/latex/contrib/msu-thesis/msu-thesis.cls
+++ b/macros/latex/contrib/msu-thesis/msu-thesis.cls
@@ -1,6 +1,6 @@
% MSU Thesis Class
%
-% Copyright 2009,2010,2011,2012,2013,2014,2015,2016,2017 by Alan Munn <amunn@msu.edu>
+% Copyright 2009,2010,2011,2012,2013,2014,2015,2016,2017,2020 by Alan Munn <amunn@msu.edu>
%
% This is a class file for producing dissertations and theses according to the
% Michigan State University Graduate School Guidelines
@@ -136,12 +136,26 @@
% should be the same as \abstractname. For the moment it is. Updated documentation to
% include section about microtype and contents lists.
% Changed \droptitle (again)
-% Fixed capitalization problem with Appendices
-% Use at your own risk!
+% Fixed capitalization problem with Appendices
+%
+% Version 2.9 2020/12/12 Removed super/subscript/footnote restrictions
+% Added document fontsize options.
+% Changed use of \baselineskip to \onelineskip so that idiocy of the
+% thesis office can be accommodated. If complaints about the spacing
+% of “double space” arise, redefine \onelineskip to be the fontsize rather
+% than the leading.
+%
+% Version 2.9a 2020/12/14 Fixed abstract title spacing after complaints about “double space”.
+% Version 2.9b 2021/02/26 Fixed epigraph fontsize
+% Version 2.9c 2021/05/07 Made \tableofcontents behave like \tableofcontents*
+% Added warning when public abstract is used.
+% Minor changes to the documentation
+% Removed unified.bst from distribution; replaced with apalike in the test file.
+%
% Report bugs/problems/questions to <amunn@msu.edu>
%
-\def\msu@version{2.8}
-\def\msu@date{2017/12/13}
+\def\msu@version{2.9c}
+\def\msu@date{2021/05/07}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{msu-thesis}[\msu@date\space Michigan State University Thesis Class version \msu@version]
\newif\ifmsu@dissertation\msu@dissertationtrue % added v2.7 boolean for \msu@thesistype
@@ -174,12 +188,15 @@
\DeclareOption{boldtoc}{\msu@stupidtoctrue\msu@plaintocfalse\msu@mixedtocfalse}
\DeclareOption{plaintoc}{\msu@plaintoctrue\msu@stupidtocfalse\msu@mixedtocfalse}
\DeclareOption{mixedtoc}{\msu@mixedtoctrue\msu@stupidtocfalse\msu@plaintocfalse}
-\ExecuteOptions{PhD}
+\DeclareOption{12pt}{\def\msu@sizeoption{12pt}} % added v 2.9
+\DeclareOption{11pt}{\def\msu@sizeoption{11pt}}
+\DeclareOption{10pt}{\def\msu@sizeoption{10pt}}
+\ExecuteOptions{PhD,12pt}
\DeclareOption*{
\PassOptionsToClass{\CurrentOption}{memoir}
}
\ProcessOptions\relax
-\LoadClass[12pt,oneside,letterpaper]{memoir}[2008/05/27]
+\LoadClass[\msu@sizeoption,oneside,letterpaper]{memoir}[2008/05/27]
% Check for older versions of the latex kernel
\ifx\e@alloc\@undefined
\RequirePackage{etex}
@@ -231,15 +248,15 @@
% breaks within the title. This has now been documented in the user docs.
\newcommand*\msu@thesistype{\ifmsu@dissertation{DISSERTATION}\else{THESIS}\fi}
\pretitle{\begin{center}\MakeUppercase}
-\posttitle{\\[\baselineskip]\end{center}}
-\preauthor{\begin{center}By\\[\baselineskip]}
+\posttitle{\\[\onelineskip]\end{center}}
+\preauthor{\begin{center}By\\[\onelineskip]}
\postauthor{\end{center}}
-\predate{\vfill\begin{center}\msu@titleintro\msu@thesistype\\[\baselineskip]Submitted to\\Michigan State University\\in partial fulfillment of the requirements\\for the degree of\\[\baselineskip]\msu@fieldofstudy~\msu@fieldseparator~\msu@degree\\[\baselineskip]}
+\predate{\vfill\begin{center}\msu@titleintro\msu@thesistype\\[\onelineskip]Submitted to\\Michigan State University\\in partial fulfillment of the requirements\\for the degree of\\[\onelineskip]\msu@fieldofstudy~\msu@fieldseparator~\msu@degree\\[\onelineskip]}
% set up the chapter titles
\chapterstyle{thatcher}
-\setlength{\beforechapskip}{0pt}
-\setlength{\afterchapskip}{2\baselineskip} % changed 2017/05/03 because of thesis office complaints
+\setlength{\beforechapskip}{-1sp}% changed 2020/12/17 Need negative value to suppress indentation
+\setlength{\afterchapskip}{2\onelineskip} % changed 2017/05/03 because of thesis office complaints
\renewcommand*{\chapnamefont}{\centering\bfseries}
\renewcommand*{\chapnumfont}{\bfseries}
\renewcommand*{\chaptitlefont}{\SingleSpacing\bfseries}
@@ -255,7 +272,7 @@
% set up the section styles
-\setbeforesecskip{0pt}
+\setbeforesecskip{-1sp}
\setsecheadstyle{\normalfont\SingleSpacing\large\bfseries}
\setsubsecheadstyle{\normalfont\SingleSpacing\bfseries}
\setsubsubsecheadstyle{\normalfont\SingleSpacing\bfseries}
@@ -359,27 +376,36 @@
\renewcommand\mem@tableofcontents[1]{%
\oldmem@tableofcontents{#1}%
\setlength{\cftbeforechapterskip}{0.0em \@plus\p@}
- \setlength{\cftparskip}{\baselineskip}
+ \setlength{\cftparskip}{\onelineskip}
\pagestyle{plain}
}
+% This allows users to use either \tableofcontents or \tableofcontents* with the same effect
+% Code from https://tex.stackexchange.com/a/165968/2693
+% Allows users to not read the docs
+\renewcommand{\tableofcontents}{%
+ \@ifstar{\mem@tableofcontents{01}}
+ {\mem@tableofcontents{01}}%
+}
% set up footnotes
-\footmarkstyle{\normalsize\textsuperscript{#1}} % reset size so that mark is right size
-\setlength{\footmarkwidth}{1.8em}
-\setlength{\footmarksep}{-1.8em}
-\setlength{\footparindent}{1em}
-\renewcommand{\foottextfont}{\normalsize} % footnotes will be 12pt
+% Most of this removed v2.9
+%\footmarkstyle{\normalsize\textsuperscript{#1}} % reset size so that mark is right size
+%\setlength{\footmarkwidth}{1.8em}
+%\setlength{\footmarksep}{-1.8em}
+%\setlength{\footparindent}{1em}
+%\renewcommand{\foottextfont}{\normalsize} % footnotes will be 12pt
\feetbelowfloat % footnotes will appear below bottom floats
% set up abstract and public abstract
\renewenvironment{abstract}{%
+ \setlength{\afterchapskip}{\onelineskip} % changed 2020/12/14 again removed manual spacing from 2016
\chapter*{\abstractname}
\thispagestyle{empty}
- \plainbreak{-.5} % changed 2016/06/08 after complaints
+% \plainbreak{-.5} % changed 2016/06/08 after complaints
\begin{center}
\MakeUppercase{\thetitle}\plainbreak{1}By\plainbreak{1}\theauthor
\end{center}
- \plainbreak{-.5} % changed 2016/06/08 after complaints
+% \plainbreak{-.5} % changed 2016/06/08 after complaints
\DoubleSpacing
}{\par}
%
@@ -392,14 +418,16 @@
\newcounter{msu@pubabspages}
\newcommand{\publicabstractname}{\abstractname}
\newenvironment{publicabstract}{%
+ \ClassWarning{msu-thesis}{You have provided a public abstract. Please make sure you ALSO have a regular abstract!}
\setcounter{msu@pubabspages}{\value{page}}
+ \setlength{\afterchapskip}{\onelineskip} % changed 2020/12/14 again removed manual spacing from 2016
\chapter*{\publicabstractname}
\thispagestyle{empty}
- \plainbreak{-.5} % changed 2016/06/08 after complaints
+% \plainbreak{-.5} % changed 2016/06/08 after complaints
\begin{center}
\MakeUppercase{\thetitle}\plainbreak{1}By\plainbreak{1}\theauthor
\end{center}
- \plainbreak{-.5} % changed 2016/06/08 after complaints
+% \plainbreak{-.5} % changed 2016/06/08 after complaints
\DoubleSpacing
}{\clearpage\setcounter{page}{\value{msu@pubabspages}}}
@@ -531,12 +559,17 @@
\@ifpackageloaded{apacite}{\@tocbibfalse}{} % added 6/22/17
%\topskip=0pt % setting this because the Grad School doesn’t know how to measure -changed back 6/15/17
\checkandfixthelayout
+
+% Set epigraph fonts to \normalsize
+\renewcommand{\epigraphsize}{\normalsize} % added 2/26/21
+
%
% set up subscript sizes so that 10 pt is the smallest
% (MSU Requirement)
-\DeclareMathSizes{12}{12}{10}{10}
-\DeclareMathSizes{10.95}{10.95}{10}{10}
-\DeclareMathSizes{10}{10}{10}{10}
+% Removed v2.9
+%\DeclareMathSizes{12}{12}{10}{10}
+%\DeclareMathSizes{10.95}{10.95}{10}{10}
+%\DeclareMathSizes{10}{10}{10}{10}
%
% check for hyperref
% The hyperref code allows hyperref to be used. It is not guaranteed to
@@ -555,4 +588,4 @@
% if no hyperref
{\relax}
}
-\endinput \ No newline at end of file
+\endinput
diff --git a/macros/latex/contrib/msu-thesis/msu-thesis.pdf b/macros/latex/contrib/msu-thesis/msu-thesis.pdf
index b3fc578121..ade9bd139c 100644
--- a/macros/latex/contrib/msu-thesis/msu-thesis.pdf
+++ b/macros/latex/contrib/msu-thesis/msu-thesis.pdf
Binary files differ
diff --git a/macros/latex/contrib/msu-thesis/msu-thesis.tex b/macros/latex/contrib/msu-thesis/msu-thesis.tex
index e995df49da..0b0b57ddf5 100644
--- a/macros/latex/contrib/msu-thesis/msu-thesis.tex
+++ b/macros/latex/contrib/msu-thesis/msu-thesis.tex
@@ -2,15 +2,14 @@
\documentclass[11pt]{article}
-\def\msuversion{2.8}
-\def\msudate{2017/12/13}
+\def\msuversion{2.9c}
+\def\msudate{2021/05/07}
\title{\textbf{Using the MSU Thesis Class}}
\author{\textbf{Alan Munn}\\Department of Linguistics and Languages\\\texttt{\href{mailto:amunn@msu.edu}{amunn@msu.edu}}}
\date{Version \msuversion\\\msudate}
\usepackage[T1]{fontenc}
\usepackage[lmargin=.75in,rmargin=.75in,tmargin=1in,bmargin=1in]{geometry}
\usepackage{titling}
-\usepackage[utf8]{inputenc}
\usepackage{array, booktabs, multicol, fancyhdr, xspace,tabularx}
\usepackage{enumitem}
\usepackage{fancyvrb,listings,url}
@@ -69,13 +68,13 @@
\thispagestyle{empty}
\renewcommand{\abstractname}{\sffamily Abstract}
-\abstract{\noindent\begin{quote} This is a class file for MSU theses and dissertations. It is based on the \pkg{memoir} class, and therefore supports all of the functionality of that class. It should generate a document which meets all the basic formatting requirements laid out by the \href{https://grad.msu.edu/etd/formatting-guide}{Formatting Guide For Submission of Master’s Theses and Doctoral Dissertations} (October 2017) produced by the Graduate School, including requirements for margins, titlepage, page numbering, section titles, sub- and superscript sizes etc.\end{quote}}
+\abstract{\noindent\begin{quote} This is a class file for MSU theses and dissertations. It is based on the \pkg{memoir} class, and therefore supports all of the functionality of that class. It should generate a document which meets all the basic formatting requirements laid out by the \href{https://grad.msu.edu/etd/formatting-guide}{Formatting Guide For Submission of Master’s Theses and Doctoral Dissertations} (March 2020) produced by the Graduate School, including requirements for margins, titlepage, page numbering, section titles, sub- and superscript sizes etc.\end{quote}}
\section{Introduction}
Formatting a dissertation according to a University's thesis requirements is not always a simple task in \LaTeX, especially since the requirements are generally aimed at MSWord users. Furthermore, most of the work of formatting a document is supposed to be done by the document class itself, and not by the individual user. Fortunately, Michigan State University's thesis requirements are actually sane, and fairly straightforward. The present class file is designed to further make the process easier for \LaTeX\ users, by doing all the heavy lifting for you, so that you can focus on the content and not the formatting.
\section{Background}
The MSU Thesis Class is based on the \pkg{memoir} document class. The \pkg{memoir} class is an extensive class that incorporates the functionality of many other packages into it. The class is extensively documented, and the documentation (\pkg{memman.pdf}) should be available with any \TeX\ distribution. I strongly recommend that you familiarize yourself with \pkg{memoir} as you use the present class.
-\section{Package Options}
-In addition to any options passed to the \pkg{memoir} class (e.g. |oldfontcommands|; see Section \ref{sec:fonts}), the \pkg{msu-thesis} takes three options: one to specify the type of degree, (see Table~\ref{degrees}), one to enable landscape page numbering and one to make small adjustments to Table of Contents. If no degree option is specified, a Ph.D. dissertation is assumed.
+\section{Class Options}
+In addition to any options passed to the \pkg{memoir} class (e.g. |oldfontcommands|; see Section \ref{sec:fonts}, font size), the \pkg{msu-thesis} takes three options: one to specify the type of degree, (see Table~\ref{degrees}), one to enable landscape page numbering, and one to make small adjustments to Table of Contents. If no degree option is specified, a Ph.D. dissertation is assumed.
\begin{table}
\centering
\begin{tabularx}{.8\textwidth}{>{\ttfamily}lX}
@@ -106,11 +105,14 @@ In addition to any options passed to the \pkg{memoir} class (e.g. |oldfontcomman
The Formatting Guide requires that any lansdscape pages be numbered in landscape mode (i.e. along the long edge of the page) rather than in portrait mode, and rotated in the final PDF. The |[lscape]| option enables this. The option loads both the \pkg{pdflscape} package and \pkg{tikz}, and is implemented as a class option so that you are not required to load those packages if they are not needed.
\subsection{The contents options}
In 2013 I received reports that the thesis office now requires all elements in the Table of Contents to have the same formatting as they are in the main document, which means that all section, subsection, and subsubsection headings need to be bold. Since this looks very ugly, I have created two options to turn it off, the |[plaintoc]| option (which makes all ToC entries plain) and |[mixedtoc]| option (which makes Chapters bold and other elements plain). I suspect that the thesis office checkers don't notice this all the time so if you want to have a prettier table of contents and are willing to have that format be corrected, you can use these options to turn off the MSWord inspired ugliness of an entirely bold Table of Contents. I've made |[plaintoc]| the default. If you are forced by the thesis office to have an entirely bold ToC, use the |[boldtoc]| option.
+\subsection{Font size options}\label{fontsize}
+As of v2.9, the class now supports |10pt|, |11pt| and |12pt| font sizes. The default is |12pt|. If you are using a small font like Times New Roman or equivalent, you should stick to the default. If you are using a larger font like Computer Modern, |11pt| is probably fine. Use |10pt| at your own peril, as I suspect the Thesis Office will not accept it!
\section{User commands}
-In addition to all the user functionality defined by \pkg{memoir}, the \pkg{msu-thesis} class defines five new titling commands.
+In addition to all the user functionality defined by \pkg{memoir}, the \pkg{msu-thesis} class defines seven new titling commands.
\begin{quote}
\begin{description}
+\item[\texttt{\bs maketitlepage}] Makes the main title page for the thesis.
\item[\texttt{\bs fieldofstudy\{\}}] Takes one argument corresponding to your field of study.
\item[\texttt{\bs dedication\{\}}] Takes one argument (should be short), your dedication.
\item[\texttt{\{publicabstract\}}] Environment for the public abstract (unnumbered, uncounted).
@@ -224,7 +226,7 @@ before the contents lists and |\microtypesetup{protrusion=true}| afterwards. Sc
\end{quote}
\subsection{Public abstract}
-If your thesis requires a public abstract, it should go immediately before the regular abstract. Use the |{publicabstract}| environment for this.
+If your thesis requires a public abstract, it should go immediately before the regular abstract. Use the |{publicabstract}| environment for this. Please note that you \emph{must} have an abstract even if you also have a public abstract.
\subsection{Landscape figures and tables}
If you have large figures and tables that must be rotated, you should use the |[lscape]| class option. This enables a pagestyle |lscape| and places the page numbers correctly on the long edge of the page. The option loads the \pkg{pdflscape} package which provides a |landscape| environment to place the landscape figure in. Before the landscape environment, you need to issue a |\clearpage| command and change the pagestyle to |lscape|, and afterwards, change it back to |plain|. Schematically, then, any landscape pages should be created in the following way.
@@ -302,14 +304,16 @@ Despite there being no explicit formatting requirements for Chapter headings (ot
\item Remember to use the |appendices| environment instead of |\appendix| if you have more than one appendix.
\item Remember to add the |\makebibliographypage| command before your bibliography.
\end{itemize}
+\subsection{Master’s Theses}
+Master’s theses are sometimes relatively short, and you may think that you can just have |\section| commands with no chapters. This will \emph{not} work. The class is designed to use chapters (and as far as I can tell, the Graduate School also expects chapters).
\section{Bugs and redistribution}
\subsection{Current version}
-The latest copy of \pkg{msu-thesis} will always be available on \href{https://ctan.org/pkg/msu-thesis?lang=en}{CTAN}. If you use MiKTeX, or a current year TeX Live then their respective package managers will update or install the latest version. If you are using a Linux-based distribution, or your TeXLive distribution is not the most recent year, you may need to install the latest copy in your local |texmf| directory. If you want others to use the class, \textsc{please} point them to CTAN, so that they can get an up-to-date version with all accompanying documentation and examples rather than passing along your copy. Please report \textsc{any} problems you have with the class to me \href{mailto:amunn@msu.edu}{amunn@msu.edu}, as this will aid in making things easier for those who follow you. The Graduate School rarely announces changes it makes to the formatting requirements, so your problem reports are extremely helpful for keeping the class in compliance with the latest standards.
+The latest copy of \pkg{msu-thesis} will always be available on \href{https://ctan.org/pkg/msu-thesis?lang=en}{CTAN}. If you use MiKTeX, or a current year TeX Live then their respective package managers will update or install the latest version. If you are using Overleaf, you may or may not have the most recent version, since Overleaf is usually about one year behind in it’s TeX distribution. If you are using a Linux-based distribution, or your TeXLive distribution is not the most recent year, you may need to install the latest copy in your local |texmf| directory. If you want others to use the class, \textsc{please} point them to CTAN, or tell them to use an up-to-date TeX distribution so that they can use an up-to-date version with all accompanying documentation and examples rather than passing along your copy. Please report \textsc{any} problems you have with the class to me \href{mailto:amunn@msu.edu}{amunn@msu.edu}, as this will aid in making things easier for those who follow you. If you prefer, you may also report issues using GitHub: \href{https://github.com/amunn/msu-thesis}{github.com/amunn/msu-thesis}. The Graduate School rarely announces changes it makes to the formatting requirements, so your problem reports are extremely helpful for keeping the class in compliance with the latest standards.
\subsection{Archiving your thesis for the future}
Since the current version of the \pkg{msu-thesis} class satisfies the Graduate School requirements at any one time, as these requirements change, you may find that if you need to recompile your thesis after you have graduated that the formatting changes. To avoid this, I would recommend saving an archived version of the \pkg{msu-thesis.cls} file in the same folder as your thesis file. You only need to do this once you have completely finished your thesis however; there's no need to do it during the writing process.
\subsection{Version history}
-Previous versions of \pkg{msu-thesis} (versions 1.0--1.4b) were created for non-electronic submission and should not be used. Versions 1.5--1.6 (the first electronic submission versions) contained a |\makeabstract| command and a separate |msuabstract| environment. These have been removed as of version 1.7. Users who are upgrading from earlier versions to version 1.7 do not need to change these commands however but their use will trigger a warning.) Version 2.0 implemented landscape pages; version 2.1 added support for \pkg{hyperref}. Versions 2.2--2.5 mainly accommodated to the ever changing whims of the MSU Graduate School. Version 2.6 fixed some appendix bugs introduced by the previous whim accommodation. Version 2.7 fixed various small spacing issues, fixed a bug which prevented a new chapter page to be a landscape page, added support for the \pkg{apacite} package, and updated degree options. Version 2.8 fixed some spacing and capitalization issues and added support for the the public abstract.
+Previous versions of \pkg{msu-thesis} (versions 1.0--1.4b) were created for non-electronic submission and should not be used. Versions 1.5--1.6 (the first electronic submission versions) contained a |\makeabstract| command and a separate |msuabstract| environment. These have been removed as of version 1.7. Users who are upgrading from earlier versions to version 1.7 do not need to change these commands however but their use will trigger a warning.) Version 2.0 implemented landscape pages; version 2.1 added support for \pkg{hyperref}. Versions 2.2--2.5 mainly accommodated to the ever changing whims of the MSU Graduate School. Version 2.6 fixed some appendix bugs introduced by the previous whim accommodation. Version 2.7 fixed various small spacing issues, fixed a bug which prevented a new chapter page to be a landscape page, added support for the \pkg{apacite} package, and updated degree options. Version 2.8 fixed some spacing and capitalization issues and added support for the the public abstract. Version 2.9 removed subscript/superscript size restrictions, added font size options and made small spacing changes to appease the thesis office.
\section{Acknowledgements}
Thanks to Lars Madsen, Ulrike Fischer and Peter Wilson for help with setting up parts of the memoir code for versions 1.0--1.4 (now eliminated due to changed requirements). Thanks to Wolfgang Sternefeld for supplying the \pkg{linguex} spacing fix code, Leo Liu for the landscape page numbering code, which greatly simplified my original version, and Florent Chervet for the hyperref code. Thanks also to the following students who have reported problems over the years: Irina Agafonova, Ali Al-jiboory, Dmitriy Bryndin, Greg Christian, Kyle Crayne, Matt Husband, Changkuk Jung, Adam Liter, William Muir, Adam Soliman, Alicia Parrish, Neil ver Planck, Michael Wojcik, Eremey Valetov, Matthew Vincent and Yisu Zhou. A special thank you to Non Thongprong who graciously provided a copy of his entire thesis which allowed me to debug some especially subtle spacing inconsistencies.
diff --git a/macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.tex b/macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.tex
index c0ef1706b7..926c2a5093 100644
--- a/macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.tex
+++ b/macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.tex
@@ -1,5 +1,5 @@
% This is a template for use with the MSU Thesis class
-% Vesion 2.8 2017/12/13
+% Vesion 2.9c 2021/05/07
%
% Class options:
%[PhD] Doctor of Philosophy (default)
@@ -31,6 +31,8 @@
% for a horrendous looking, but possibly required table of contents, use the [boldtoc] option
%
% If you have large tables/figures that need to be in landscape mode, add the [lscape] option
+%
+% The class accepts 12pt, 11pt or 10pt font size options. For Times New Roman use 12pt (default).
% This is standard fontenc/inputenc for pdflatex
% If you use LuaLaTeX or XeLaTeX you should replace this with the fontspec package
@@ -48,7 +50,7 @@
\title{The syntax and semantics of phonology}
\author{Joe Linguist}
\fieldofstudy{Linguistics} % This should be in sentence case
-\date{2017}
+\date{2021}
% If you want a dedication page, specify the text of the dedication here and uncomment the next command.
%
diff --git a/macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.pdf b/macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.pdf
index 994c15adc0..7e4e651ae8 100644
--- a/macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.pdf
+++ b/macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.pdf
Binary files differ
diff --git a/macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.tex b/macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.tex
index fe74407b75..b6c8f12d8d 100644
--- a/macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.tex
+++ b/macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.tex
@@ -1,5 +1,5 @@
% !TEX TS-program = pdflatexmk
-% v2.8 Testfile
+% v2.9c Testfile
\listfiles
\documentclass[lscape]{msu-thesis}
@@ -11,7 +11,7 @@
\usepackage{amsmath}
%
\usepackage[]{natbib}
-\bibliographystyle{unified}
+\bibliographystyle{apalike}
% If you need newlines in your title, you must use \protect\\
@@ -19,7 +19,7 @@
\author{Joe Linguist}
\fieldofstudy{Linguistics}
\dedication{This thesis is dedicated to someone.}
-\date{2017}
+\date{2021}
\usepackage{listings}
\lstset{language=TeX,basicstyle={\ttfamily}}
\usepackage{lipsum}
diff --git a/macros/latex/contrib/msu-thesis/samples/unified.bst b/macros/latex/contrib/msu-thesis/samples/unified.bst
deleted file mode 100644
index 80d9add02d..0000000000
--- a/macros/latex/contrib/msu-thesis/samples/unified.bst
+++ /dev/null
@@ -1,1550 +0,0 @@
-%%% This is unified.bst, made by Bridget Samuels. It is based on sp.bst (v1.9+)
-%%% coded by Kai von Fintel as the house style for bibliographies in the journal
-%%% Semantics and Pragmatics. The style is based on a style generated
-%%% with custom-bib/merlin.mbs, a system for customizing bibliographic styles
-%%% created by Patrick W Daly. There have been some hand-coded adjustments to that
-%%% style to get the style closer to the Unified Style Sheet for Linguistics Journals.
-%%%
-%%% Version 1.2 [6 Mar 2010] Improved handling of multiple non-numerical year items by the same author. Should now output, e.g., "To appear(a)"
-%%% Version 1.1 [2 Feb 2010] Added comma before vol.
-%%% Version 1.0 [22 Aug 2009] Changes from sp.bst include conforming to the Unified
-%%% Style Sheet format for PhD & MA theses and citing URLs for online materials (use
-%%% misc or unpublished as the category).
-%%
-
-ENTRY
- { address
- author
- booktitle
- chapter
- doi
- edition
- editor
- eid
- howpublished
- institution
- journal
- key
- month
- note
- number
- organization
- pages
- publisher
- school
- series
- title
- type
- url
- volume
- year
- }
- {}
- { label extra.label sort.label short.list }
-INTEGERS { output.state before.all mid.sentence after.sentence after.block }
-FUNCTION {init.state.consts}
-{ #0 'before.all :=
- #1 'mid.sentence :=
- #2 'after.sentence :=
- #3 'after.block :=
-}
-STRINGS { s t}
-FUNCTION {output.nonnull}
-{ 's :=
- output.state mid.sentence =
- { " " * write$ }
- { output.state after.block =
- { add.period$ write$
- newline$
- "\newblock " write$
- }
- { output.state before.all =
- 'write$
- { add.period$ " " * write$ }
- if$
- }
- if$
- mid.sentence 'output.state :=
- }
- if$
- s
-}
-FUNCTION {output}
-{ duplicate$ empty$
- 'pop$
- 'output.nonnull
- if$
-}
-FUNCTION {output.check}
-{ 't :=
- duplicate$ empty$
- { pop$ "empty " t * " in " * cite$ * warning$ }
- 'output.nonnull
- if$
-}
-FUNCTION {fin.entry}
-{ add.period$
- write$
- newline$
-}
-
-FUNCTION {new.block}
-{ output.state before.all =
- 'skip$
- { after.block 'output.state := }
- if$
-}
-FUNCTION {new.sentence}
-{ output.state after.block =
- 'skip$
- { output.state before.all =
- 'skip$
- { after.sentence 'output.state := }
- if$
- }
- if$
-}
-FUNCTION {add.blank}
-{ " " * before.all 'output.state :=
-}
-
-FUNCTION {add.colon}
-{ ": " * before.all 'output.state :=
-}
-
-FUNCTION {add.comma}
-{ ", " * before.all 'output.state :=
-}
-
-
-FUNCTION {date.block}
-{
- new.block
-}
-
-FUNCTION {not}
-{ { #0 }
- { #1 }
- if$
-}
-FUNCTION {and}
-{ 'skip$
- { pop$ #0 }
- if$
-}
-FUNCTION {or}
-{ { pop$ #1 }
- 'skip$
- if$
-}
-FUNCTION {new.block.checkb}
-{ empty$
- swap$ empty$
- and
- 'skip$
- 'new.block
- if$
-}
-FUNCTION {field.or.null}
-{ duplicate$ empty$
- { pop$ "" }
- 'skip$
- if$
-}
-FUNCTION {emphasize}
-{ duplicate$ empty$
- { pop$ "" }
- { "\emph{" swap$ * "}" * }
- if$
-}
-FUNCTION {tie.or.space.prefix}
-{ duplicate$ text.length$ #3 <
- { "~" }
- { " " }
- if$
- swap$
-}
-
-FUNCTION {capitalize}
-{ "u" change.case$ "t" change.case$ }
-
-FUNCTION {space.word}
-{ " " swap$ * " " * }
-
-FUNCTION {bbl.and}
-{ "\&"}
-
-FUNCTION {bbl.etal}
-{ "et~al." }
-
-FUNCTION {bbl.editors}
-{ "eds." }
-
-FUNCTION {bbl.editor}
-{ "ed." }
-
-FUNCTION {bbl.edby}
-{ "edited by" }
-
-FUNCTION {bbl.edition}
-{ "edn." }
-
-FUNCTION {bbl.volume}
-{ "vol." }
-
-FUNCTION {bbl.of}
-{ "of" }
-
-FUNCTION {bbl.number}
-{ "no." }
-
-FUNCTION {bbl.nr}
-{ "no." }
-
-FUNCTION {bbl.in}
-{ "in" }
-
-FUNCTION {bbl.pages}
-{ "" }
-
-FUNCTION {bbl.page}
-{ "" }
-
-FUNCTION {bbl.chapter}
-{ "chap." }
-
-FUNCTION {bbl.techrep}
-{ "Tech. Rep." }
-
-FUNCTION {bbl.mthesis}
-{ "MA thesis" }
-
-FUNCTION {bbl.phdthesis}
-{ "dissertation" }
-
-FUNCTION {bbl.first}
-{ "1st" }
-
-FUNCTION {bbl.second}
-{ "2nd" }
-
-FUNCTION {bbl.third}
-{ "3rd" }
-
-FUNCTION {bbl.fourth}
-{ "4th" }
-
-FUNCTION {bbl.fifth}
-{ "5th" }
-
-FUNCTION {bbl.st}
-{ "st" }
-
-FUNCTION {bbl.nd}
-{ "nd" }
-
-FUNCTION {bbl.rd}
-{ "rd" }
-
-FUNCTION {bbl.th}
-{ "th" }
-
-MACRO {jan} {"Jan."}
-
-MACRO {feb} {"Feb."}
-
-MACRO {mar} {"Mar."}
-
-MACRO {apr} {"Apr."}
-
-MACRO {may} {"May"}
-
-MACRO {jun} {"Jun."}
-
-MACRO {jul} {"Jul."}
-
-MACRO {aug} {"Aug."}
-
-MACRO {sep} {"Sep."}
-
-MACRO {oct} {"Oct."}
-
-MACRO {nov} {"Nov."}
-
-MACRO {dec} {"Dec."}
-
-FUNCTION {eng.ord}
-{ duplicate$ "1" swap$ *
- #-2 #1 substring$ "1" =
- { bbl.th * }
- { duplicate$ #-1 #1 substring$
- duplicate$ "1" =
- { pop$ bbl.st * }
- { duplicate$ "2" =
- { pop$ bbl.nd * }
- { "3" =
- { bbl.rd * }
- { bbl.th * }
- if$
- }
- if$
- }
- if$
- }
- if$
-}
-
-FUNCTION {bibinfo.check}
-{ swap$
- duplicate$ missing$
- {
- pop$ pop$
- ""
- }
- { duplicate$ empty$
- {
- swap$ pop$
- }
- { swap$
- pop$
- }
- if$
- }
- if$
-}
-FUNCTION {bibinfo.warn}
-{ swap$
- duplicate$ missing$
- {
- swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
- ""
- }
- { duplicate$ empty$
- {
- swap$ "empty " swap$ * " in " * cite$ * warning$
- }
- { swap$
- pop$
- }
- if$
- }
- if$
-}
-FUNCTION {format.url}
-{ url empty$
- { "" }
- { "\urlprefix\url{" url * "}" * }
- if$
-}
-
-INTEGERS { nameptr namesleft numnames }
-
-
-STRINGS { bibinfo}
-
-FUNCTION {format.names}
-{ 'bibinfo :=
- duplicate$ empty$ 'skip$ {
- 's :=
- "" 't :=
- #1 'nameptr :=
- s num.names$ 'numnames :=
- numnames 'namesleft :=
- { namesleft #0 > }
- { s nameptr
- duplicate$ #1 >
- { "{ff~}{vv~}{ll}{, jj}" }
- { "{vv~}{ll}{, ff}{, jj}" }
- if$
- format.name$
- bibinfo bibinfo.check
- 't :=
- nameptr #1 >
- {
- namesleft #1 >
- { ", " * t * }
- {
- s nameptr "{ll}" format.name$ duplicate$ "others" =
- { 't := }
- { pop$ }
- if$
- t "others" =
- {
- " " * bbl.etal *
- }
- {
- bbl.and
- space.word * t *
- }
- if$
- }
- if$
- }
- 't
- if$
- nameptr #1 + 'nameptr :=
- namesleft #1 - 'namesleft :=
- }
- while$
- } if$
-}
-FUNCTION {format.names.ed}
-{
- 'bibinfo :=
- duplicate$ empty$ 'skip$ {
- 's :=
- "" 't :=
- #1 'nameptr :=
- s num.names$ 'numnames :=
- numnames 'namesleft :=
- { namesleft #0 > }
- { s nameptr
- "{ff~}{vv~}{ll}{, jj}"
- format.name$
- bibinfo bibinfo.check
- 't :=
- nameptr #1 >
- {
- namesleft #1 >
- { ", " * t * }
- {
- s nameptr "{ll}" format.name$ duplicate$ "others" =
- { 't := }
- { pop$ }
- if$
- t "others" =
- {
-
- " " * bbl.etal *
- }
- {
- bbl.and
- space.word * t *
- }
- if$
- }
- if$
- }
- 't
- if$
- nameptr #1 + 'nameptr :=
- namesleft #1 - 'namesleft :=
- }
- while$
- } if$
-}
-FUNCTION {format.key}
-{ empty$
- { key field.or.null }
- { "" }
- if$
-}
-
-FUNCTION {format.authors}
-{ author "author" format.names
-}
-FUNCTION {get.bbl.editor}
-{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }
-
-FUNCTION {format.editors}
-{ editor "editor" format.names duplicate$ empty$ 'skip$
- {
- " " *
- get.bbl.editor
- "(" swap$ * ")" *
- *
- }
- if$
-}
-FUNCTION {format.doi}
-{ doi "doi" bibinfo.check
- duplicate$ empty$ 'skip$
- {
- new.block
- "\doi{" swap$ * "}" *
- }
- if$
-}
-FUNCTION {format.note}
-{
- note empty$
- { "" }
- { note #1 #1 substring$
- duplicate$ "{" =
- 'skip$
- { output.state mid.sentence =
- { "l" }
- { "u" }
- if$
- change.case$
- }
- if$
- note #2 global.max$ substring$ * "note" bibinfo.check
- }
- if$
-}
-
-FUNCTION {format.title}
-{ title
- duplicate$ empty$ 'skip$
- { "t" change.case$ }
- if$
- "title" bibinfo.check
-}
-FUNCTION {format.full.names}
-{'s :=
- "" 't :=
- #1 'nameptr :=
- s num.names$ 'numnames :=
- numnames 'namesleft :=
- { namesleft #0 > }
- { s nameptr
- "{vv~}{ll}" format.name$
- 't :=
- nameptr #1 >
- {
- namesleft #1 >
- { ", " * t * }
- {
- s nameptr "{ll}" format.name$ duplicate$ "others" =
- { 't := }
- { pop$ }
- if$
- t "others" =
- {
- " " * bbl.etal *
- }
- {
- bbl.and
- space.word * t *
- }
- if$
- }
- if$
- }
- 't
- if$
- nameptr #1 + 'nameptr :=
- namesleft #1 - 'namesleft :=
- }
- while$
-}
-
-FUNCTION {author.editor.key.full}
-{ author empty$
- { editor empty$
- { key empty$
- { cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { editor format.full.names }
- if$
- }
- { author format.full.names }
- if$
-}
-
-FUNCTION {author.key.full}
-{ author empty$
- { key empty$
- { cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { author format.full.names }
- if$
-}
-
-FUNCTION {editor.key.full}
-{ editor empty$
- { key empty$
- { cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { editor format.full.names }
- if$
-}
-
-FUNCTION {make.full.names}
-{ type$ "book" =
- type$ "inbook" =
- or
- 'author.editor.key.full
- { type$ "proceedings" =
- 'editor.key.full
- 'author.key.full
- if$
- }
- if$
-}
-
-FUNCTION {output.bibitem}
-{ newline$
- "\bibitem[{" write$
- label write$
- ")" make.full.names duplicate$ short.list =
- { pop$ }
- { * }
- if$
- "}]{" * write$
- cite$ write$
- "}" write$
- newline$
- ""
- before.all 'output.state :=
-}
-
-FUNCTION {n.dashify}
-{
- 't :=
- ""
- { t empty$ not }
- { t #1 #1 substring$ "-" =
- { t #1 #2 substring$ "--" = not
- { "--" *
- t #2 global.max$ substring$ 't :=
- }
- { { t #1 #1 substring$ "-" = }
- { "-" *
- t #2 global.max$ substring$ 't :=
- }
- while$
- }
- if$
- }
- { t #1 #1 substring$ *
- t #2 global.max$ substring$ 't :=
- }
- if$
- }
- while$
-}
-
-FUNCTION {word.in}
-{ bbl.in capitalize
- " " * }
-
-FUNCTION {format.date}
-{ year "year" bibinfo.check duplicate$ empty$
- {
- "empty year in " cite$ * "; set to ????" * warning$
- pop$ "????"
- }
- 'skip$
- if$
- extra.label *
- before.all 'output.state :=
- after.sentence 'output.state :=
-}
-FUNCTION {format.btitle}
-{ title "title" bibinfo.check
- duplicate$ empty$ 'skip$
- {
- "t" change.case$
- emphasize
- }
- if$
-}
-FUNCTION {either.or.check}
-{ empty$
- 'pop$
- { "can't use both " swap$ * " fields in " * cite$ * warning$ }
- if$
-}
-FUNCTION {format.bvolume}
-{ volume empty$
- { "" }
- { add.comma bbl.volume volume tie.or.space.prefix
- "volume" bibinfo.check * *
- }
- if$
-}
-FUNCTION {format.number.series}
- { number empty$
- { series field.or.null }
- { series empty$
- { number "number" bibinfo.check }
- { add.blank "(" *
- series "series" bibinfo.check *
- number tie.or.space.prefix "number" bibinfo.check *
- ")" *
- }
- if$
- }
- if$
- }
-FUNCTION {is.num}
-{ chr.to.int$
- duplicate$ "0" chr.to.int$ < not
- swap$ "9" chr.to.int$ > not and
-}
-
-FUNCTION {extract.num}
-{ duplicate$ 't :=
- "" 's :=
- { t empty$ not }
- { t #1 #1 substring$
- t #2 global.max$ substring$ 't :=
- duplicate$ is.num
- { s swap$ * 's := }
- { pop$ "" 't := }
- if$
- }
- while$
- s empty$
- 'skip$
- { pop$ s }
- if$
-}
-
-FUNCTION {convert.edition}
-{ extract.num "l" change.case$ 's :=
- s "first" = s "1" = or
- { bbl.first 't := }
- { s "second" = s "2" = or
- { bbl.second 't := }
- { s "third" = s "3" = or
- { bbl.third 't := }
- { s "fourth" = s "4" = or
- { bbl.fourth 't := }
- { s "fifth" = s "5" = or
- { bbl.fifth 't := }
- { s #1 #1 substring$ is.num
- { s eng.ord 't := }
- { edition 't := }
- if$
- }
- if$
- }
- if$
- }
- if$
- }
- if$
- }
- if$
- t
-}
-
-FUNCTION {format.edition}
-{ edition duplicate$ empty$ 'skip$
- {
- convert.edition
- output.state mid.sentence =
- { "l" }
- { "t" }
- if$ change.case$
- "edition" bibinfo.check
- " " * bbl.edition *
- }
- if$
-}
-INTEGERS { multiresult }
-FUNCTION {multi.page.check}
-{ 't :=
- #0 'multiresult :=
- { multiresult not
- t empty$ not
- and
- }
- { t #1 #1 substring$
- duplicate$ "-" =
- swap$ duplicate$ "," =
- swap$ "+" =
- or or
- { #1 'multiresult := }
- { t #2 global.max$ substring$ 't := }
- if$
- }
- while$
- multiresult
-}
-FUNCTION {format.pages}
-{ pages duplicate$ empty$ 'skip$
- { duplicate$ multi.page.check
- {
- n.dashify
- }
- {
- }
- if$
- "pages" bibinfo.check
- }
- if$
-}
-FUNCTION {format.journal.pages}
-{ pages duplicate$ empty$ 'pop$
- { swap$ duplicate$ empty$
- { pop$ pop$ format.pages }
- {
- ". " *
- swap$
- n.dashify
- "pages" bibinfo.check
- *
- }
- if$
- }
- if$
-}
-FUNCTION {format.journal.eid}
-{ eid "eid" bibinfo.check
- duplicate$ empty$ 'pop$
- { swap$ duplicate$ empty$ 'skip$
- {
- ". " *
- }
- if$
- swap$ *
- }
- if$
-}
-FUNCTION {format.vol.num.pages}
-{ volume field.or.null
- duplicate$ empty$ 'skip$
- {
- "volume" bibinfo.check
- }
- if$
- number "number" bibinfo.check duplicate$ empty$ 'skip$
- {
- swap$ duplicate$ empty$
- { "there's a number but no volume in " cite$ * warning$ }
- 'skip$
- if$
- swap$
- "(" swap$ * ")" *
- }
- if$ *
- eid empty$
- { format.journal.pages }
- { format.journal.eid }
- if$
-}
-
-FUNCTION {format.chapter.pages}
-{ chapter empty$
- 'format.pages
- { type empty$
- { bbl.chapter }
- { type "l" change.case$
- "type" bibinfo.check
- }
- if$
- chapter tie.or.space.prefix
- "chapter" bibinfo.check
- * *
- pages empty$
- 'skip$
- { ", " * format.pages * }
- if$
- }
- if$
-}
-
-FUNCTION {format.booktitle}
-{
- booktitle "booktitle" bibinfo.check
- "t" change.case$
- emphasize
-}
-FUNCTION {format.in.ed.booktitle}
-{ format.booktitle duplicate$ empty$ 'skip$
- {
- editor "editor" format.names.ed duplicate$ empty$ 'pop$
- {
- " " *
- get.bbl.editor
- "(" swap$ * "), " *
- * swap$
- * }
- if$
- word.in swap$ *
- }
- if$
-}
-FUNCTION {format.thesis.type}
-{ type duplicate$ empty$
- 'pop$
- { swap$ pop$
- "t" change.case$ "type" bibinfo.check
- }
- if$
-}
-FUNCTION {format.tr.number}
-{ number "number" bibinfo.check
- type duplicate$ empty$
- { pop$ bbl.techrep }
- 'skip$
- if$
- "type" bibinfo.check
- swap$ duplicate$ empty$
- { pop$ "t" change.case$ }
- { tie.or.space.prefix * * }
- if$
-}
-FUNCTION {format.article.crossref}
-{
- word.in
- " \cite{" * crossref * "}" *
-}
-FUNCTION {format.book.crossref}
-{ volume duplicate$ empty$
- { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
- pop$ word.in
- }
- { bbl.volume
- capitalize
- swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
- }
- if$
- " \cite{" * crossref * "}" *
-}
-FUNCTION {format.incoll.inproc.crossref}
-{
- word.in
- " \cite{" * crossref * "}" *
-}
-FUNCTION {format.org.or.pub}
-{ 't :=
- ""
- address empty$ t empty$ and
- 'skip$
- {
- address "address" bibinfo.check *
- t empty$
- 'skip$
- { address empty$
- 'skip$
- { ": " * }
- if$
- t *
- }
- if$
- }
- if$
-}
-FUNCTION {format.publisher.address}
-{ publisher "publisher" bibinfo.warn format.org.or.pub
-}
-
-FUNCTION {format.organization.address}
-{ organization "organization" bibinfo.check format.org.or.pub
-}
-
-FUNCTION {article}
-{ output.bibitem
- format.authors "author" output.check
- author format.key output
- format.date "year" output.check
- date.block
- format.title "title" output.check
- new.block
- crossref missing$
- {
- journal
- "journal" bibinfo.check
- emphasize
- "journal" output.check
- add.blank
- format.vol.num.pages output
- }
- { format.article.crossref output.nonnull
- format.pages output
- }
- if$
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-FUNCTION {book}
-{ output.bibitem
- author empty$
- { format.editors "author and editor" output.check
- editor format.key output
- }
- { format.authors output.nonnull
- crossref missing$
- { "author and editor" editor either.or.check }
- 'skip$
- if$
- }
- if$
- format.date "year" output.check
- date.block
- format.btitle "title" output.check
- crossref missing$
- { format.bvolume output
- format.number.series output
- new.block
- new.sentence
- format.publisher.address output
- }
- {
- new.block
- format.book.crossref output.nonnull
- }
- if$
- format.edition output
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-FUNCTION {booklet}
-{ output.bibitem
- format.authors output
- author format.key output
- format.date "year" output.check
- date.block
- format.title "title" output.check
- new.block
- howpublished "howpublished" bibinfo.check output
- address "address" bibinfo.check output
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-
-FUNCTION {inbook}
-{ output.bibitem
- author empty$
- { format.editors "author and editor" output.check
- editor format.key output
- }
- { format.authors output.nonnull
- crossref missing$
- { "author and editor" editor either.or.check }
- 'skip$
- if$
- }
- if$
- format.date "year" output.check
- date.block
- format.btitle "title" output.check
- crossref missing$
- {
- format.bvolume output
- format.chapter.pages "chapter and pages" output.check
- new.block
- new.sentence
- format.number.series output
- format.publisher.address output
- }
- {
- format.chapter.pages "chapter and pages" output.check
- new.block
- format.book.crossref output.nonnull
- }
- if$
- format.edition output
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-
-FUNCTION {incollection}
-{ output.bibitem
- format.authors "author" output.check
- author format.key output
- format.date "year" output.check
- date.block
- format.title "title" output.check
- new.block
- crossref missing$
- { format.in.ed.booktitle "booktitle" output.check
- format.bvolume output
- format.number.series output
- add.comma
- format.chapter.pages output
- new.sentence
- format.publisher.address output
- format.edition output
- }
- { format.incoll.inproc.crossref output.nonnull
- format.chapter.pages output
- }
- if$
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-FUNCTION {inproceedings}
-{ output.bibitem
- format.authors "author" output.check
- author format.key output
- format.date "year" output.check
- date.block
- format.title "title" output.check
- new.block
- crossref missing$
- { format.in.ed.booktitle "booktitle" output.check
- format.bvolume output
- format.number.series output
- add.comma
- format.pages output
- new.sentence
- publisher empty$
- { format.organization.address output }
- { organization "organization" bibinfo.check output
- format.publisher.address output
- }
- if$
- }
- { format.incoll.inproc.crossref output.nonnull
- format.pages output
- }
- if$
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-FUNCTION {conference} { inproceedings }
-FUNCTION {manual}
-{ output.bibitem
- format.authors output
- author format.key output
- format.date "year" output.check
- date.block
- format.btitle "title" output.check
- organization address new.block.checkb
- organization "organization" bibinfo.check output
- address "address" bibinfo.check output
- format.edition output
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-
-FUNCTION {mastersthesis}
-{ output.bibitem
- format.authors "author" output.check
- author format.key output
- format.date "year" output.check
- date.block
- format.btitle
- "title" output.check
- new.block
- address "address" bibinfo.check output
- school "school" bibinfo.warn output
- bbl.mthesis format.thesis.type output.nonnull
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-
-FUNCTION {misc}
-{ output.bibitem
- format.authors output
- author format.key output
- format.date "year" output.check
- date.block
- format.title output
- new.block
- howpublished "howpublished" bibinfo.check output
- format.doi output
- new.block
- format.note output
- new.block
- format.url output
- fin.entry
-}
-FUNCTION {phdthesis}
-{ output.bibitem
- format.authors "author" output.check
- author format.key output
- format.date "year" output.check
- date.block
- format.btitle
- "title" output.check
- new.block
- address "address" bibinfo.check output
- add.colon
- school "school" bibinfo.warn output
- bbl.phdthesis format.thesis.type output.nonnull
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-
-FUNCTION {proceedings}
-{ output.bibitem
- format.editors output
- editor format.key output
- format.date "year" output.check
- date.block
- format.btitle "title" output.check
- format.bvolume output
- new.sentence
- format.number.series output
- publisher empty$
- { format.organization.address output }
- { organization "organization" bibinfo.check output
- format.publisher.address output
- }
- if$
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-
-FUNCTION {techreport}
-{ output.bibitem
- format.authors "author" output.check
- author format.key output
- format.date "year" output.check
- date.block
- format.title
- "title" output.check
- new.block
- format.tr.number output.nonnull
- institution "institution" bibinfo.warn output
- address "address" bibinfo.check output
- format.doi output
- new.block
- format.url output
- new.block
- format.note output
- fin.entry
-}
-
-FUNCTION {unpublished}
-{ output.bibitem
- format.authors "author" output.check
- author format.key output
- format.date "year" output.check
- date.block
- format.title "title" output.check
- format.doi output
- new.block
- format.note "note" output.check
- new.block
- format.url output
- fin.entry
-}
-
-FUNCTION {default.type} { misc }
-READ
-FUNCTION {sortify}
-{ purify$
- "l" change.case$
-}
-INTEGERS { len }
-FUNCTION {chop.word}
-{ 's :=
- 'len :=
- s #1 len substring$ =
- { s len #1 + global.max$ substring$ }
- 's
- if$
-}
-FUNCTION {format.lab.names}
-{ 's :=
- "" 't :=
- s #1 "{vv~}{ll}" format.name$
- s num.names$ duplicate$
- #2 >
- { pop$
- " " * bbl.etal *
- }
- { #2 <
- 'skip$
- { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
- {
- " " * bbl.etal *
- }
- { bbl.and space.word * s #2 "{vv~}{ll}" format.name$
- * }
- if$
- }
- if$
- }
- if$
-}
-
-FUNCTION {author.key.label}
-{ author empty$
- { key empty$
- { cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { author format.lab.names }
- if$
-}
-
-FUNCTION {author.editor.key.label}
-{ author empty$
- { editor empty$
- { key empty$
- { cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { editor format.lab.names }
- if$
- }
- { author format.lab.names }
- if$
-}
-
-FUNCTION {editor.key.label}
-{ editor empty$
- { key empty$
- { cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { editor format.lab.names }
- if$
-}
-
-FUNCTION {calc.short.authors}
-{ type$ "book" =
- type$ "inbook" =
- or
- 'author.editor.key.label
- { type$ "proceedings" =
- 'editor.key.label
- 'author.key.label
- if$
- }
- if$
- 'short.list :=
-}
-
-FUNCTION {calc.label}
-{ calc.short.authors
- short.list
- "("
- *
- year duplicate$ empty$
- short.list key field.or.null = or
- { pop$ "" }
- 'skip$
- if$
- *
- 'label :=
-}
-
-FUNCTION {sort.format.names}
-{ 's :=
- #1 'nameptr :=
- ""
- s num.names$ 'numnames :=
- numnames 'namesleft :=
- { namesleft #0 > }
- { s nameptr
- "{ll{ }}{ ff{ }}{ jj{ }}"
- format.name$ 't :=
- nameptr #1 >
- {
- " " *
- namesleft #1 = t "others" = and
- { "zzzzz" * }
- { t sortify * }
- if$
- }
- { t sortify * }
- if$
- nameptr #1 + 'nameptr :=
- namesleft #1 - 'namesleft :=
- }
- while$
-}
-
-FUNCTION {sort.format.title}
-{ 't :=
- "A " #2
- "An " #3
- "The " #4 t chop.word
- chop.word
- chop.word
- sortify
- #1 global.max$ substring$
-}
-FUNCTION {author.sort}
-{ author empty$
- { key empty$
- { "to sort, need author or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { author sort.format.names }
- if$
-}
-FUNCTION {author.editor.sort}
-{ author empty$
- { editor empty$
- { key empty$
- { "to sort, need author, editor, or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { editor sort.format.names }
- if$
- }
- { author sort.format.names }
- if$
-}
-FUNCTION {editor.sort}
-{ editor empty$
- { key empty$
- { "to sort, need editor or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { editor sort.format.names }
- if$
-}
-FUNCTION {presort}
-{ calc.label
- label sortify
- " "
- *
- type$ "book" =
- type$ "inbook" =
- or
- 'author.editor.sort
- { type$ "proceedings" =
- 'editor.sort
- 'author.sort
- if$
- }
- if$
- #1 entry.max$ substring$
- 'sort.label :=
- sort.label
- *
- " "
- *
- title field.or.null
- sort.format.title
- *
- #1 entry.max$ substring$
- 'sort.key$ :=
-}
-
-ITERATE {presort}
-SORT
-STRINGS { last.label next.extra }
-INTEGERS { last.extra.num number.label }
-FUNCTION {initialize.extra.label.stuff}
-{ #0 int.to.chr$ 'last.label :=
- "" 'next.extra :=
- #0 'last.extra.num :=
- #0 'number.label :=
-}
-FUNCTION {forward.pass}
-{ last.label label =
- { last.extra.num #1 + 'last.extra.num :=
- last.extra.num int.to.chr$ 'extra.label :=
- }
- { "a" chr.to.int$ 'last.extra.num :=
- "" 'extra.label :=
- label 'last.label :=
- }
- if$
- number.label #1 + 'number.label :=
-}
-FUNCTION {reverse.pass}
-{ next.extra "b" =
- { "a" 'extra.label := }
- 'skip$
- if$
- extra.label 'next.extra :=
- extra.label
- duplicate$ empty$
- 'skip$
- { year field.or.null #-1 #1 substring$ chr.to.int$ #65 <
- { "{\natexlab{" swap$ * "}}" * }
- { "{(\natexlab{" swap$ * "})}" * }
- if$ }
- if$
- 'extra.label :=
- label extra.label * 'label :=
-}
-EXECUTE {initialize.extra.label.stuff}
-ITERATE {forward.pass}
-REVERSE {reverse.pass}
-FUNCTION {bib.sort.order}
-{ sort.label
- " "
- *
- year field.or.null sortify
- *
- " "
- *
- title field.or.null
- sort.format.title
- *
- #1 entry.max$ substring$
- 'sort.key$ :=
-}
-ITERATE {bib.sort.order}
-SORT
-FUNCTION {begin.bib}
-{ preamble$ empty$
- 'skip$
- { preamble$ write$ newline$ }
- if$
- "\begin{thebibliography}{" number.label int.to.str$ * "}" *
- write$ newline$
- "\providecommand{\natexlab}[1]{#1}"
- write$ newline$
- "\providecommand{\url}[1]{#1}"
- write$ newline$
- "\providecommand{\urlprefix}{}"
- write$ newline$
- "\expandafter\ifx\csname urlstyle\endcsname\relax"
- write$ newline$
- " \providecommand{\doi}[1]{doi:\discretionary{}{}{}#1}\else"
- write$ newline$
- " \providecommand{\doi}{doi:\discretionary{}{}{}\begingroup \urlstyle{rm}\Url}\fi"
- write$ newline$
-}
-EXECUTE {begin.bib}
-EXECUTE {init.state.consts}
-ITERATE {call.type$}
-FUNCTION {end.bib}
-{ newline$
- "\end{thebibliography}" write$ newline$
-}
-EXECUTE {end.bib}