summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/se2thesis
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2024-02-23 03:02:16 +0000
committerNorbert Preining <norbert@preining.info>2024-02-23 03:02:16 +0000
commite7a321bba289c40f39563c19bbeac355f7c0eeeb (patch)
treea4ddcf771f1c706b6a8c8aed27ee2241ff0b43ac /macros/latex/contrib/se2thesis
parent286abb7dcd6c03d7edcd3d3435bb97448074c3cf (diff)
CTAN sync 202402230302
Diffstat (limited to 'macros/latex/contrib/se2thesis')
-rw-r--r--macros/latex/contrib/se2thesis/CHANGELOG.md23
-rw-r--r--macros/latex/contrib/se2thesis/se2colors.dtx2
-rw-r--r--macros/latex/contrib/se2thesis/se2fonts.dtx4
-rw-r--r--macros/latex/contrib/se2thesis/se2packages.dtx116
-rw-r--r--macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.pdfbin1101796 -> 231038 bytes
-rw-r--r--macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.tex8
-rw-r--r--macros/latex/contrib/se2thesis/se2thesis.dtx54
-rw-r--r--macros/latex/contrib/se2thesis/se2thesis.pdfbin328749 -> 350567 bytes
-rw-r--r--macros/latex/contrib/se2thesis/test.pdfbin1102663 -> 0 bytes
-rw-r--r--macros/latex/contrib/se2thesis/test.tex107
10 files changed, 175 insertions, 139 deletions
diff --git a/macros/latex/contrib/se2thesis/CHANGELOG.md b/macros/latex/contrib/se2thesis/CHANGELOG.md
index 28d32ce95b..ed9739a1ba 100644
--- a/macros/latex/contrib/se2thesis/CHANGELOG.md
+++ b/macros/latex/contrib/se2thesis/CHANGELOG.md
@@ -7,6 +7,28 @@ and this project adheres to
## [Unreleased]
+## [v3.3.0] – 2024–02–22
+
+### Added
+
+- Enhance the options for bibliography styles, one can now choose between
+ `alphabetic` and `numeric` style. The former loads the default BibLaTeX
+ `alphabetic` style, the latter uses ACM's numeric style.
+- For the new numeric style, we support an enhanced `\autocite` macro, which
+ typesets the citation in the margin column for the first appearance per
+ chapter.
+- Add thesis-type option `phdeng` for a doctoral degree in engineering.
+
+### Changed
+
+- The default citation style, when setting `biblatex=true` while loading the
+ `se2packages` package is now `numeric` based on the ACM numeric style instead
+ of `alphabetic`. The latter can now be chosen explicitly.
+ See [issue #7](https://github.com/se2p/se2thesis/issues/7) for a discussion
+ on the general decision.
+
+### Changed
+
## [v3.2.0] – 2023–09–12
### Changed
@@ -150,6 +172,7 @@ These changes might be breaking changes!
### Added
- First official release
+[v3.3.0]: https://github.com/se2p/se2thesis/compare/v3.3.0...v3.2.0
[v3.2.0]: https://github.com/se2p/se2thesis/compare/v3.2.0...v3.1.0
[v3.1.0]: https://github.com/se2p/se2thesis/compare/v3.1.0...v3.0.0
[v3.0.0]: https://github.com/se2p/se2thesis/compare/v3.0.0...v2.1.0
diff --git a/macros/latex/contrib/se2thesis/se2colors.dtx b/macros/latex/contrib/se2thesis/se2colors.dtx
index 4460b22889..35bd60d0d3 100644
--- a/macros/latex/contrib/se2thesis/se2colors.dtx
+++ b/macros/latex/contrib/se2thesis/se2colors.dtx
@@ -231,7 +231,7 @@
%
% Identify the package and give the overall version information.
% \begin{macrocode}
-\ProvidesExplPackage {se2colors} {2023-09-12} {3.2.0}
+\ProvidesExplPackage {se2colors} {2024-02-22} {3.3.0}
{A colour support package for the se2thesis bundle}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/se2thesis/se2fonts.dtx b/macros/latex/contrib/se2thesis/se2fonts.dtx
index e3ad0016da..4f127a4cc3 100644
--- a/macros/latex/contrib/se2thesis/se2fonts.dtx
+++ b/macros/latex/contrib/se2thesis/se2fonts.dtx
@@ -95,7 +95,7 @@
% \begin{itemize}
% \item {\fontspec{LibertinusSerif}An example text in Libertinus Serif}
% \item {\fontspec{LibertinusSans}An example text in Libertinus Sans}
-% \item {\fontspec{inconsolata}An example text in Inconsolata}
+% \item {\fontspec{InconsolataLGCNerdFont}An example text in Inconsolata}
% \end{itemize}
%
% The package provides additional helper functions
@@ -151,7 +151,7 @@
%
% Identify the package and give the overall version information.
% \begin{macrocode}
-\ProvidesExplPackage {se2fonts} {2023-09-12} {3.2.0}
+\ProvidesExplPackage {se2fonts} {2024-02-22} {3.3.0}
{A font-selection support package for the se2thesis bundle}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/se2thesis/se2packages.dtx b/macros/latex/contrib/se2thesis/se2packages.dtx
index f1a530ba4d..92c1771a92 100644
--- a/macros/latex/contrib/se2thesis/se2packages.dtx
+++ b/macros/latex/contrib/se2thesis/se2packages.dtx
@@ -324,11 +324,23 @@
% We provide a load-time option to load and configure \pkg{biblatex}.
% \begin{function}{biblatex}
% \begin{syntax}
-% |biblatex| = \meta{true,false}
+% |biblatex| = \meta{true,false,alphabetic,numeric}
% \end{syntax}
% Decides whether the package loads \pkg{biblatex}
% and sets the options for \pkg{biblatex} to the values we recommend.
% The default value is |false|, set it to |true| to load \pkg{biblatex}.
+%
+% By setting the value to |alphabetic|, \pkg{se2packages} sets the citation
+% style for \pkg{biblatex} to its alphabetic one; selecting |numeric| loads
+% the numeric style as provided by the \pkg{acmart} bundle of the ACM. The
+% value |true| also loads the latter style as a default.
+%
+% Note that for the |numeric| style, we provide an enhanced \cs{autocite}
+% command, which does not only print the citation mark in the text but also
+% a short entry listing of the bibliography entry in the margin column of the
+% page. This entry is only printed for the first occurence of a citation per
+% chapter to not clutter the margin column too much. The other citation
+% commands from \pkg{biblatex} work as usual.
% \end{function}
%
% Additionally,
@@ -431,7 +443,7 @@
%
% Identify the package and give the overall version information.
% \begin{macrocode}
-\ProvidesExplPackage {se2packages} {2023-09-12} {3.2.0}
+\ProvidesExplPackage {se2packages} {2024-02-22} {3.3.0}
{Supporting packages for the se2thesis bundle}
% \end{macrocode}
%
@@ -475,10 +487,10 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\l_@@_biblatex_bool}
+% \begin{macro}{\l_@@_biblatex_tl}
% Whether or not to load and configure \pkg{biblatex}.
% \begin{macrocode}
-\bool_new:N \l_@@_biblatex_bool
+\tl_new:N \l_@@_biblatex_tl
% \end{macrocode}
% \end{macro}
%
@@ -538,7 +550,7 @@
listings .bool_gset:N = \l_@@_listings_bool,
listings .initial:n = false,
- biblatex .bool_gset:N = \l_@@_biblatex_bool,
+ biblatex .tl_gset:N = \l_@@_biblatex_tl,
biblatex .initial:n = false,
selnolig .bool_gset:N = \l_@@_selnolig_bool,
@@ -609,7 +621,7 @@
\bool_gset_true:N \l_@@_selnolig_bool
\bool_gset_true:N \l_@@_luawidowcontrol_bool
\bool_gset_true:N \l_@@_microtype_bool
- \bool_gset_true:N \l_@@_biblatex_bool
+ \tl_gset:Nn \l_@@_biblatex_bool {true}
\bool_gset_true:N \l_@@_cleveref_bool
}
% \end{macrocode}
@@ -756,13 +768,14 @@
%
% Conditionally load and configure the \pkg{biblatex} package.
% \begin{macrocode}
-\bool_if:NT \l_@@_biblatex_bool
+\tl_if_eq:NnT \l_@@_biblatex_tl {alphabetic}
{
\msg_info:nnn { seiipackages } { load-package } { biblatex }
\PassOptionsToPackage
{
backend=biber,
backref=true,
+ datamodel=software,
giveninits=true,
hyperref=auto,
maxnames=100,
@@ -771,6 +784,95 @@
style=alphabetic,
} { biblatex }
\RequirePackage{biblatex}
+ \RequirePackage{software-biblatex}
+ \ExecuteBibliographyOptions{
+ halid=false,
+ swhid=true,
+ shortswhid=false,
+ swlabels=true,
+ vcs=true,
+ license=true,
+ }
+ }
+
+\bool_new:N \l_@@_biblatex_numeric_variants_bool
+\tl_if_eq:NnT \l_@@_biblatex_tl {true}
+ {
+ \bool_gset_true:N \l_@@_biblatex_numeric_variants_bool
+ }
+\tl_if_eq:NnT \l_@@_biblatex_tl {numeric}
+ {
+ \bool_gset_true:N \l_@@_biblatex_numeric_variants_bool
+ }
+
+\bool_if:NT \l_@@_biblatex_numeric_variants_bool
+ {
+ \msg_info:nnn { seiipackages } { load-package } { biblatex }
+ \PassOptionsToPackage
+ {
+ backend=biber,
+ backref=true,
+ citereset=chapter+,
+ citetracker=context,
+ giveninits=true,
+ hyperref=auto,
+ sorting=nyt,
+ datamodel=acmdatamodel,
+ style=acmnumeric,
+ } { biblatex }
+ \RequirePackage{biblatex}
+ \RequirePackage{ragged2e}
+ \RequirePackage[mark=arabic,shape=up]{sidenotesplus}
+
+ \newbibmacro{cite:authoryear}{%
+ \printtext[labelnumberwidth]{%
+ \usebibmacro{cite}%
+ }%
+ \setunit{\addspace}%
+ \printnames{labelname}%
+ \setunit{\printdelim{nameyeardelim}}%
+ \begingroup
+ \DeclareFieldFormat{date}{\mkbibparens{##1}}%
+ \printdate
+ \endgroup
+ \setunit*{\addcomma\space}%%% NEW
+ \printfield[title]{labeltitle}%%% NEW
+ }
+
+ \newrobustcmd*{\makebibmarginnote}[1]{%
+ \sidenote*{\blxmkbibnote{foot}{#1}}}
+
+ \DeclareCiteCommand{\maycite}[\makebibmarginnote]
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite:authoryear}}
+ {\multicitedelim}
+ {\usebibmacro{postnote}}
+
+ \newcommand*{\cbx@savedcites}{}
+
+ \newcommand*{\cbx@margcitewrap}[1]{%
+ \global\let\cbx@savedcites\empty
+ \mkbibbrackets{#1}%
+ \cbx@savedcites
+ }
+
+ \DeclareCiteCommand{\margincite}[\cbx@margcitewrap]
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}%
+ \ifciteseen
+ {}
+ {\xappto\cbx@savedcites{\noexpand\maycite{\thefield{entrykey}}}}}
+ {\multicitedelim}
+ {\usebibmacro{postnote}}
+
+ \DeclareMultiCiteCommand{\margincites}[\cbx@margcitewrap]{\margincite}{\multicitedelim}
+
+ \DeclareAutoCiteCommand{margin}{\margincite}{\margincites}
+ \ExecuteBibliographyOptions{autocite=margin}
+ \newcommand{\bibliofont}{\footnotesize}
+ \DeclareFieldFormat{titlecase}{#1}% Preserve capitalisation of titles
}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.pdf b/macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.pdf
index a6a215ff14..4750e14e31 100644
--- a/macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.pdf
+++ b/macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.pdf
Binary files differ
diff --git a/macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.tex b/macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.tex
index 106aa4b541..15000000b2 100644
--- a/macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.tex
+++ b/macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.tex
@@ -3,7 +3,7 @@
open=right,%
twoside=true,%
paper=a4,%
- logofile={logo.png},%
+ logofile={logo.pdf},%
thesistype=master,%
UKenglish,%
]{se2thesis}
@@ -18,7 +18,7 @@
selnolig=true,%
widowcontrol=false,%
microtype=true,%
- biblatex=true,%
+ biblatex=numeric,%
cleveref=true,%
]{se2packages}
@@ -72,7 +72,7 @@
\section{Further Examples}
-We could reference the \TeX{} book~\cite{Knu86}.
+We could reference the \TeX{} book~\autocite{Knu86}.
\begin{resq}
What is \(41 + 1\)?
@@ -82,6 +82,8 @@ We could reference the \TeX{} book~\cite{Knu86}.
It's 42, obviously!
\end{summary}
+And using the auto-cite functionality to cite Knuth~\autocite{Knu86}.
+
\backmatter
\printbibliography
diff --git a/macros/latex/contrib/se2thesis/se2thesis.dtx b/macros/latex/contrib/se2thesis/se2thesis.dtx
index 7f1fbbdde0..832c1bf225 100644
--- a/macros/latex/contrib/se2thesis/se2thesis.dtx
+++ b/macros/latex/contrib/se2thesis/se2thesis.dtx
@@ -225,7 +225,8 @@
% |bachelor| for a bachelor thesis, |bachelorproposal| for a proposal to
% a bachelor thesis, |master| for a master thesis, |masterproposal| for
% a proposal to a master thesis, |phdproposal| for a proposal to a PhD thesis,
-% and |phd| for a PhD thesis.
+% |phd| for a PhD thesis in the natural sciences and |phdeng| for a PhD thesis
+% in engineering.
% \end{function}
%
% \begin{function}{colormode}
@@ -585,7 +586,7 @@
%
% Identify the class and give the overall version number.
% \begin{macrocode}
-\ProvidesExplClass {se2thesis} {2023-09-12} {3.2.0}
+\ProvidesExplClass {se2thesis} {2024-02-22} {3.3.0}
{A thesis class for the Chair of Software Engineering II}
% \end{macrocode}
%
@@ -759,6 +760,7 @@
\tl_gset:Nn \l_@@_thesis_type_tl {masterproposal}
},
thesistype / phd .code:n = \tl_gset:Nn \l_@@_thesis_type_tl {phd},
+ thesistype / phdeng .code:n = \tl_gset:Nn \l_@@_thesis_type_tl {phdeng},
thesistype / phdproposal .code:n = {
\tl_gset:Nn \l_@@_thesis_type_tl {phdproposal}
},
@@ -1243,23 +1245,37 @@
in~ partial~ fulfillment~ of~ obtaining\\
the~ degree~ of~ a~ Doctor~ of~ Natural~ Sciences
} {
- \tl_if_eq:NnT \l_@@_thesis_type_tl { bachelor }
- { \GetTranslation{Bachelor-thesis} }
- \tl_if_eq:NnT \l_@@_thesis_type_tl { bachelorproposal }
- { \GetTranslation{Bachelor-thesis-proposal} }
- \tl_if_eq:NnT \l_@@_thesis_type_tl { master }
- { \GetTranslation{Master-thesis} }
- \tl_if_eq:NnT \l_@@_thesis_type_tl { masterproposal }
- { \GetTranslation{Master-thesis-proposal} }
- \tl_if_eq:NnT \l_@@_thesis_type_tl { phdproposal }
- { \GetTranslation{PhD-thesis-proposal} }
- \tl_if_empty:NF \l_@@_degreeprogramme_tl
+ \tl_if_eq:NnTF \l_@@_thesis_type_tl { phdeng }
{
- \ in~\l_@@_degreeprogramme_tl
+ Dissertation~ zur~ Erlangung~ des~ Doktorgrades\\
+ der~ Ingenieurwissenschaften~ (Dr.-Ing.)\\
+ eingereicht~ an~ der~ Fakultät~ für~ Informatik~ und~ Mathematik\\
+ der~ Universität~ Passau\\
+ \rule{\textwidth}{.1pt}\\
+ Dissertation~ submitted~ to\\
+ the~ Faculty~ of~ Computer~ Science~ and~ Mathematics\\
+ of~ the~ University~ of~ Passau\\
+ in~ partial~ fulfillment~ of~ obtaining\\
+ the~ degree~ of~ a~ Doctor~ of~ Engineering
+ } {
+ \tl_if_eq:NnT \l_@@_thesis_type_tl { bachelor }
+ { \GetTranslation{Bachelor-thesis} }
+ \tl_if_eq:NnT \l_@@_thesis_type_tl { bachelorproposal }
+ { \GetTranslation{Bachelor-thesis-proposal} }
+ \tl_if_eq:NnT \l_@@_thesis_type_tl { master }
+ { \GetTranslation{Master-thesis} }
+ \tl_if_eq:NnT \l_@@_thesis_type_tl { masterproposal }
+ { \GetTranslation{Master-thesis-proposal} }
+ \tl_if_eq:NnT \l_@@_thesis_type_tl { phdproposal }
+ { \GetTranslation{PhD-thesis-proposal} }
+ \tl_if_empty:NF \l_@@_degreeprogramme_tl
+ {
+ \ in~\l_@@_degreeprogramme_tl
+ }
+ \par
+ \tl_if_empty:NF \l_@@_department_tl { \l_@@_department_tl \par }
+ \tl_if_empty:NF \l_@@_institute_tl { \l_@@_institute_tl \par }
}
- \par
- \tl_if_empty:NF \l_@@_department_tl { \l_@@_department_tl \par }
- \tl_if_empty:NF \l_@@_institute_tl { \l_@@_institute_tl \par }
}
\end{center}\par\bigskip
% \end{macrocode}
@@ -1603,7 +1619,7 @@
% We provide the following English translations.
%
% \begin{macrocode}
-\ProvideDictionaryFor{English}{se2translations}[2023/09/12]
+\ProvideDictionaryFor{English}{se2translations}[2024/02/22]
\ProvideDictTranslation{abstract}{abstract}
\ProvideDictTranslation{Abstract}{Abstract}
\ProvideDictTranslation{acknowledgement}{acknowledgement}
@@ -1654,7 +1670,7 @@
% We provide the following German translations.
%
% \begin{macrocode}
-\ProvideDictionaryFor{German}{se2translations}[2023/09/12]
+\ProvideDictionaryFor{German}{se2translations}[2024/02/22]
\ProvideDictTranslation{abstract}{Zusammenfassung}
\ProvideDictTranslation{Abstract}{Zusammenfassung}
\ProvideDictTranslation{acknowledgement}{Danksagung}
diff --git a/macros/latex/contrib/se2thesis/se2thesis.pdf b/macros/latex/contrib/se2thesis/se2thesis.pdf
index 6e771da96d..dcc165ba6a 100644
--- a/macros/latex/contrib/se2thesis/se2thesis.pdf
+++ b/macros/latex/contrib/se2thesis/se2thesis.pdf
Binary files differ
diff --git a/macros/latex/contrib/se2thesis/test.pdf b/macros/latex/contrib/se2thesis/test.pdf
deleted file mode 100644
index d33ba70794..0000000000
--- a/macros/latex/contrib/se2thesis/test.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/se2thesis/test.tex b/macros/latex/contrib/se2thesis/test.tex
deleted file mode 100644
index 79694db902..0000000000
--- a/macros/latex/contrib/se2thesis/test.tex
+++ /dev/null
@@ -1,107 +0,0 @@
-\documentclass[%
- chapterprefix=true,%
- open=right,%
- twoside=true,%
- logofile={logo.png},%
- thesistype=master,%
- biblatex=true,%
- UKenglish,%
- class=book,%
- paper=b5,%
-]{se2thesis}
-\listfiles
-\usepackage[ngerman,main=UKenglish]{babel}
-\usepackage{blindtext}
-\usepackage[%
- group-minimum-digits=4,%
- list-final-separator={, and },%
- add-integer-zero=false,%
- free-standing-units,%
- round-mode=figures,%
- round-precision=3,%
- detect-weight=true,%
- separate-uncertainty=true,%
- uncertainty-mode=separate,%
-]{siunitx}
-
-\usepackage[newfloat=true]{minted}
-\setminted{%
- autogobble,%
- breaklines=true,%
- fontsize=\footnotesize,%
- linenos=false,%
- resetmargins=true,%
- xleftmargin=1em,%
- xrightmargin=1em,%
- frame=single,%
-}
-
-\begin{filecontents}{\jobname.bib}
- @book{Knu86,
- author = {Knuth, Donald E.},
- year = {1986},
- title = {The \TeX book},
- }
-\end{filecontents}
-\addbibresource{\jobname.bib}
-
-\usepackage{booktabs}
-
-\usepackage{csquotes}
-
-\usepackage{hyperref}
-\usepackage{cleveref}
-
-\author{Stephan Lukasczyk}
-\title{A Master Thesis Example Document}
-\degreeprogramme{Computer Science}
-\matrnumber{0815}
-\supervisor{Prof.\,Dr.~Max Mustermann}
-\advisor{Marianne Musterfrau}
-\department{Faculty of Examples}
-\institute{Chair of Example}
-\location{Passau}
-
-\begin{document}
-
-\frontmatter
-
-\maketitle
-
-\authorshipDeclaration
-
-\begin{abstract}
- An English abstract to the thesis.
-\end{abstract}
-
-\begin{abstract}[german]
- Eine deutschsprachige Zusammenfassung der Arbeit.
-\end{abstract}
-
-\begin{acknowledgements}
- Some acknowledgements.
-\end{acknowledgements}
-
-\tableofcontents
-
-\mainmatter
-
-\blinddocument
-
-\section{Further Examples}
-
-We could reference the \TeX{} book~\cite{Knu86}.
-
-\begin{resq}
- What is \(41 + 1\)?
-\end{resq}
-
-\begin{summary}{Research Question 1}
- It's 42, obviously!
-\end{summary}
-
-\backmatter
-
-\printbibliography
-
-\end{document}