From b82f9a585a90846fa22e7e88783287716036d99c Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 23 Feb 2024 22:02:28 +0000 Subject: se2thesis (23feb24) git-svn-id: svn://tug.org/texlive/trunk@70093 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/se2thesis/CHANGELOG.md | 28 +++++ .../se2thesis/se2thesis-master-thesis-example.pdf | Bin 1101796 -> 231059 bytes .../se2thesis/se2thesis-master-thesis-example.tex | 8 +- .../texmf-dist/doc/latex/se2thesis/se2thesis.pdf | Bin 328749 -> 350351 bytes Master/texmf-dist/doc/latex/se2thesis/test.pdf | Bin 1102663 -> 0 bytes Master/texmf-dist/doc/latex/se2thesis/test.tex | 107 ------------------- .../source/latex/se2thesis/se2colors.dtx | 2 +- .../texmf-dist/source/latex/se2thesis/se2fonts.dtx | 4 +- .../source/latex/se2thesis/se2packages.dtx | 113 +++++++++++++++++++-- .../source/latex/se2thesis/se2thesis.dtx | 54 ++++++---- .../texmf-dist/tex/latex/se2thesis/se2colors.sty | 2 +- Master/texmf-dist/tex/latex/se2thesis/se2fonts.sty | 2 +- .../texmf-dist/tex/latex/se2thesis/se2packages.sty | 97 +++++++++++++++++- .../texmf-dist/tex/latex/se2thesis/se2thesis.cls | 47 ++++++--- .../latex/se2thesis/se2translations-english.trsl | 2 +- .../latex/se2thesis/se2translations-german.trsl | 2 +- 16 files changed, 304 insertions(+), 164 deletions(-) delete mode 100644 Master/texmf-dist/doc/latex/se2thesis/test.pdf delete mode 100644 Master/texmf-dist/doc/latex/se2thesis/test.tex (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/latex/se2thesis/CHANGELOG.md b/Master/texmf-dist/doc/latex/se2thesis/CHANGELOG.md index 28d32ce95b7..600f16953be 100644 --- a/Master/texmf-dist/doc/latex/se2thesis/CHANGELOG.md +++ b/Master/texmf-dist/doc/latex/se2thesis/CHANGELOG.md @@ -7,6 +7,32 @@ and this project adheres to ## [Unreleased] +## [v3.3.1] – 2024–02–23 + +### Changed +- Make the citations in the margin appear in ACM style, too. +- Make sidenotes appear right ragged. + +## [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. + ## [v3.2.0] – 2023–09–12 ### Changed @@ -150,6 +176,8 @@ These changes might be breaking changes! ### Added - First official release +[v3.3.1]: https://github.com/se2p/se2thesis/compare/v3.3.1...v3.3.0 +[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/Master/texmf-dist/doc/latex/se2thesis/se2thesis-master-thesis-example.pdf b/Master/texmf-dist/doc/latex/se2thesis/se2thesis-master-thesis-example.pdf index a6a215ff140..cdfb050e294 100644 Binary files a/Master/texmf-dist/doc/latex/se2thesis/se2thesis-master-thesis-example.pdf and b/Master/texmf-dist/doc/latex/se2thesis/se2thesis-master-thesis-example.pdf differ diff --git a/Master/texmf-dist/doc/latex/se2thesis/se2thesis-master-thesis-example.tex b/Master/texmf-dist/doc/latex/se2thesis/se2thesis-master-thesis-example.tex index 106aa4b5416..15000000b29 100644 --- a/Master/texmf-dist/doc/latex/se2thesis/se2thesis-master-thesis-example.tex +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/se2thesis/se2thesis.pdf b/Master/texmf-dist/doc/latex/se2thesis/se2thesis.pdf index 6e771da96d0..e83e4eeb21e 100644 Binary files a/Master/texmf-dist/doc/latex/se2thesis/se2thesis.pdf and b/Master/texmf-dist/doc/latex/se2thesis/se2thesis.pdf differ diff --git a/Master/texmf-dist/doc/latex/se2thesis/test.pdf b/Master/texmf-dist/doc/latex/se2thesis/test.pdf deleted file mode 100644 index d33ba70794b..00000000000 Binary files a/Master/texmf-dist/doc/latex/se2thesis/test.pdf and /dev/null differ diff --git a/Master/texmf-dist/doc/latex/se2thesis/test.tex b/Master/texmf-dist/doc/latex/se2thesis/test.tex deleted file mode 100644 index 79694db9026..00000000000 --- a/Master/texmf-dist/doc/latex/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} diff --git a/Master/texmf-dist/source/latex/se2thesis/se2colors.dtx b/Master/texmf-dist/source/latex/se2thesis/se2colors.dtx index 4460b228893..97d57ee682e 100644 --- a/Master/texmf-dist/source/latex/se2thesis/se2colors.dtx +++ b/Master/texmf-dist/source/latex/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-23} {3.3.1} {A colour support package for the se2thesis bundle} % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/se2thesis/se2fonts.dtx b/Master/texmf-dist/source/latex/se2thesis/se2fonts.dtx index e3ad0016daf..938c24d1f70 100644 --- a/Master/texmf-dist/source/latex/se2thesis/se2fonts.dtx +++ b/Master/texmf-dist/source/latex/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-23} {3.3.1} {A font-selection support package for the se2thesis bundle} % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/se2thesis/se2packages.dtx b/Master/texmf-dist/source/latex/se2thesis/se2packages.dtx index f1a530ba4d8..8e29a969062 100644 --- a/Master/texmf-dist/source/latex/se2thesis/se2packages.dtx +++ b/Master/texmf-dist/source/latex/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-23} {3.3.1} {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,92 @@ 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,Ragged]{sidenotesplus} + + \newbibmacro{cite:authoryear}{% + \printtext[labelnumberwidth]{% + \usebibmacro{cite}% + }% + \setunit{\addspace}% + \printnames{labelname}% + \setunit{\labelnamepunct}\newblock% + \usebibmacro{year}% + \newunit% + \printfield[title]{labeltitle} + } + + \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/Master/texmf-dist/source/latex/se2thesis/se2thesis.dtx b/Master/texmf-dist/source/latex/se2thesis/se2thesis.dtx index 7f1fbbdde03..9bb167399c4 100644 --- a/Master/texmf-dist/source/latex/se2thesis/se2thesis.dtx +++ b/Master/texmf-dist/source/latex/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-23} {3.3.1} {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/23] \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/23] \ProvideDictTranslation{abstract}{Zusammenfassung} \ProvideDictTranslation{Abstract}{Zusammenfassung} \ProvideDictTranslation{acknowledgement}{Danksagung} diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2colors.sty b/Master/texmf-dist/tex/latex/se2thesis/se2colors.sty index a36bf36f314..798158a332b 100644 --- a/Master/texmf-dist/tex/latex/se2thesis/se2colors.sty +++ b/Master/texmf-dist/tex/latex/se2thesis/se2colors.sty @@ -48,7 +48,7 @@ \endinput }% \providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion } -\ProvidesExplPackage {se2colors} {2023-09-12} {3.2.0} +\ProvidesExplPackage {se2colors} {2024-02-23} {3.3.1} {A colour support package for the se2thesis bundle} \keys_define:nn { seiicolors } { diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2fonts.sty b/Master/texmf-dist/tex/latex/se2thesis/se2fonts.sty index 01fc58e3dcb..629eaac0644 100644 --- a/Master/texmf-dist/tex/latex/se2thesis/se2fonts.sty +++ b/Master/texmf-dist/tex/latex/se2thesis/se2fonts.sty @@ -48,7 +48,7 @@ \endinput }% \providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion } -\ProvidesExplPackage {se2fonts} {2023-09-12} {3.2.0} +\ProvidesExplPackage {se2fonts} {2024-02-23} {3.3.1} {A font-selection support package for the se2thesis bundle} \tl_new:N \l__slcd_fonts_fontmode_tl \keys_define:nn { seiifonts } diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2packages.sty b/Master/texmf-dist/tex/latex/se2thesis/se2packages.sty index 6e80bf55965..51b74b4e217 100644 --- a/Master/texmf-dist/tex/latex/se2thesis/se2packages.sty +++ b/Master/texmf-dist/tex/latex/se2thesis/se2packages.sty @@ -48,14 +48,14 @@ \endinput }% \providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion } -\ProvidesExplPackage {se2packages} {2023-09-12} {3.2.0} +\ProvidesExplPackage {se2packages} {2024-02-23} {3.3.1} {Supporting packages for the se2thesis bundle} \bool_new:N \l__slcd_packages_csquotes_bool \bool_new:N \l__slcd_packages_booktabs_bool \bool_new:N \l__slcd_packages_siunitx_bool \bool_new:N \l__slcd_packages_minted_bool \bool_new:N \l__slcd_packages_listings_bool -\bool_new:N \l__slcd_packages_biblatex_bool +\tl_new:N \l__slcd_packages_biblatex_tl \bool_new:N \l__slcd_packages_selnolig_bool \bool_new:N \l__slcd_packages_luawidowcontrol_bool \bool_new:N \l__slcd_packages_microtype_bool @@ -80,7 +80,7 @@ listings .bool_gset:N = \l__slcd_packages_listings_bool, listings .initial:n = false, - biblatex .bool_gset:N = \l__slcd_packages_biblatex_bool, + biblatex .tl_gset:N = \l__slcd_packages_biblatex_tl, biblatex .initial:n = false, selnolig .bool_gset:N = \l__slcd_packages_selnolig_bool, @@ -126,7 +126,7 @@ \bool_gset_true:N \l__slcd_packages_selnolig_bool \bool_gset_true:N \l__slcd_packages_luawidowcontrol_bool \bool_gset_true:N \l__slcd_packages_microtype_bool - \bool_gset_true:N \l__slcd_packages_biblatex_bool + \tl_gset:Nn \l__slcd_packages_biblatex_bool {true} \bool_gset_true:N \l__slcd_packages_cleveref_bool } \bool_if:NT \l__slcd_packages_csquotes_bool @@ -232,13 +232,14 @@ — = {167,167} } } -\bool_if:NT \l__slcd_packages_biblatex_bool +\tl_if_eq:NnT \l__slcd_packages_biblatex_tl {alphabetic} { \msg_info:nnn { seiipackages } { load-package } { biblatex } \PassOptionsToPackage { backend=biber, backref=true, + datamodel=software, giveninits=true, hyperref=auto, maxnames=100, @@ -247,6 +248,92 @@ 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__slcd_packages_biblatex_numeric_variants_bool +\tl_if_eq:NnT \l__slcd_packages_biblatex_tl {true} + { + \bool_gset_true:N \l__slcd_packages_biblatex_numeric_variants_bool + } +\tl_if_eq:NnT \l__slcd_packages_biblatex_tl {numeric} + { + \bool_gset_true:N \l__slcd_packages_biblatex_numeric_variants_bool + } + +\bool_if:NT \l__slcd_packages_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,Ragged]{sidenotesplus} + + \newbibmacro{cite:authoryear}{% + \printtext[labelnumberwidth]{% + \usebibmacro{cite}% + }% + \setunit{\addspace}% + \printnames{labelname}% + \setunit{\labelnamepunct}\newblock% + \usebibmacro{year}% + \newunit% + \printfield[title]{labeltitle} + } + + \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 } \bool_if:NT \l__slcd_packages_cleveref_bool { diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2thesis.cls b/Master/texmf-dist/tex/latex/se2thesis/se2thesis.cls index 72dccb23f45..552b7aaa9f0 100644 --- a/Master/texmf-dist/tex/latex/se2thesis/se2thesis.cls +++ b/Master/texmf-dist/tex/latex/se2thesis/se2thesis.cls @@ -48,7 +48,7 @@ \endinput }% \providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion } -\ProvidesExplClass {se2thesis} {2023-09-12} {3.2.0} +\ProvidesExplClass {se2thesis} {2024-02-23} {3.3.1} {A thesis class for the Chair of Software Engineering II} \prg_new_conditional:Nnn \slcd_package_if_loaded:n { p, T, F, TF } { @@ -127,6 +127,7 @@ \tl_gset:Nn \l__slcd_thesis_type_tl {masterproposal} }, thesistype / phd .code:n = \tl_gset:Nn \l__slcd_thesis_type_tl {phd}, + thesistype / phdeng .code:n = \tl_gset:Nn \l__slcd_thesis_type_tl {phdeng}, thesistype / phdproposal .code:n = { \tl_gset:Nn \l__slcd_thesis_type_tl {phdproposal} }, @@ -441,23 +442,37 @@ in~ partial~ fulfillment~ of~ obtaining\\ the~ degree~ of~ a~ Doctor~ of~ Natural~ Sciences } { - \tl_if_eq:NnT \l__slcd_thesis_type_tl { bachelor } - { \GetTranslation{Bachelor-thesis} } - \tl_if_eq:NnT \l__slcd_thesis_type_tl { bachelorproposal } - { \GetTranslation{Bachelor-thesis-proposal} } - \tl_if_eq:NnT \l__slcd_thesis_type_tl { master } - { \GetTranslation{Master-thesis} } - \tl_if_eq:NnT \l__slcd_thesis_type_tl { masterproposal } - { \GetTranslation{Master-thesis-proposal} } - \tl_if_eq:NnT \l__slcd_thesis_type_tl { phdproposal } - { \GetTranslation{PhD-thesis-proposal} } - \tl_if_empty:NF \l__slcd_degreeprogramme_tl + \tl_if_eq:NnTF \l__slcd_thesis_type_tl { phdeng } { - \ in~\l__slcd_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__slcd_thesis_type_tl { bachelor } + { \GetTranslation{Bachelor-thesis} } + \tl_if_eq:NnT \l__slcd_thesis_type_tl { bachelorproposal } + { \GetTranslation{Bachelor-thesis-proposal} } + \tl_if_eq:NnT \l__slcd_thesis_type_tl { master } + { \GetTranslation{Master-thesis} } + \tl_if_eq:NnT \l__slcd_thesis_type_tl { masterproposal } + { \GetTranslation{Master-thesis-proposal} } + \tl_if_eq:NnT \l__slcd_thesis_type_tl { phdproposal } + { \GetTranslation{PhD-thesis-proposal} } + \tl_if_empty:NF \l__slcd_degreeprogramme_tl + { + \ in~\l__slcd_degreeprogramme_tl + } + \par + \tl_if_empty:NF \l__slcd_department_tl { \l__slcd_department_tl \par } + \tl_if_empty:NF \l__slcd_institute_tl { \l__slcd_institute_tl \par } } - \par - \tl_if_empty:NF \l__slcd_department_tl { \l__slcd_department_tl \par } - \tl_if_empty:NF \l__slcd_institute_tl { \l__slcd_institute_tl \par } } \end{center}\par\bigskip \begin{center} diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2translations-english.trsl b/Master/texmf-dist/tex/latex/se2thesis/se2translations-english.trsl index b31d3b6426a..aaa14dd2222 100644 --- a/Master/texmf-dist/tex/latex/se2thesis/se2translations-english.trsl +++ b/Master/texmf-dist/tex/latex/se2thesis/se2translations-english.trsl @@ -32,7 +32,7 @@ %% se2packages.sty, %% se2thesis-master-thesis-example.bib, and %% se2thesis-master-thesis-example.pdf -\ProvideDictionaryFor{English}{se2translations}[2023/09/12] +\ProvideDictionaryFor{English}{se2translations}[2024/02/23] \ProvideDictTranslation{abstract}{abstract} \ProvideDictTranslation{Abstract}{Abstract} \ProvideDictTranslation{acknowledgement}{acknowledgement} diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2translations-german.trsl b/Master/texmf-dist/tex/latex/se2thesis/se2translations-german.trsl index 9a7736303a2..3c8ecfaa8c2 100644 --- a/Master/texmf-dist/tex/latex/se2thesis/se2translations-german.trsl +++ b/Master/texmf-dist/tex/latex/se2thesis/se2translations-german.trsl @@ -32,7 +32,7 @@ %% se2packages.sty, %% se2thesis-master-thesis-example.bib, and %% se2thesis-master-thesis-example.pdf -\ProvideDictionaryFor{German}{se2translations}[2023/09/12] +\ProvideDictionaryFor{German}{se2translations}[2024/02/23] \ProvideDictTranslation{abstract}{Zusammenfassung} \ProvideDictTranslation{Abstract}{Zusammenfassung} \ProvideDictTranslation{acknowledgement}{Danksagung} -- cgit v1.2.3