diff options
Diffstat (limited to 'macros/latex')
26 files changed, 3078 insertions, 199 deletions
diff --git a/macros/latex/contrib/cs-techrep/COPYING b/macros/latex/contrib/cs-techrep/COPYING new file mode 100644 index 0000000000..241acd1c5d --- /dev/null +++ b/macros/latex/contrib/cs-techrep/COPYING @@ -0,0 +1,13 @@ +Copyright 2024 Christoph P. Neumann + +This work may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3c +of this license or any later version. +The latest version of this license is in +https://www.latex-project.org/lppl.txt +and version 1.3c or later is part of all distributions of LaTeX +version 2008 or later. + +This work has the LPPL maintenance status maintained. + +The Current Maintainer of this work is Christoph P. Neumann. diff --git a/macros/latex/contrib/cs-techrep/README b/macros/latex/contrib/cs-techrep/README new file mode 100644 index 0000000000..d133b67a2d --- /dev/null +++ b/macros/latex/contrib/cs-techrep/README @@ -0,0 +1,64 @@ + ----------------------------- + Version 0.1 of the cs-techrep class + Christoph P. Neumann + ----------------------------- + +This LaTeX class provides a simple environment for +technical reports in computer science and software engineering. + +As this class is created mainly for ourselves it does not +contain evil low-level TeX magic but instead uses many other +fancy LaTeX packages that we hope you have already installed. + +This work may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3c +of this license or (at your option) any later version. +The latest version of this license is in + http://www.latex-project.org/lppl.txt +and version 1.3c or later is part of all distributions of LaTeX +version 2008/05/04 or later. + + +Installation +------------ + +After unzipping the package call: + + $ latex cs-techrep.ins + +This will be extract some files (cs-techrep.cls, cs-techrepNLS.sty...). Create a +directory beneath your TeX installation preferably create + + tex/latex/cs-techrep + +and copy all files of the package and the extracted files to that directory. + +Call: + + mktexlsr + + +Templates +--------- + +In the template directory you can find an example document. + + +Source Code +----------- + +The source code of this latex package can be found at: +https://github.com/cyberlytics/cs-techrep + +The build that creates the CTAN-conforming upload ZIP archive +can be achieved with the Docker image at Dockerhub: +cyberlytics/ctan-prep:latest + +An examplery 'make dist' call is: +docker run --rm -it -v ${PWD}/:/app cyberlytics/ctan-prep:latest make dist + +The source code of this supportive Docker image can be found at: +https://github.com/cyberlytics/ctan-prep + + +/Christoph P. Neumann, <cyberpetaneuron+cstechrep@gmail.com> diff --git a/macros/latex/contrib/cs-techrep/cs-techrep.dtx b/macros/latex/contrib/cs-techrep/cs-techrep.dtx new file mode 100644 index 0000000000..8f9dccfa51 --- /dev/null +++ b/macros/latex/contrib/cs-techrep/cs-techrep.dtx @@ -0,0 +1,707 @@ +%\iffalse +% cs-techrep.dtx generated using makedtx version 1.2 (c) Nicola Talbot +% Command line args: +% -src "(cs-techrep.cls)=>\1" +% -dir "src" +% -date "0.1" +% -doc "doc/cs-techrep.tex" +% -author "Christoph P. Neumann " +% -macrocode ".*" +% -preamble "Copyright 2024 Christoph P. Neumann This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or any later version. The latest version of this license is in https://www.latex-project.org/lppl.txt and version 1.3c or later is part of all distributions of LaTeX version 2008 or later. This work has the LPPL maintenance status maintained. The Current Maintainer of this work is Christoph P. Neumann. " +% -setambles ".*=>\nopreamble" +% cs-techrep +% Created on 2024/3/22 20:18 +%\fi +%\iffalse +%<*package> +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +%</package> +%\fi +% \iffalse +% Doc-Source file to use with LaTeX2e +% Copyright (C) 0.1 Christoph P. Neumann , all rights reserved. +% \fi +% \iffalse +%<*driver> +%% +%% Copyright 2023 Christoph P. Neumann +%% +%% This LaTeX class provides a simple interface for creating +%% a verfy fancy Curriculum Vitae. At the moment only CVs in +%% the german language are supported. +%% +%% This file is free property; as a special exception the author +%% gives unlimited permission to copy and/or distribute it, with +%% or without modifications, as long as this notice is +%% preserved. +%% +%% This file is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY, to the extent permitted by law; +%% without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE. + +\documentclass{ltxdoc} + +\CodelineNumbered +\EnableCrossrefs +\CodelineIndex +\RecordChanges +\GetFileInfo{cs-techrep.cls} + +\parskip1.0ex +\parindent0.0ex + +\begin{document} +\DocInput{cs-techrep.dtx} +\end{document} +%</driver> +%\fi +%\title{\textsf{cs-techrep}\\ +%Technical Reports in Computer Science and Software Engineering} +%\author{Christoph P.\ Neumann \texttt{$<$cyberpetaneuron@gmail.com$>$}} +%\maketitle +%\PrintChanges +% +%\begin{abstract} +%The \texttt{cs-techrep} class provides a convenient environment +%for writing technical reports in computer science and software engineering. +%The style is adopted from IEEE. +%The cs-techrep class requires the latex/pdflatex +%in combination with biblatex using a biber backend. +%\end{abstract} +% +%\section{Installation} +% +%The \texttt{zip} or \texttt{tar.gz} file comes with a \texttt{cs-techrep.ins} +%and a \texttt{cs-techrep.dtx} file included which contains the \LaTeX\ stuff. +% +%To extract the class files call: +% +%\begin{verbatim} +% $ latex cs-techrep.ins +%\end{verbatim} +% +%This call will extract all \LaTeX\ specific files to the current +%directory. You can either use the files for a single +%cv project or you can integrate the files into your \TeX\ installation. +% +%If you just want to use \textsf{cs-techrep} for a single curriculum vitae +%project, the simplest way is just to copy the generated files to the +%folder of the project. +% +%If you want to integrate \textsf{cs-techrep} into your \TeX\ installation, +%create a directory \texttt{tex/latex/cs-techrep} beneath your \TeX\ installation +%(e.g.~beneath \texttt{/usr/share/texmf}) and copy all files from the +%current directory there. Now call: +% +%\begin{verbatim} +% $ mktexlsr +%\end{verbatim} +% +%to update the file--cache of \LaTeX. +% +%Hint: The \textsf{cs-techrep} distribution contains a sample docstrip configuration +%in \texttt{docstrip.cfg} via which files can be distributed +%automatically to their correct positions inside a \LaTeX\ installation. +%Feel free to adapt this file to your environment and afterwards call +%\texttt{latex cs-techrep.ins} to install the package to its right place. +% +%\section{Templates} +% +%For a quick start the \textsf{iaria-lite} distribution contains document +%templates. +%The templates can be found in the \texttt{cs-techrep-example-neumann.zip} file. +% +% +%\section{Documentclass} +% +%\DescribeMacro{documentclass cs-techrep} +%This package provides the documentclass \texttt{cs-techrep}. The documentclass +%supports the following options: +% +% +%\begin{itemize} +%\item |conference| Passed to IEEEtran +%\item |a4paper| Passed to IEEEtran +%\item |flushend| Activate flushend package +%\item |pbalance| Activate pbalance package +%\end{itemize} +% +% +%\section{Requirements} +% +%We instrument several other \LaTeX\ packages for different purposes, +%which must be available under your installation. +% +%\begin{itemize} +%\item IEEEtran +%\item acronym +%\item afterpage +%\item babel +%\item biblatex +%\item booktabs +%\item ccicons +%\item cleveref +%\item csquotes +%\item diagbox +%\item etoolbox +%\item extdash +%\item flushend +%\item fontenc +%\item graphicx +%\item hypcap +%\item hyperref +%\item hyperref +%\item inputenc +%\item lipsum +%\item listings +%\item lmodern +%\item lscape +%\item microtype +%\item newtxtt +%\item orcidlink +%\item paralist +%\item pbalance +%\item pdfcomment +%\item pdflscape +%\item siunitx +%\item stfloats +%\item subfig +%\item tcolorbox +%\item times +%\item upquote +%\item url +%\item xcolor +%\item xpatch +%\item xspace +%\end{itemize} +% +% +%\StopEventually{} +%\section{The Code} +%\iffalse +% \begin{macrocode} +%<*cs-techrep.cls> +% \end{macrocode} +%\fi +% \begin{macrocode} +%# Copyright (c) 2023 Christoph P. Neumann, +%# Copyright (c) 2018-2021 Oliver Kopp +%# Reference: https://latextemplates.github.io/ + +% !TeX spellcheck = en-US +% LTeX: language=en-US +% !TeX encoding = utf8 +% !TeX program = pdflatex +% !BIB program = biblatex / biber + +% Declare that this document class file requires at least LaTeX version 2e. +\NeedsTeXFormat{LaTeX2e} + +% Provide the name of your document class, the date it was last updated, and a comment about what it's used for +\ProvidesClass{cs-techrep}[2024/03/20 Technical Reports in Computer Science and Software Engineering v0.1] + +% Define marker counter for options (counter are global in latex): +\newcounter{cstechrep@pbalancetracker} +\newcounter{cstechrep@flushendtracker} + +% Declare options: +\DeclareOption{onecolumn}{\OptionNotUsed} % IEEE option onecolumn will be ignored + +\DeclareOption{pbalance}{ + \setcounter{cstechrep@pbalancetracker}{1} + \typeout{cs-techrep class: pbalance option is set.} +} +\DeclareOption{flushend}{ + \setcounter{cstechrep@flushendtracker}{1} + \typeout{cs-techrep class: flushend option is set.} +} + +% We'll pass any document class options along to the underlying class +\DeclareOption*{% + \PassOptionsToClass{\CurrentOption}{IEEEtran}% recommended IEEE options: conference,a4paper +} + +% Now we'll execute any options passed in +\ProcessOptions\relax + +% Instead of defining each and every little detail required to create a new document class, +% you can base your class on an existing document class. +\LoadClass{IEEEtran} + +% This template has been tested with IEEEtran of 2015. + +% ======================= +% USER PROVIDED VARIABLES + +\makeatletter +\newcommand*\DefcstechrepVar[1]{\@namedef{cstechrep#1}##1{\global\@namedef{cstechrep#1}{##1}}} +\makeatother + +\DefcstechrepVar{AuthorListTex} +\DefcstechrepVar{AuthorListBib} % Use *and* as author separator! +\DefcstechrepVar{TitleTex} +\DefcstechrepVar{TitleBib} +\DefcstechrepVar{Department} % e.g., Department of Electrical Engineering, Media and Computer Science +\DefcstechrepVar{Institution} % e.g., Ostbayerische Technische Hochschule Amberg-Weiden +\DefcstechrepVar{Address} % e.g., Amberg, Germany +\DefcstechrepVar{Series} % e.g., Technical Reports +\DefcstechrepVar{Year} % e.g., 2023 +\DefcstechrepVar{Title} +\DefcstechrepVar{Month} % e.g., 6 (for June) +\DefcstechrepVar{Number} % e.g., CL-2023-42 +\DefcstechrepVar{Lang} % e.g., english = en-US (or: ngerman = DE) +% ======================= + +% backticks (`) are rendered as such in verbatim environments. +% See following links for details: +% - https://tex.stackexchange.com/a/341057/9075 +% - https://tex.stackexchange.com/a/47451/9075 +% - https://tex.stackexchange.com/a/166791/9075 +\RequirePackage{upquote} + +% Set English as language and allow to write hyphenated"=words +% +% Even though `american`, `english` and `usenglish` are synonyms for babel package (according to https://tex.stackexchange.com/questions/12775/babel-english-american-usenglish), the llncs document class is prepared to avoid the overriding of certain names (such as "Abstract." -> "Abstract" or "Fig." -> "Figure") when using `english`, but not when using the other 2. +% english has to go last to set it as default language +\RequirePackage[ngerman,main=english]{babel} +% +% Hint by http://tex.stackexchange.com/a/321066/9075 -> enable "= as dashes +\addto\extrasenglish{\languageshorthands{ngerman}\useshorthands{"}} + +\RequirePackage{lmodern} % CM variant with scalable font (to prevent "pdfTeX error (font expansion): auto expansion is only possible with scalable") +\RequirePackage{times} % Times New Roman, because IEEE is based on Times (and not CM/lmodern), however, package times is not a scalable font, thus, lmodern is required additionally and must be loaded before times + +% Links behave as they should. Enables "\url{...}" for URL typesettings. +% Allow URL breaks also at a hyphen, even though it might be confusing: Is the "-" part of the address or just a hyphen? +% See https://tex.stackexchange.com/a/3034/9075. +\RequirePackage[hyphens]{url} + +% When activated, use text font as url font, not the monospaced one. +% For all options see https://tex.stackexchange.com/a/261435/9075. +% \urlstyle{same} + +% Improve wrapping of URLs - hint by http://tex.stackexchange.com/a/10419/9075 +\makeatletter +\g@addto@macro{\UrlBreaks}{\UrlOrds} +\makeatother + +% nicer // - solution by http://tex.stackexchange.com/a/98470/9075 +% DO NOT ACTIVATE -> prevents line breaks +%\makeatletter +%\def\Url@twoslashes{\mathchar`\/\@ifnextchar/{\kern-.2em}{}} +%\g@addto@macro\UrlSpecials{\do\/{\Url@twoslashes}} +%\makeatother + +% use nicer font for code +\RequirePackage[zerostyle=b,scaled=.75]{newtxtt} + +% inputenc must be loaded before biblatex +\RequirePackage[utf8]{inputenc} + +% Has to be loaded AFTER any font packages. See https://tex.stackexchange.com/a/2869/9075. +\RequirePackage[T1]{fontenc} + + +% Character protrusion and font expansion. See http://www.ctan.org/tex-archive/macros/latex/contrib/microtype/ +\RequirePackage[ + babel=true, % Enable language-specific kerning. Take language-settings from the languge of the current document (see Section 6 of microtype.pdf) + expansion=alltext, + protrusion=alltext-nott, % Ensure that at listings, there is no change at the margin of the listing + nopatch=eqnum, % fix unable to apply patch eqnum + final % Always enable microtype, even if in draft mode. This helps finding bad boxes quickly. + % In the standard configuration, this template is always in the final mode, so this option only makes a difference if "pros" use the draft mode +]{microtype} + +% \texttt{test -- test} keeps the "--" as "--" (and does not convert it to an en dash) +\DisableLigatures{encoding = T1, family = tt* } + +%\DeclareMicrotypeSet*[tracking]{my}{ font = */*/*/sc/* }% +%\SetTracking{ encoding = *, shape = sc }{ 45 } +% Source: http://homepage.ruhr-uni-bochum.de/Georg.Verweyen/pakete.html +% Deactiviated, because does not look good + +\RequirePackage{graphicx} + +% Creative Commons +\RequirePackage{ccicons} + +% Diagonal lines in a table - http://tex.stackexchange.com/questions/17745/diagonal-lines-in-table-cell +% Slashbox is not available in texlive (due to licensing) and also gives bad results. Thus, we use diagbox +\RequirePackage{diagbox} + +\RequirePackage[cmyk, table]{xcolor} + +\RequirePackage[nolist]{acronym} + +% Code Listings +\RequirePackage{listings} + +\definecolor{eclipseStrings}{RGB}{42,0.0,255} +\definecolor{eclipseKeywords}{RGB}{127,0,85} +\colorlet{numb}{magenta!60!black} + +% JSON definition +% Source: https://tex.stackexchange.com/a/433961/9075 + +\lstdefinelanguage{json}{ + basicstyle=\normalfont\ttfamily, + commentstyle=\color{eclipseStrings}, % style of comment + stringstyle=\color{eclipseKeywords}, % style of strings + numbers=left, + numberstyle=\scriptsize, + stepnumber=1, + numbersep=8pt, + showstringspaces=false, + breaklines=true, + frame=lines, + % backgroundcolor=\color{gray}, %only if you like + string=[s]{"}{"}, + comment=[l]{:\ "}, + morecomment=[l]{:"}, + literate= + *{0}{{{\color{numb}0}}}{1} + {1}{{{\color{numb}1}}}{1} + {2}{{{\color{numb}2}}}{1} + {3}{{{\color{numb}3}}}{1} + {4}{{{\color{numb}4}}}{1} + {5}{{{\color{numb}5}}}{1} + {6}{{{\color{numb}6}}}{1} + {7}{{{\color{numb}7}}}{1} + {8}{{{\color{numb}8}}}{1} + {9}{{{\color{numb}9}}}{1} +} + +\lstset{ + % everything between (* *) is a latex command + escapeinside={(*}{*)}, + % + language=json, + % + showstringspaces=false, + % + extendedchars=true, + % + basicstyle=\footnotesize\ttfamily, + % + commentstyle=\slshape, + % + % default: \rmfamily + stringstyle=\ttfamily, + % + breaklines=true, + % + breakatwhitespace=true, + % + % alternative: fixed + columns=flexible, + % + numbers=left, + % + numberstyle=\tiny, + % + basewidth=.5em, + % + xleftmargin=.5cm, + % + % aboveskip=0mm, + % + % belowskip=0mm, + % + captionpos=b +} + +% Enable Umlauts when using \lstinputputlisting. +% See https://stackoverflow.com/a/29260603/873282 für details. +% listingsutf8 did not work in June 2020. +\lstset{literate= + {á}{{\'a}}1 {é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1 {ú}{{\'u}}1 + {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1 + {à}{{\`a}}1 {è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1 + {À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1 + {ä}{ä}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{ö}1 {ü}{{\"u}}1 + {Ä}{ä}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{ö}1 {Ü}{{\"U}}1 + {â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1 + {Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1 + {Ã}{{\~A}}1 {ã}{{\~a}}1 {Õ}{{\~O}}1 {õ}{{\~o}}1 + {œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1 + {ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1 + {ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1 +} + +% Nicer tables (\toprule, \midrule, \bottomrule) +\RequirePackage{booktabs} + +% Extended enumerate, such as \begin{compactenum} +\RequirePackage{paralist} + +% Read: Is there a disadvantage to using natbib=true with biblatex? +% https://tex.stackexchange.com/questions/149313/is-there-a-disadvantage-to-using-natbib-true-with-biblatex +% Substitutions: +% Natbib \textcite = biblatex \textcite +% Natbib \citep = biblatex \parencite + +\RequirePackage[ + defernumbers=true, % required due to self-cite + %style=ieee, % english only + sorting=none, % nty, nyt, nyvt, anyt, anyvt, ynt, ydnt, none, debug + sortcites=false, + citestyle=numeric-comp, + bibstyle=numeric, + backend=biber, + bibencoding=utf8, % = auto, utf8, ascii + hyperref=true, % activate hyperref support + backref=false, % activate backrefs + isbn=true, + url=true, + doi=true, + urldate=terse, % = iso, year, short, long, terse + maxnames=5, % max number of names in text ?? + minnames=1, % min number of names in text ?? + maxbibnames=99, % max number of names in bibliography + minbibnames=1, % number of names in bibliography (bevor et al) + maxcitenames=99, % max number of names in text ?? + mincitenames=1, % max number of names in text ?? + giveninits=false, % abbreviate first names + uniquename=init, % otherwise option conflict with firstinits=true + autolang=other +]{biblatex} + +% Prevent citations in the references are being numbered as '0' in ArXiv +% https://tex.stackexchange.com/questions/463556/all-the-citations-in-the-references-are-being-numbered-as-0-in-arxiv-while-upl +\makeatletter +\let\blx@rerun@biber\relax +\makeatother + +\addbibresource{selfref.bib} % selfref.bib needs to be generated, containing a bibentry with key selfref +\DeclareBibliographyCategory{selfref} +\addtocategory{selfref}{selfref} +% How to use: \printbibliography[notcategory=selfref] + +% Same fontsize as without natbib +\renewcommand{\bibfont}{\normalfont\small} + +% Enable hyperlinked author names in the case of \textcite +% Source: https://tex.stackexchange.com/a/76075/9075 +\RequirePackage{etoolbox} +\makeatletter +\patchcmd{\NAT@test}{\else \NAT@nm}{\else \NAT@hyper@{\NAT@nm}}{}{} +\makeatother + +\makeatletter +\DeclareCiteCommand{\citemonth} + {\usebibmacro{prenote}} + {% + \let\oldabx@bibmonth\abx@bibmonth% + %\let\abx@bibmonth\blx@imc@biblstring\typeout{CHG: abx@bibmonth \meaning\abx@bibmonth}% false: not abbreviated; but nowork + \setkeys{blx@opt@pre}{dateabbrev=false}% nowork + \mkbibmonth{\thefield{month}}% + \let\abx@bibmonth\oldabx@bibmonth% restore + } + {\multicitedelim} + {\usebibmacro{postnote}} +\makeatother + +% Enable nice comments +\RequirePackage{pdfcomment} + +\newcommand{\commentontext}[2]{\colorbox{yellow!60}{#1}\pdfcomment[color={0.234 0.867 0.211},hoffset=-6pt,voffset=10pt,opacity=0.5]{#2}} +\newcommand{\commentatside}[1]{\pdfcomment[color={0.045 0.278 0.643},icon=Note]{#1}} + +% Compatibality with packages todo, easy-todo, todonotes +\newcommand{\todo}[1]{\commentatside{#1}} + +% Compatiblity with package fixmetodonotes +\newcommand{\TODO}[1]{\commentatside{#1}} + +% Put footnotes below floats +% Source: https://tex.stackexchange.com/a/32993/9075 +\RequirePackage{stfloats} +\fnbelowfloat + +\RequirePackage[group-minimum-digits=4,per-mode=fraction]{siunitx} +\addto\extrasgerman{\sisetup{locale = DE}} + +% Enable that parameters of \cref{}, \ref{}, \cite{}, ... are linked so that a reader can click on the number an jump to the target in the document +\RequirePackage{hyperref} + +% Enable hyperref without colors and without bookmarks +\hypersetup{ + hidelinks, + colorlinks=true, + allcolors=black, + pdfstartview=Fit, + breaklinks=true +} + +% Enable correct jumping to figures when referencing +\RequirePackage[all]{hypcap} + +\RequirePackage{orcidlink} + +\RequirePackage[caption=false,font=footnotesize]{subfig} + +% For easy quotations: \enquote{text} +% This package is very smart when nesting is applied, otherwise textcmds (see below) provides a shorter command +\RequirePackage[autostyle=true]{csquotes} + +% Enable using "`quote"' - see https://tex.stackexchange.com/a/150954/9075 +\defineshorthand{"`}{\openautoquote} +\defineshorthand{"'}{\closeautoquote} + +% amsmath must be loaded before cleveref +\usepackage{amsmath,amssymb,amsfonts} + +% Extensions for references inside the document (\cref{fig:sample}, ...) +% Enable usage \cref{...} and \Cref{...} instead of \ref: Type of reference included in the link +% That means, "Figure 5" is a full link instead of just "5". +\RequirePackage[capitalise,nameinlink,noabbrev]{cleveref} + +\crefname{listing}{Listing}{Listings} +\Crefname{listing}{Listing}{Listings} +\crefname{lstlisting}{Listing}{Listings} +\Crefname{lstlisting}{Listing}{Listings} + +\RequirePackage{lipsum} + +\RequirePackage{tcolorbox} +\tcbuselibrary{listings} + +%introduce \powerset - hint by http://matheplanet.com/matheplanet/nuke/html/viewtopic.php?topic=136492&post_id=997377 +\DeclareFontFamily{U}{MnSymbolC}{} +\DeclareSymbolFont{MnSyC}{U}{MnSymbolC}{m}{n} +\DeclareFontShape{U}{MnSymbolC}{m}{n}{ + <-6> MnSymbolC5 + <6-7> MnSymbolC6 + <7-8> MnSymbolC7 + <8-9> MnSymbolC8 + <9-10> MnSymbolC9 + <10-12> MnSymbolC10 + <12-> MnSymbolC12% +}{} +\DeclareMathSymbol{\powerset}{\mathord}{MnSyC}{180} + +\RequirePackage{xspace} +%\newcommand{\eg}{e.\,g.\xspace} +%\newcommand{\ie}{i.\,e.\xspace} +\newcommand{\eg}{e.\,g.,\ } +\newcommand{\ie}{i.\,e.,\ } + +% Enable hyphenation at other places as the dash. +% Example: applicaiton\hydash specific +\makeatletter +\newcommand{\hydash}{\penalty\@M-\hskip\z@skip} +% Definition of "= taken from http://mirror.ctan.org/macros/latex/contrib/babel-contrib/german/ngermanb.dtx +\makeatother + +% Add manual adapted hyphenation of English words +% See https://ctan.org/pkg/hyphenex and https://tex.stackexchange.com/a/22892/9075 for details +% Does not work on MiKTeX, therefore disabled - issue reported at https://github.com/MiKTeX/miktex-packaging/issues/271 +% \input{ushyphex} + +% correct bad hyphenation here +\hyphenation{op-tical net-works semi-conduc-tor} + +% Enable copy and paste of text from the PDF +% Only required for pdflatex. It "just works" in the case of lualatex. +% Alternative: cmap or mmap package +% mmap enables mathematical symbols, but does not work with the newtx font set +% See: https://tex.stackexchange.com/a/64457/9075 +% Other solutions outlined at http://goemonx.blogspot.de/2012/01/pdflatex-ligaturen-und-copynpaste.html and http://tex.stackexchange.com/questions/4397/make-ligatures-in-linux-libertine-copyable-and-searchable +% Trouble shooting outlined at https://tex.stackexchange.com/a/100618/9075 +% +% According to https://tex.stackexchange.com/q/451235/9075 this is the way to go +\input glyphtounicode +\pdfgentounicode=1 + +\RequirePackage{lscape} +\RequirePackage{pdflscape} +\RequirePackage{afterpage} + +% Allows to hyphenate a word that contains a dash: +% https://stackoverflow.com/questions/2193307/how-do-i-get-latex-to-hyphenate-a-word-that-contains-a-dash +\RequirePackage[shortcuts]{extdash} % Use \-/ for a breakable dash that does not prevent the remainer of the word to be hyphenated + +% Improve wrapping of URLs - hint by http://tex.stackexchange.com/a/10419/9075 +\makeatletter +\def\ps@IEEEtitlepagestyle{ + \def\@oddfoot{\mycopyrightnotice} + \def\@evenfoot{} +} +\def\mycopyrightnotice{ + {\footnotesize + \begin{minipage}{0.8\textwidth} + \centering + % Creative Commons / Open Access: + \href{https://creativecommons.org/licenses/by/4.0/}{\ccby{} This work is licensed under a Creative Commons Attribution 4.0 International (CC BY 4.0) License.} + % Citation advice: + \\Please cite as: \fullcite{selfref}. + \end{minipage} + } +} +\makeatother + +\makeatletter +% allows for forcing command expansion inside a filecontents* environment +% (cf. https://tex.stackexchange.com/questions/534035/macros-commands-inside-a-filecontents-environment-does-not-expand) +\def\filecontentsForceExpansion#1#2#3{ + \global\let\ltxspecials\dospecials + \gdef\dospecials{\ltxspecials + \catcode`#1=0 + \catcode`#2=1 + \catcode`#3=2 + \global\let\dospecials\ltxspecials + } +} +\makeatother + +\title{\cstechrepTitleTex} + +\author{ +\IEEEauthorblockN{\cstechrepAuthorListTex} +\IEEEauthorblockA{% +\cstechrepDepartment\\ +\cstechrepInstitution\\ +\cstechrepAddress +}} + +\IEEEspecialpapernotice{\cstechrepSeries: \cstechrepNumber, \citemonth{selfref} \cstechrepYear} + +% Balance/level columns at the last page / in bibliography +% DISCLAIMER: No solution is a 100%/perfect one! +% Mainstream option: pbalance (see https://ctan.org/pkg/pbalance) +% BUT: incompatible with arxiv automated process (!) +\ifnum\value{cstechrep@pbalancetracker}=1 + \typeout{cs-techrep class: load pbalance package.} + \RequirePackage{pbalance} +\fi +% Flushend => works with arxiv, but major incampatibility with lineno (and, thus, also with mindflow et al.) +\ifnum\value{cstechrep@flushendtracker}=1 + \typeout{cs-techrep class: load flushend package.} + \RequirePackage{flushend} +\fi + +% Finally, we'll use \endinput to indicate that LaTeX can stop reading this file. LaTeX will ignore anything after this line. +\endinput +% \end{macrocode} +%\iffalse +% \begin{macrocode} +%</cs-techrep.cls> +% \end{macrocode} +%\fi +%\Finale +\endinput diff --git a/macros/latex/contrib/cs-techrep/cs-techrep.ins b/macros/latex/contrib/cs-techrep/cs-techrep.ins new file mode 100644 index 0000000000..28d177822b --- /dev/null +++ b/macros/latex/contrib/cs-techrep/cs-techrep.ins @@ -0,0 +1,13 @@ +% cs-techrep.ins generated using makedtx version 1.2 2024/3/22 20:18 +\input docstrip + +\preamble +Copyright 2024 Christoph P. Neumann This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or any later version. The latest version of this license is in https://www.latex-project.org/lppl.txt and version 1.3c or later is part of all distributions of LaTeX version 2008 or later. This work has the LPPL maintenance status maintained. The Current Maintainer of this work is Christoph P. Neumann. +\endpreamble + +\askforoverwritefalse + +\generate{\file{cs-techrep.cls}{\nopreamble\from{cs-techrep.dtx}{cs-techrep.cls}} +} + +\endbatchfile diff --git a/macros/latex/contrib/cs-techrep/cs-techrep.pdf b/macros/latex/contrib/cs-techrep/cs-techrep.pdf Binary files differnew file mode 100644 index 0000000000..543f528806 --- /dev/null +++ b/macros/latex/contrib/cs-techrep/cs-techrep.pdf diff --git a/macros/latex/contrib/cs-techrep/docstrip.cfg b/macros/latex/contrib/cs-techrep/docstrip.cfg new file mode 100644 index 0000000000..bd8de81db6 --- /dev/null +++ b/macros/latex/contrib/cs-techrep/docstrip.cfg @@ -0,0 +1,13 @@ +% +% docstrip.cfg +% +% Sample configuration for the docstrip program for the cs-techrep class +% + +% BaseDirectory: To this directory the class will be installed +%\BaseDirectory{/usr/share/texmf} +\BaseDirectory{.} + +% Path mapping for the directories defined in the ins file +%\DeclareDir{tex/latex/cs-techrep}{tex/latex/cs-techrep} +\DeclareDir{tex/latex/cs-techrep}{.} diff --git a/macros/latex/contrib/cs-techrep/template/cpn_all_all.bib b/macros/latex/contrib/cs-techrep/template/cpn_all_all.bib new file mode 100644 index 0000000000..d7796e6272 --- /dev/null +++ b/macros/latex/contrib/cs-techrep/template/cpn_all_all.bib @@ -0,0 +1,622 @@ +@Thesis{neumann2004sa, + author = {Neumann, Christoph P.}, + title = {{Conceptional Design and Realization of a `Component Test Stand' for Measurements on Enterprise JavaBeans}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2004, + month = feb, + type = {Studienarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/Studienarbeit_ChristophPeterNeumann_revised/} +} +@Thesis{neumann2005da, + author = {Neumann, Christoph P.}, + title = {{Design of an Open Framework for Optimizing the Distribution of Hardware and Software Components in Control Networks for Vehicles}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2005, + month = jun, + type = {Diplomarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/Diplomarbeit_ChristophPeterNeumann_original/} +} +@INPROCEEDINGS{MeNe04testejb, + author = {Marcus Meyerh{\"o}fer and Christoph Neumann}, + title = {{TestEJB} -- A Measurement Framework for {EJBs}}, + booktitle = {Proc of the 7th Int'l Symposium on Component\-/Based Software Engineering (CBSE'04) in conjunction with the 26th Int'l Conf on Software Engineering (ICSE'04)}, + _editor = {Ivica Crnkovic}, + month = may, + year = {2004}, + pages = {294--301}, + address = {Edinburgh, UK}, + publisher = {Springer, Berlin, DE}, + series = {Lecture Notes in Computer Science}, + volume = {3054}, + doi = {10.1007/978-3-540-24774-6_26}, + _url = {https://doi.org/10.1007/978-3-540-24774-6_26}, + _isbn = {978\-/3\-/540\-/24774\-/6}, +} + +@INPROCEEDINGS{NHSL09oxdbs, + author = {Christoph P. Neumann and Stefan Hanisch and Bernhard Schiemann and + Richard Lenz}, + title = {{OXDBS -- Erweiterung einer nativen XML\-/Datenbank um die Validierung + und Konsistenzpr{\"u}fung gegen eine OWL\-/Ontologie}}, + booktitle = {Tagungsband der 54.\,GMDS\-/Jahrestagung}, + year = {2009}, + _pages = {271:1--271:2}, + address = {Essen, DE}, + month = sep, + organization = {{Deutsche Gesellschaft f{\"u}r Medizinische Informatik, Biometrie + und Epidemiologie} (GMDS)}, + doi = {10.3205/09GMDS271}, + _url = {http://www.egms.de/en/meetings/gmds2009/09gmds271.shtml}, +} + + +@INPROCEEDINGS{NeWL09xdsrig, + author = {Christoph P. Neumann and Florian Wagner and Richard Lenz}, + title = {{XdsRig -- Eine Open\-/Source IHE XDS Testumgebung}}, + booktitle = {Tagungsband der 54.\,GMDS\-/Jahrestagung}, + year = {2009}, + _pages = {276:1--276:2}, + address = {Essen, DE}, + month = sep, + organization = {{Deutsche Gesellschaft f{\"u}r Medizinische Informatik, Biometrie + und Epidemiologie} (GMDS)}, + doi = {10.3205/09GMDS276}, + _url = {http://www.egms.de/en/meetings/gmds2009/09gmds276.shtml}, +} + + +@INPROCEEDINGS{NRDL09deus, + author = {Christoph P. Neumann and Florian Rampp and Michael Daum and Richard Lenz}, + title = {{A Mediated Publish\-/Subscribe System for Inter\-/Institutional Process Support in Healthcare}}, + booktitle = {Proc of the 3rd ACM Int'l Conf on Distributed Event\-/Based Systems (DEBS 2009)}, + year = {2009}, + _chapter = {14}, + _pages = {1--4}, + pages = {14:1--14:4}, + address = {Nashville, TN, USA}, + month = jul, + _isbn = {9781605586656}, + _url = {https://doi.org/10.1145/1619258.1619277}, + doi = {10.1145/1619258.1619277}, + _note = {[An extended version is available as Tech.\ Rep.\ CS\-/2012\-/02 at Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg]} +} + +@INPROCEEDINGS{NeLe09alphaflow, + author = {Christoph P. Neumann and Richard Lenz}, + title = {{alpha\-/Flow: A Document\-/based Approach to Inter\-/Institutional Process Support in Healthcare}}, + booktitle = {Proc of the 3rd Int'l Workshop on Process\-/oriented Information Systems + in Healthcare (ProHealth'09) in conjunction with the 7th Int'l Conf + on Business Process Management (BPM'09)}, + year = {2009}, + pages = {569--580}, + address = {Ulm, DE}, + month = sep, + doi = {10.1007/978-3-642-12186-9_55}, + _url = {https://doi.org/10.1007/978-3-642-12186-9_55}, + _isbn = {978\-/3\-/642\-/12186\-/9}, + +} + +@INPROCEEDINGS{NeLe09dmps, + author = {Christoph P. Neumann and Richard Lenz}, + title = {{A Light\-/Weight System Extension Supporting Document\-/based Processes + in Healthcare}}, + booktitle = {Proc of the 3rd Int'l Workshop on Process\-/oriented Information Systems + in Healthcare (ProHealth'09) in conjunction with the 7th Int'l Conf + on Business Process Management (BPM'09)}, + year = {2009}, + pages = {557--568}, + address = {Ulm, DE}, + month = sep, + doi = {10.1007/978-3-642-12186-9_54}, + _url = {https://doi.org/10.1007/978-3-642-12186-9_54}, + _isbn = {978\-/3\-/642\-/12186\-/9}, +} + +@INPROCEEDINGS{NeLe10alphaUC, + author = {Christoph P. Neumann and Richard Lenz}, + title = {{The alpha\-/Flow Use\-/Case of Breast Cancer Treatment -- Modeling Inter\-/Institutional Healthcare Workflows by Active Documents}}, + booktitle = {Proc of the 19th Int'l Workshops on Enabling Technologies: Infrastructures for Collaborative Enterprises (WETICE 2010)}, + _extended_booktitle = {Proc of the 8th Int'l Workshop on Agent\-/based Computing for Enterprise Collaboration (ACEC) + at the 19th Int'l Workshops on Enabling Technologies: Infrastructures for Collaborative Enterprises (WETICE 2010)}, + year = {2010}, + pages = {12--22}, + address = {Larissa, GR}, + month = jun, + doi = {10.1109/WETICE.2010.8}, + _url = {https://doi.ieeecomputersociety.org/10.1109/WETICE.2010.8}, + _issn = {1524\-/4547}, +} + +@INPROCEEDINGS{NeFL10oxdbs, + author = {Christoph P. Neumann and Thomas Fischer and Richard Lenz}, + title = {{OXDBS -- Extension of a native XML Database System with Validation by Consistency Checking of OWL\-/DL Ontologies}}, + booktitle = {Proc of the 14th International Database Engineering \& Applications Symposium (IDEAS'10)}, + year = {2010}, + pages = {143--148}, + address = {Montreal, QC, CA}, + month = aug, + _url = {https://doi.org/10.1145/1866480.1866502}, + doi = {10.1145/1866480.1866502}, + _isbn = {978\-/1\-/60558\-/900\-/8}, +} +@INPROCEEDINGS{NSWL11alphaadaptive, + author = {Christoph P. Neumann and Peter K. Schwab and Andreas M. Wahl and Richard Lenz}, + title = {{alpha\-/Adaptive: Evolutionary Workflow Metadata in Distributed Document\-/Oriented Process Management}}, + booktitle = {Proc of the 4th Int'l Workshop on Process\-/oriented Information Systems + in Healthcare (ProHealth'11) in conjunction with the 9th Int'l Conf + on Business Process Management (BPM'11)}, + year = {2011}, + pages = {225--236}, + address = {Clermont\-/Ferrand, FR}, + month = aug, + _isbn = {978\-/3\-/642\-/28115\-/0}, + doi = {10.1007/978-3-642-28115-0_22}, + _url = {https://doi.org/10.1007/978-3-642-28115-0_22} +} + +@TECHREPORT{NeRL12deus, + author = {Christoph P. Neumann and Florian Rampp and Richard Lenz}, + title = {{DEUS: Distributed Electronic Patient File Update System}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg, Dept.\ of Computer Science}, + series = {Technical Reports}, + number = {CS\-/2012\-/02}, + year = {2012}, + month = mar, + issn = {2191\-/5008}, + doi = {10.13140/RG.2.2.18075.23848}, + _url = {https://nbn-resolving.org/urn:nbn:de:bvb:29-opus-32089} +} + +@INPROCEEDINGS{NeWL12offsync, + title={{Adaptive Version Clocks and the OffSync Protocol (Poster)}}, + author={Christoph P. Neumann and Andreas M. Wahl and Richard Lenz}, + booktitle={Proc of the 10th IEEE Int'l Symposium on Parallel and Distributed Processing with Applications (ISPA{-}12)}, + address = {Madrid, Spain}, + month=jul, + year={2012}, + doi = {10.1109/ISPA.2012.123}, + _url = {https://doi.ieeecomputersociety.org/10.1109/ISPA.2012.123}, + issn = {2158\-/9178}, + pages = {835--836}, +} + +@INPROCEEDINGS{NeHL12hydra, + title={{Hydra Version Control System (Poster)}}, + author={Christoph P. Neumann and Scott A. Hady and Richard Lenz}, + booktitle={Proc of the 10th IEEE Int'l Symposium on Parallel and Distributed Processing with Applications (ISPA{-}12)}, + address = {Madrid, Spain}, + month=jul, + year={2012}, + issn = {2158\-/9178}, + pages = {837--838}, + doi = {10.1109/ISPA.2012.124}, + _url = {https://doi.ieeecomputersociety.org/10.1109/ISPA.2012.124}, +} + +@ARTICLE{NeLe12alphaFlow, + author = {Christoph P. Neumann and Richard Lenz}, + title = {{The alpha\-/Flow Approach to Inter\-/Institutional Process Support in Healthcare}}, + journal = {International Journal of Knowledge\-/Based Organizations (IJKBO)}, + publisher = {IGI Global}, + volume = 2, + number = 4, + year = {2012}, + pages = {52--68}, + _url = {http://www.igi-global.com/article/alpha-flow-approach-inter-institutional/72340}, + _urlDOI = {https://doi.org/10.4018/ijkbo.2012100104}, + doi = {10.4018/ijkbo.2012100104} +} + +@MastersThesis{Neumann2012dissPreprint_OldBibTeX, + author = {Christoph P. Neumann}, + title = {{Distributed Document\-/Oriented Process Management in Healthcare}}, + school = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + type = {Dissertation}, + _type = {`Dissertation' (PhD thesis)}, + _type = {PhD thesis (`Dissertation' in Germany)}, + month = nov, + year = 2012, + url = {https://nbn-resolving.org/urn:nbn:de:bvb:29-opus-39070} +} + +@phdthesis{Neumann2012dissPreprint, + author = {Christoph P. Neumann}, + title = {{Distributed Document\-/Oriented Process Management in Healthcare}}, + school = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + month = nov, + year = 2012, + address = {Erlangen}, + doi = {10.13140/RG.2.2.14719.79521}, + url = {https://nbn-resolving.org/urn:nbn:de:bvb:29-opus-39070} +} + +@INPROCEEDINGS{NeLe13adhocCoop, + author = {Christoph P. Neumann and Richard Lenz}, + title = {{Distributed Ad Hoc Cooperation in Healthcare}}, + booktitle = {Post\-/Proceedings of the Joint Int'l Workshops on Process\-/oriented Information Systems in Healthcare and Knowledge Representation for Healthcare (ProHealth'12 / KR4HC'12) in conjunction with the 10th Int'l Conf on Business Process Management (BPM'12)}, + _editor = {Richard Lenz and Silvia Miksch and Mor Peleg and Manfred Reichert and David Riano and Annette ten Teije}, + year = {2013}, + pages = {113--125}, + _address = {Tallinn, EE}, + publisher = {Springer}, + note = {Part of the Lecture Notes in Computer Science book series (LNAI, volume 7738)}, + _isbn = {978\-/3\-/642\-/36437\-/2}, + doi = {10.1007/978-3-642-36438-9_8}, + _url = {https://doi.org/10.1007/978-3-642-36438-9_8}, +}@incollection{Neumann2012lni, + author={Christoph P. Neumann}, + editor={Abraham Bernstein and Wolfgang Effelsberg and Steffen H{\"o}lldobler and Hans{-}Peter Lenhof and Klaus{-}Peter L{\"o}hr and Paul Molitor and Gustaf Neumann and R{\"u}diger Reischuk and Nicole Schweikardt and Myra Spiliopoulou and Harald St{\"o}rrle and Sabine S{\"u}sstrunk}, + title={Verteiltes Dokumenten\-/orientiertes Prozessmanagement im Gesundheitswesen}, + booktitle={Ausgezeichnete Informatikdissertationen 2012}, + series={{LNI}}, + volume={{D{-}13}}, + pages={241--250}, + publisher={{GI}}, + year={2012}, + url={https://dl.gi.de/20.500.12116/33740} +} +@BOOK{Neumann2013dissBook, + author = {Christoph P. Neumann}, + title = {{Distributed Case Handling}}, + year = 2013, + publisher = {Verlag Dr.~Hut}, + address = {M{\"u}nchen}, + isbn = {9783843909198}, + _urn = {urn:nbn:de:bvb:29\-/opus\-/39070}, + _url = {https://d-nb.info/1033041637}, + _note = {\url{http://www.opus.ub.uni-erlangen.de/opus/volltexte/2012/3907/}(preprint version)}, + _note = {\url{https://d-nb.info/1033041637}(DNB)}, + _note = {\url{https://www.dr.hut-verlag.de/978-3-8439-0919-8.html}(URL)} +} + +@INPROCEEDINGS{IND+09lzatav, + author = {Florian Irmert and Christoph P. Neumann and Michael Daum and Niko Pollner and Klaus Meyer\-/Wegener}, + title = {{Technische Grundlagen f{\"u}r eine laufzeitadaptierbare Transaktionsverwaltung}}, + booktitle = {Tagungsband der 13.\,Fachtagung Datenbanksysteme f{\"u}r Business, Technologie und Web (BTW'09)}, + month = mar, + year = {2009}, + pages = {227--236}, + address = {M{\"u}nster, DE}, + publisher = {Gesellschaft f{\"u}r Informatik e.V.\ (GI), K{\"o}ln, Germany}, + doi = {10.1145/1620432.1620442}, + url = {https://dl.gi.de/20.500.12116/20447}, + _isbn = {978\-/3\-/88579\-/238\-/3}, + _issn = {1617\-/5468}, +} + +@INPROCEEDINGS{ILN+09semrttx, + author = {Florian Irmert and Frank Lauterwald and Christoph P. Neumann and Michael Daum and Richard Lenz and Klaus Meyer{-}Wegener}, + title = {{Semantics of a Runtime Adaptable Transaction Manager}}, + booktitle = {Proc of the 13th Int'l Database Engineering \& Applications Symposium (IDEAS'09)}, + month = sep, + year = {2009}, + pages = {88--96}, + address = {Cetraro, IT}, + doi = {10.1145/1620432.1620442}, + _isbn = {9781605584027}, + _url = {https://doi.org/10.1145/1620432.1620442}, +} + +@ARTICLE{JBN+10fcmdb, + author = {Holger von Jouanne{-}Diedrich and Juliane Blechinger and Christoph P. Neumann and Stefan Schwarz and Richard Lenz}, + title = {{Integration verteilter und heterogener Configuration\-/Management\-/Datenbanken}}, + journal = {Informatik\-/Spektrum}, + editor = {Arndt Bode}, + publisher = {Springer}, + issn = {0170\-/6012}, + pages = {351--362}, + volume = {33}, + issue = {4}, + year = {2010}, + doi = {10.1007/s00287-009-0398-6}, + _url = {http://www.springerlink.com/content/e8m40805u21881m2/}, +} + +@INPROCEEDINGS{FDI+10esmmog, + author={Thomas Fischer and Michael Daum and Florian Irmert and Christoph P. Neumann and Richard Lenz}, + title={{Exploitation of Event\-/Semantics for Distributed Publish/Subscribe Systems in Massively Multiuser Virtual Environments}}, + booktitle={Proc of the 14th Int'l Database Engineering \& Applications Symposium (IDEAS'10)}, + year={2010}, + pages = {90--97}, + address = {Montreal, QC, CA}, + month = aug, + doi = {10.1145/1866480.1866494}, + _isbn = {9781605589008}, + _url = {https://doi.org/10.1145/1866480.1866494}, +} + +@TECHREPORT{LNR+11egr, + author = {Frank Lauterwald and Christoph P. Neumann and Richard Lenz and Anselm G. J{\"u}nemann and Christian Y. Mardin and Klaus Meyer{-}Wegener and Folkert K. Horn}, + title = {{The Erlangen Glaucoma Registry: a Scientific Database for Longitudinal Analysis of Glaucoma}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg, Dept.\ of Computer Science}, + type = {Technical Reports}, + number = {CS\-/2011\-/02}, + year = {2011}, + month = dec, + doi = {10.13140/RG.2.2.31497.01128}, + _issn = {2191\-/5008}, + _url = {https://nbn-resolving.org/urn:nbn:de:bvb:29-opus-39057} +} + +@INPROCEEDINGS{PANP23seccloudfogai, + title={{Security Challenges for Cloud or Fog Computing-Based AI Applications}}, + author={Amir Pakmehr and Andreas A{\ss}muth and Christoph P. Neumann and Gerald Pirkl}, + booktitle={Proc of the 14th International Conference on Cloud Computing, GRIDs, and Virtualization (Cloud Computing 2023)}, + _organization={International Academy, Research, and Industry Association (IARIA)}, + address = {Nice, France}, + month=jun, + year={2023}, + doi = {10.48550/ARXIV.2310.19459}, + _url = {https://www.thinkmind.org/index.php?view=article&articleid=cloud_computing_2023_2_10_28004}, + issn = {2308-4294}, + pages = {21--29}, +} + +@INPROCEEDINGS{LeNe24vocattllm, + title={{Vocabulary Attack to Hijack Large Language Model Applications}}, + author={Patrick Levi and Christoph P. Neumann}, + booktitle={Proc of the 15th International Conference on Cloud Computing, GRIDs, and Virtualization (Cloud Computing 2024)}, + _organization={International Academy, Research, and Industry Association (IARIA)}, + address = {Venice, Italy}, + month=apr, + year={2024}, + _doi = {TODO}, + _url = {https://www.thinkmind.org/index.php?view=article&articleid=cloud_computing_2024_X_YY_ZZZZZ}, + issn = {2308-4294}, + _pages = {AA--OO}, + note = {accepted for publication} +} + +@INPROCEEDINGS{ToNe11alphaprops, + author = {Aneliya Todorova and Christoph P. Neumann}, + title = {{alpha-Props: A Rule-Based Approach to `Active Properties' for Document-Oriented Process Support in Inter-Institutional Environments (Poster)}}, + booktitle = {Lecture Notes in Informatics (LNI) Seminars 10\,/\,Informatiktage 2011}, + year={2011}, + month=mar, + pages={131--134}, + editor={Ludger Porada}, + organization={Gesellschaft f{\"u}r Informatik e.V.\ (GI)}, + isbn={978-3-88579-444-8}, + _url={http://www6.informatik.uni-erlangen.de/publications/public/2011/giinformatiktage2011_stud-todorova_neumann.pdf} +} + +@INPROCEEDINGS{WaNe12alphaoffsync, + author = {Andreas M. Wahl and Christoph P. Neumann}, + title = {{alpha-OffSync: An Offline-Capable Synchronization Approach for Distributed Document-Oriented Process Management in Healthcare (Poster)}}, + booktitle = {Lecture Notes in Informatics (LNI) Seminars 11\,/\,Informatiktage 2012}, + year={2012}, + month=mar, + pages={131--134}, + editor={Ludger Porada}, + organization={Gesellschaft f{\"u}r Informatik e.V.\ (GI)}, + isbn={978-3-88579-444-8}, + _url={http://www6.informatik.uni-erlangen.de/publications/public/2012/giinformatiktage2012_stud-wahl_neumann.pdf} +} + +@INPROCEEDINGS{StNe23foodfresh, + title={{FoodFresh: Multi-Chain Design for an Inter-Institutional Food Supply Chain Network}}, + author={Philipp Stangl and Christoph P. Neumann}, + booktitle={Proc of the 14th International Conference on Cloud Computing, GRIDs, and Virtualization (Cloud Computing 2023)}, + _organization={International Academy, Research, and Industry Association (IARIA)}, + address = {Nice, France}, + month=jun, + year={2023}, + doi = {10.48550/ARXIV.2310.19461}, + _url = {https://www.thinkmind.org/index.php?view=article&articleid=cloud_computing_2023_2_30_28006}, + issn = {2308-4294}, + pages = {41--46}, +} + +@TECHREPORT{SaNe24othfb, + author = {Patrick Sabau and Christoph P. Neumann}, + title = {{Analyse von Methoden zur Sicherung der Vertraulichkeit in Neuronalen Netzen}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + type = {Forschungsbericht}, + number = {2024}, + year = {2024}, + month = mar, + _issn = {2365\-/1997}, + doi = {10.13140/RG.2.2.21052.65924}, + _url1 = {https://www.oth-aw.de/hochschule/mediathek/forschungsbericht/}, + _url2 = {https://www.oth-aw.de/files/oth-aw/Aktuelles/Veroeffentlichungen/Forschungsbericht/OTH_Forschungsbericht_2024.pdf}, + _url3 = {https://www.researchgate.net/profile/Christoph-Neumann-8/publication/379109359_Analyse_von_Methoden_zur_Sicherung_der_Vertraulichkeit_in_Neuronalen_Netzen/links/65faff43a4857c7962654c5c/Analyse-von-Methoden-zur-Sicherung-der-Vertraulichkeit-in-Neuronalen-Netzen.pdf} +} +@TECHREPORT{ModA-TR-2021SS-WAE-TeamWeiss-CovidDashboard, + author = {Tobias Bauer and Albert Hahn and Lukas Kleinlein and Nicolas Proske and Leonard W{\"o}llmer and Andrei Trukhin and Christoph P. Neumann}, + title = {{Covidash: Eine MEAN\-/Variation-basierte Webanwendung für Inzidenz\-/Zahlen und Impffortschritt in Deutschland}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2021-06}, + year = 2021, + month = 7, + doi = {10.13140/RG.2.2.33921.84321}, + _url = {https://dx.doi.org/10.13140/RG.2.2.33921.84321}, +} +@TECHREPORT{ModA-TR-2021SS-WAE-TeamRot-FireForceDefense, + author = {Cameron Barbee and Tim Hoffmann and Christian Piffel and Tobias Schotter and Sebastian Schuscha and Philipp Stangl and Thomas Stangl and Christoph P. Neumann}, + title = {{FireForceDefense: Graphisches Tower\-/Defense\-/Spiel mit Kubernetes\-/Deployment}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2021-05}, + year = 2021, + month = 7, + doi = {10.13140/RG.2.2.20500.07048}, + _url = {https://dx.doi.org/10.13140/RG.2.2.20500.07048}, +} +@TECHREPORT{ModA-TR-2021SS-WAE-TeamGruen-MedPlanner, + author = {Egidia Cenko and Madina Kamalova and Matthias Sch{\"o}n and Christoph Schuster and Andrei Trukhin and Christoph P. Neumann}, + title = {{MedPlanner: Eine Angular- und Django\-/basierte Webanwendung um ärztliche Termine übersichtlich zu verwalten}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2021-04}, + year = 2021, + month = 7, + doi = {10.13140/RG.2.2.19409.71528}, + _url = {https://dx.doi.org/10.13140/RG.2.2.19409.71528}, +} + +@TECHREPORT{ModA-TR-2022SS-WAE-TeamWeiss-WoIstMeinGeld, + author = {Alexander Ziebell and Anja Stricker and Annika Stadelmann and Leo Schurrer and Philip Bartmann and Ronja B{\"a}umel and Ulrich Stark and Christoph P. Neumann}, + title = {{Wo ist mein Geld: Eine MERN\-/basierte Webanwendung für gemeinsame Ausgaben mit Freunden oder Kollegen}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2022-11}, + year = 2022, + month = 7, + doi = {10.13140/RG.2.2.28888.67847}, + _url = {https://dx.doi.org/10.13140/RG.2.2.28888.67847}, +} + + + +@TECHREPORT{ModA-TR-2022SS-BDCC-TeamWeiss-TwitterDash, + author = {Bastian Hahn and Martin Kleber and Andreas Klier and Lukas Kreussel and Felix Paris and Andreas Ziegler and Christoph P. Neumann}, + title = {{Twitter-Dash: React- und .NET\-/basierte Trend- und Sentiment\-/Analysen}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2022-07}, + year = 2022, + month = 7, + doi = {10.13140/RG.2.2.15466.90564}, + _url = {https://dx.doi.org/10.13140/RG.2.2.15466.90564}, +} +@TECHREPORT{ModA-TR-2022SS-BDCC-TeamRot-Reddiment, + author = {Tobias Bauer and Fabian Beer and Daniel Holl and Ardian Imeraj and Konrad Schweiger and Philipp Stangl and Wolfgang Weigl and Christoph P. Neumann}, + title = {{Reddiment: Eine SvelteKit- und ElasticSearch\-/basierte Reddit Sentiment\-/Analyse}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2022-06}, + year = 2022, + month = 7, + doi = {10.13140/RG.2.2.32244.12161}, + _url = {https://dx.doi.org/10.13140/RG.2.2.32244.12161}, +} +@TECHREPORT{ModA-TR-2022SS-BDCC-TeamGruen-ExplosionGuy, + author = {Florian B{\"o}sl and Helge Kohl and Anastasia Chernysheva and Patrice Korinth and Philipp Porsch and Christoph P. Neumann}, + title = {{Explosion Guy: Cloud\-/basiertes Matchmaking für einen graphischen Bombenspaß}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2022-05}, + year = 2022, + month = 7, + doi = {10.13140/RG.2.2.18822.34882}, + _url = {https://dx.doi.org/10.13140/RG.2.2.18822.34882}, +} +@TECHREPORT{ModA-TR-2022SS-BDCC-TeamCyan-OTHWiki, + author = {Dominik Smrekar and Johannes Horst and Patrick Sabau and Saniye Ogul and Tobias Schotter and Christoph P. Neumann}, + title = {{OTH-Wiki: Ein Angular- und FastAPI\-/basiertes Wiki für Studierende}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2022-04}, + year = 2022, + month = 7, + doi = {10.13140/RG.2.2.25533.23526}, + _url = {https://dx.doi.org/10.13140/RG.2.2.25533.23526}, +} + + +@TECHREPORT{ModA-TR-2022WS-SWT-TeamGruen-Graphvio, + author = {Johannes Halbritter and Helge Kohl and Lukas Kreussel and Stephan Prettner and Andreas Ziegler and Christoph P. Neumann}, + title = {{Graphvio: Eine Graphdatenbank\-/Webanwendung für integrierte Datensätze von Streaminganbietern}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2022-01}, + year = 2022, + month = 3, + doi = {10.13140/RG.2.2.12111.46244}, + _url = {https://dx.doi.org/10.13140/RG.2.2.12111.46244}, +} + +@TECHREPORT{ModA-TR-2023SS-WAE-TeamWeiss-Neunerln, + author = {Paul Brandl and Manuel Kalla and Dominik Panzer and Kevin Paulus and Manuel Pickl and Franziska Rubenbauer and Berkay Yurdaguel and Christoph P. Neumann}, + title = {{Neunerln: Eine MEVN\-/basierte Webanwendung zum kompetitiven Kartenspielen}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2023-11}, + year = 2023, + month = 7, + doi = {10.13140/RG.2.2.33933.31209}, + _url = {https://dx.doi.org/10.13140/RG.2.2.33933.31209}, +} + + +@TECHREPORT{ModA-TR-2023SS-BDCC-TeamRot-CompVisPipeline, + author = {André Kestler and Antonio Vidos and Marcus Haberl and Tobias Dobmeier and Tobias Lettner and Tobias Weiß and Christoph P. Neumann}, + title = {{Computer Vision Pipeline: Eine React- und Flask\-/basierte Webanwendung zur No\-/Code\-/Bildverarbeitung mit Cloud\-/Deployment}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2023-08}, + year = 2023, + month = 7, + doi = {10.13140/RG.2.2.23866.98248}, + _url = {https://dx.doi.org/10.13140/RG.2.2.23866.98248}, +} +@TECHREPORT{ModA-TR-2023SS-BDCC-TeamBlau-NauticalNonsense, + author = {Jakob Götz and Uwe Kölbel and Maximilian Schlosser and Oliver Schmidts and Jan Schuster and Philipp Seufert and Fabian Wagner and Christoph P. Neumann}, + title = {{Nautical Nonsense: Eine Phaser3- und FastAPI\-/basierte Webanwendung für Schiffe\-/Versenken mit Cloud\-/Deployment}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2023-07}, + year = 2023, + month = 7, + doi = {10.13140/RG.2.2.17156.09601}, + _url = {https://dx.doi.org/10.13140/RG.2.2.17156.09601}, +} +@TECHREPORT{ModA-TR-2023SS-BCN-TeamGruen-TorpedoTactics, + author = {Lukas Feil and Stefan Reger and Timon Spichtinger and Manuel Pickl and Gian Piero Cecchetti and Alexander Hammer and Berkay Yurdagül and Christoph P. Neumann}, + title = {{Torpedo Tactics: Eine MEVN\-/basierte Webanwendung für Schiffe\-/Versenken mit Cloud\-/Deployment}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2023-06}, + year = 2023, + month = 7, + doi = {10.13140/RG.2.2.22608.69120}, + _url = {https://dx.doi.org/10.13140/RG.2.2.22608.69120}, +} + +@TECHREPORT{ModA-TR-2023SS-BCN-TeamCyan-Stockbird, + author = {Rebecca Kietzer and Baran Baygin and Carl Küschall and Jonathan Okorafor and Luca Käsmann and Michael Zimmet and Michael Ippisch and Christoph P. Neumann}, + title = {{Stockbird: Eine React\-/basierte Webanwendung mit serverless Cloud\-/Deployment zur Analyse des Einfluss von Tweets auf Aktienkurs\-/Schwankungen}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2023-04}, + year = 2023, + month = 7, + doi = {10.13140/RG.2.2.32675.02083}, + _url = {https://dx.doi.org/10.13140/RG.2.2.32675.02083}, +} +@TECHREPORT{ModA-TR-2023SS-BCN-TeamBlau-FancyChess, + author = {Christian Rute and Alex Müller and Alexander Rudolf Wittmann and Arthur Zimmermann and David Nestmeyer and Julian Tischlak and Matthias Wolfinger and Christoph P. Neumann}, + title = {{FancyChess: Eine Next.js\-/basierte Cloud-Anwendung zum Schachspielen}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2023-03}, + year = 2023, + month = 7, + doi = {10.13140/RG.2.2.19253.24802}, + _url = {https://dx.doi.org/10.13140/RG.2.2.19253.24802}, +} +@TECHREPORT{ModA-TR-2023WS-SWT-TeamRot-SGDb, + author = {Anastasia Chernysheva and Jakob G{\"o}tz and Ardian Imeraj and Patrice Korinth and Philipp Stangl and Christoph P. Neumann}, + title = {{SGDb Semantic Video Game Database: Svelte- und Ontotext\-/basierte Webanwendung mit einer Graphen\-/Suche für Videospiele}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2023-02}, + year = 2023, + month = 3, + doi = {10.13140/RG.2.2.11272.60160}, + _url = {https://dx.doi.org/10.13140/RG.2.2.11272.60160}, +} +@TECHREPORT{ModA-TR-2023WS-SWT-TeamGruen-OPCUANetzwerk, + author = {Johannes Horst and Manuel Zimmermann and Patrick Sabau and Saniye Ogul and Stefan Ries and Tobias Schotter and Christoph P. Neumann}, + title = {{OPCUA-Netzwerk: Angular- und FastAPI\-/basierte Entwicklung eines OPC-UA Sensor\-/Netzwerks für den Heimbereich}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden, CyberLytics\-/Lab an der Fakult{\"a}t Elektrotechnik, Medien und Informatik}, + series = {Technischer Bericht}, + number = {CL-2023-01}, + year = 2023, + month = 3, + doi = {10.13140/RG.2.2.22177.79209}, + _url = {https://dx.doi.org/10.13140/RG.2.2.22177.79209}, +} + diff --git a/macros/latex/contrib/cs-techrep/template/cpn_supervised_all.bib b/macros/latex/contrib/cs-techrep/template/cpn_supervised_all.bib new file mode 100644 index 0000000000..d4341f790c --- /dev/null +++ b/macros/latex/contrib/cs-techrep/template/cpn_supervised_all.bib @@ -0,0 +1,397 @@ +@Thesis{kampf2012bt, + author = {Kampf, Marvin}, + title = {{alpha\-/CDM: Konzeption und Implementierung eines Modells zur Inhaltsabh{\"a}ngigkeit als Baustein einer Prozessunterst{\"u}tzung auf Basis von aktiven Dokumenten}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2012, + month = nov, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/BT_simakamp/BT_simakamp.pdf}, +} +@Thesis{hunsen2012mt, + author = {Hunsen, Christian}, + title = {{alpha\-/Doyen: Ein Verfahren zur Wortf{\"u}hrerschaft\-/{\"U}bertragung als Baustein einer Prozessunterst{\"u}tzung auf Basis von aktiven Dokumenten}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2012, + month = jul, + type = {Masterarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/MT_uj32uvac/MT_uj32uvac.pdf}, +} +@Thesis{schmidt2012bt, + author = {Schmidt, Alexander}, + title = {{Gegen{\"u}berstellung verschiedener Paradigmen zur Behandlung von Fehlern und Ausnahmen in verteilten Systemen}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2012, + month = apr, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/BT_siaascmi/BT_siaascmi.pdf}, +} +@Thesis{tsysin2011bt, + author = {Tsysin, Konstantin}, + title = {{alpha\-/PrintPut: Ein Windows\-/Druckertreiber zum Einbringen von Dokumenten aus beliebigen Drittanwendungen als Baustein einer Prozessunterst{\"u}tzung auf Basis von aktiven Dokumenten}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2011, + month = dec, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/BT_sikotsys/BT_sikotsys.pdf}, +} +@Thesis{wagner2011da, + author = {Wagner, Florian}, + title = {{alpha\-/Forms: Selbst\-/editierbare Formulare als Baustein einer Prozessunterst{\"u}tzung auf Basis von aktiven Dokumenten}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2011, + month = dec, + type = {Diplomarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/DA_siflwagn/DA_siflwagn.pdf}, +} +@Thesis{hady2011da, + author = {Hady, Scott}, + title = {{alpha\-/VVS: An integrated Version Control System as a Component of Process Support based on Active Documents}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2011, + month = nov, + type = {Diplomarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/DA_sischady/DA_sischady.pdf}, +} +@Thesis{wahl2011bt, + author = {Wahl, Andreas M.}, + title = {{alpha\-/OffSync: Verteilten Datensynchronisation in Form von IMAP\-/basiertem Mail\-/Transfer als Baustein einer Prozessunterst{\"u}tzung auf Basis von aktiven Dokumenten}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2011, + month = oct, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/BT_sianwahl/BT_sianwahl.pdf}, +} +@Thesis{reischl2011bt, + author = {Reischl, Patrick}, + title = {{alpha\-/Templates: Import und Export von `Process Templates' als Baustein einer Prozessunterst{\"u}tzung auf Basis von aktiven Dokumenten}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2011, + month = oct, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/BT_sipareis/BT_sipareis.pdf}, +} +@Thesis{lempetzeder2011bt, + author = {Lempetzeder, Benedikt}, + title = {{Gegen{\"u}berstellung verschiedener Paradigmen zur Darstellung von Prozesseigenschaften unter Ber{\"u}cksichtigung von Zeit und Daten}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2011, + month = sep, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/BT_sibelemp/BT_sibelemp.pdf}, +} +@Thesis{engel2011sa, + author = {Engel, Igor}, + title = {{Konzeption und Implementierung einer verteilten Institutionsverwaltung als anwendungsspezifische Form eines verteilten Metadaten\-/Repository}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2011, + month = jul, + type = {Studienarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/SA_siigenge/SA_siigenge.pdf}, +} +@Thesis{schwab2011da, + author = {Schwab, Peter}, + title = {{alpha\-/Adaptive: Ein adaptives Attributmodell als Baustein einer Prozessunterst{\"u}tzung auf Basis von aktiven Dokumenten}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2011, + month = jun, + type = {Diplomarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/DA_sipeschw/DA_sipeschw.pdf}, +} +@Thesis{kreuter2011da, + author = {Kreuter, André}, + title = {{Recherche und vergleichende Evaluation von verf{\"u}gbaren Ans{\"a}tzen f{\"u}r `Content\-/oriented Workflows'}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2011, + month = may, + type = {Diplomarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/DA_siankreu/DA_siankreu.pdf}, +} +@Thesis{hady2011sa, + author = {Hady, Scott}, + title = {{Conception and Implementation of Database Persistence for the .getmore Test Case Generator}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2011, + month = mar, + type = {Studienarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/SA_sischady/SA_sischady.pdf}, + note = {In Kooperation mit der sepp.med GmbH}, +} +@Thesis{hanisch2010da, + author = {Hanisch, Stefan}, + title = {{Konzeption und Implementierung einer Infrastruktur f{\"u}r aktive Dokumente}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2010, + month = oct, + type = {Diplomarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/DA_sisnhani/DA_sisnhani.pdf}, +} +@Thesis{pehlivanov2010bt, + author = {Pehlivanov, Hristiyan}, + title = {{Design and Implementation of a Participant Tracker for Distributed Active Documents Based on Peer\-/to\-/Peer\-/Based File Sharing Protocols}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2010, + month = sep, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/BT_sihrpehl/BT_sihrpehl.pdf}, +} +@Thesis{idler2010bt, + author = {Idler, Steffen}, + title = {{Recherche und vergleichende Evaluation von verf{\"u}gbaren Ans{\"a}tzen f{\"u}r `Aktive Dokumente'}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2010, + month = sep, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/BT_sistidle/BT_sistidle.pdf}, +} +@Thesis{todorova2010da, + author = {Todorova, Anelyia}, + title = {{Design and Implementation of a Lightweight, Autonomous, Rule\-/Based System Which Realizes `Active Properties' in the Context of Active Documents}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2010, + month = jul, + type = {Diplomarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/DA_siantodo/DA_siantodo.pdf}, +} +@Thesis{schinn2010sa, + author = {Schinn, Manuela}, + title = {{Entwurf und Realisierung eines Webportals zum Zugriff auf Patientenleitf{\"a}den mit Hilfe von Ercatons}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2010, + month = jan, + type = {Studienarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/SA_schinnma/SA_schinnma.pdf}, + note = {In Kooperation mit der Living Pages Research GmbH}, +} +@Thesis{hanisch2009sa, + author = {Hanisch, Stefan}, + title = {{Erweiterung einer nativen XML\-/Datenbank um die Validierung anhand einer Ontologie}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2009, + month = dec, + type = {Studienarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/SA_sisnhani/SA_sisnhani.pdf}, + note = {In Kooperation mit Regionales Rechenzentrum Erlangen (RRZE)}, +} +@Thesis{roth2009da, + author = {Roth, Gernot}, + title = {{Konzeption und Realisierung eines verteilten Master Patient Index}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2009, + month = jun, + type = {Diplomarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/DA_sigeroth/DA_sigeroth.pdf}, +} +@Thesis{kreuter2009sa, + author = {Kreuter, André}, + title = {{Data Warehouse zur Prognose von Studentenzahlen f{\"u}r Vorlesungen}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2009, + month = jun, + type = {Studienarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/SA_siankreu/SA_siankreu.pdf}, +} +@Thesis{rampp2009da, + author = {Rampp, Florian}, + title = {{Design and Implementation of a Distributed Address Database Following a Publish/Subscribe Architecture to Share Patient Data Among Autonomous Healthcare Information Systems}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2009, + month = mar, + type = {Diplomarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/DA_siflramp/DA_siflramp.pdf}, +} +@Thesis{taralov2009da, + author = {Taralov, Emil}, + title = {{Erweiterung der HL7 Clinical Document Architecture um Prozessstatusinformation}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2009, + month = feb, + type = {Diplomarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/DA_siemtara/DA_siemtara.pdf}, +} +@Thesis{wagner2009sa, + author = {Wagner, Florian}, + title = {{Entwurf und Realisierung eines IHE XDS Komponenten\-/Teststands}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2009, + month = jan, + type = {Studienarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/SA_siflwagn/SA_siflwagn.pdf}, +} +@Thesis{rampp2008sa, + author = {Rampp, Florian}, + title = {{Entwurf und Implementierung einer Bahnplanungsmethode f{\"u}r kooperierende Industrieroboter}}, + institution = {Friedrich\-/Alexander\-/Universit{\"a}t Erlangen\-/N{\"u}rnberg}, + year = 2008, + month = feb, + type = {Studienarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/FAU/SA_siflramp/SA_siflramp.pdf}, + note = {In Kooperation mit dem FAPS Institut als Teil des SFB396}, +} + +@Thesis{schotter_tobias_2023mt, + author = {Schotter, Tobias}, + title = {{Vorhersage von Jobkündigungen anhand von Lohnabrechnungsdaten}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2023, + month = oct, + type = {Masterarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/MT_2023_Schotter_Tobias_Thesis/MT_2023_Schotter_Tobias_Thesis.pdf}, + note = {In Kooperation mit der DATEV}, +} +@Thesis{sabau_patrick_2023mt, + author = {Sabau, Patrick}, + title = {{Analyse und Bewertung von Methoden zur Sicherung der Vertraulichkeit in Neuronalen Netzen}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2023, + month = sep, + type = {Masterarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/MT_2023_Sabau_Patrick_Thesis/MT_2023_Sabau_Patrick_Thesis.pdf}, +} +@Thesis{barthelmann_erik_2023bt, + author = {Barthelmann, Erik}, + title = {{Erstellung eines Datenmodells für die Integration unterschiedlicher Datenquellen in einem Werksstandort mittels Anchor Modeling und der Realisierung in SD}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2023, + month = aug, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2023_Barthelmann_Erik_Thesis/BT_2023_Barthelmann_Erik_Thesis.pdf}, + note = {In Kooperation mit der SIEMENS AG}, +} +@Thesis{klier_andreas_2023mt, + author = {Klier, Andreas}, + title = {{Prediction of Faults in Cables as a Building Block of Predictive Maintenance for Medical Devices}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2023, + month = jun, + type = {Masterarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/MT_2023_Klier_Andreas_Thesis/MT_2023_Klier_Andreas_Thesis.pdf}, + note = {In Kooperation mit SIEMENS Healthineers}, +} +@Thesis{rall_adrian_2023bt, + author = {Rall, Adrian}, + title = {{Conception and Development of a Dependency Update +Mechanism for the Automatic Distribution of a New +Software Version in Special Machinery and Industrial +Engineering}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2023, + month = apr, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2023_Rall_Adrian_Thesis/BT_2023_Rall_Adrian_Thesis.pdf}, + note = {In Kooperation mit der BHS Corrugated Maschinen- und Anlagenbau GmbH}, +} +@Thesis{weiß_tobias_2023bt, + author = {Weiß, Tobias}, + title = {{Entwurf und Implementierung einer Daten\-/Pipeline zur Aufbereitung von IoT Daten in der Fertigung}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2023, + month = mar, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2023_Weiß_Tobias_Thesis/BT_2023_Weiß_Tobias_Thesis.pdf}, +} +@Thesis{antskaitis_arina_2023bt, + author = {Antskaitis, Arina}, + title = {{Route optimization for Germany\-/wide services in occupational health management}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2023, + month = mar, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2023_Antskaitis_Arina_Thesis/BT_2023_Antskaitis_Arina_Thesis.pdf}, + note = {In Kooperation mit der wellabe GmbH}, +} +@Thesis{veshi_eni_2023bt, + author = {Veshi, Eni}, + title = {{Extension of a web\-/based time recording system with the capabilities of a progressive web app and integrated video streaming}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2023, + month = mar, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2023_Veshi_Eni_Thesis/BT_2023_Veshi_Eni_Thesis.pdf}, + note = {In Kooperation mit Crew Active, einer Marke von Run4Dev}, +} +@Thesis{stricker_anja_2022bt, + author = {Stricker, Anja}, + title = {{Entwurf und Implementierung eines konfigurierbaren Alarmsystems f{\"u}r Monitoring\-/Systeme unter Ber{\"u}cksichtigung von Hochsicherheitsbereichen}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2022, + month = dec, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2022_Stricker_Anja_Thesis/BT_2022_Stricker_Anja_Thesis.pdf}, + note = {In Kooperation mit der M{\"u}hlbauer GmbH \& Co.\ KG}, +} +@Thesis{schuster_christoph_2022bt, + author = {Schuster, Christoph}, + title = {{Gegen{\"u}berstellung von Ans{\"a}tzen f{\"u}r Progressive Web Apps zum Entwurf von hybriden Benutzeroberfl{\"a}chen am Beispiel einer Reiseziele\-/Anwendung}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2022, + month = aug, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2022_Schuster_Christoph_Thesis/BT_2022_Schuster_Christoph_Thesis.pdf}, +} +@Thesis{hoffmann_tim_2022bt, + author = {Hoffmann, Tim}, + title = {{Entwurf und Implementierung einer Progressiven Web App am Beispiel der technischen Transition einer Cloud\-/L{\"o}sung f{\"u}r webbasierte Datenbearbeitung und Reporting}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2022, + month = apr, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2022_Hoffmann_Tim_Thesis/BT_2022_Hoffmann_Tim_Thesis.pdf}, + note = {In Kooperation mit der INSIGMA IT Engineering GmbH}, +} +@Thesis{pohl_patrick_2022bt, + author = {Pohl, Patrick}, + title = {{Evaluation von Cypress f{\"u}r End\-/To\-/End Testing von Vue\-/basierten Webanwendungen am Beispiel eines Content Management Systems}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2022, + month = apr, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2022_Pohl_Patrick_Thesis/BT_2022_Pohl_Patrick_Thesis.pdf}, + note = {In Kooperation mit lilaquadrat}, +} +@Thesis{hahn_albert_2022bt, + author = {Hahn, Albert}, + title = {{Konzeption und Implementierung einer Microservice Architektur in einem hybriden Kubernetes\-/Cluster f{\"u}r industrielle KI\-/Anwendungsf{\"a}lle}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2022, + month = mar, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2022_Hahn_Albert_Thesis/BT_2022_Hahn_Albert_Thesis.pdf}, + note = {In Kooperation mit der Krones AG}, +} +@Thesis{tacli_harun_2022bt, + author = {Tacli, Harun}, + title = {{Validierung der Echtzeitf{\"a}higkeit von orchestrierten Software\-/Umgebungen}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2022, + month = mar, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2022_Tacli_Harun_Thesis/BT_2022_Tacli_Harun_Thesis.pdf}, + note = {In Kooperation mit der Audi AG}, +} +@Thesis{stangl_thomas_2022bt, + author = {Stangl, Thomas}, + title = {{Entwurf und Implementierung einer Webanwendung zur einfachen Fernsteuerung von Digitalmischpulten}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2022, + month = mar, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2022_Stangl_Thomas_Thesis/BT_2022_Stangl_Thomas_Thesis.pdf}, +} +@Thesis{schotter_tobias_2022bt, + author = {Schotter, Tobias}, + title = {{Evaluation von Qubes OS f{\"u}r den Einsatz in Klein- und Mittelst{\"a}ndischen SW\-/Entwicklungsunternehmen}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2022, + month = feb, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2022_Schotter_Tobias_Thesis/BT_2022_Schotter_Tobias_Thesis.pdf}, +} +@Thesis{stangl_philipp_2022bt, + author = {Stangl, Philipp}, + title = {{Entwurf und Implementierung eines heterogenen Blockchain\-/Konsortiums f{\"u}r ein Lebensmittel\-/Lieferketten\-/Netzwerk}}, + institution = {Ostbayerische Technische Hochschule Amberg\-/Weiden}, + year = 2022, + month = jan, + type = {Bachelorarbeit}, + _url = {https://www.cyberlytics.eu/theses/all/OTH-AW/BT_2022_Stangl_Philipp_Thesis/BT_2022_Stangl_Philipp_Thesis.pdf}, +} diff --git a/macros/latex/contrib/cs-techrep/template/cs-techrep-example-neumann.pdf b/macros/latex/contrib/cs-techrep/template/cs-techrep-example-neumann.pdf Binary files differnew file mode 100644 index 0000000000..ab3603dce7 --- /dev/null +++ b/macros/latex/contrib/cs-techrep/template/cs-techrep-example-neumann.pdf diff --git a/macros/latex/contrib/cs-techrep/template/cs-techrep-example-neumann.tex b/macros/latex/contrib/cs-techrep/template/cs-techrep-example-neumann.tex new file mode 100644 index 0000000000..9122c3ddf4 --- /dev/null +++ b/macros/latex/contrib/cs-techrep/template/cs-techrep-example-neumann.tex @@ -0,0 +1,259 @@ +\documentclass[conference,a4paper,flushend]{cs-techrep} +\pdfoutput=1 % pdflatex hint for arxiv.org (within first 5 lines) + +% Class iaria.cls loads biblatex / biber with predefined options +\addbibresource{embedded.bib} % its content is declared below, embedded within this tex-file +\addbibresource{webdev_commons.bib} % includes REST, React, Angular, Vue, Svelte, Docker, AWS-*, Socket.IO, and many more! +\addbibresource{cpn_all_all.bib} % includes all previous CyberLytics@OTH-AW technical reports + +% ====================================================================== +% EDIT THESE: + +\cstechrepAuthorListTex{Christoph P.\ Neumann\,\orcidlink{0000-0002-5936-631X}} +% Team example: +%\cstechrepAuthorListTex{Vorname1 Nachname1, Vorname2 Nachname2, Vorname3 Nachname3, Vorname4 Nachname4,\\ Vorname5 Nachname5, Vorname6 Nachname6, Christoph P.\ Neumann\,\orcidlink{0000-0002-5936-631X}} +\cstechrepAuthorListBib{Christoph P. Neumann} +% Team example: +%\cstechrepAuthorListBib{Vorname1 Nachname1 and Vorname2 Nachname2 and Vorname3 Nachname3 and Vorname4 Nachname4 and Vorname5 Nachname5 and Vorname6 Nachname6 and Christoph P. Neumann} + +\cstechrepTitleTex{The cs-techrep Example of a Technical Report in Computer Science and Software Engineering} + % IF you need manual linebreaks in the titel, then clone the title without linebreaks for BibTeX: +\cstechrepTitleBib{{\cstechrepTitleTex}} +%\cstechrepTitleBib{The cs-techrep \LaTeX{} Class Example of a Software Engineering Technical Report} + +\cstechrepDepartment{CyberLytics\-/Lab at the Department of Electrical Engineering, Media, and Computer Science} +%\cstechrepDepartment{CyberLytics\-/Lab an der Fakultät Elektrotechnik, Medien und Informatik} % DE +\cstechrepInstitution{Ostbayerische Technische Hochschule Amberg\-/Weiden} +\cstechrepAddress{Amberg, Germany} +%\cstechrepAddress{Amberg, Deutschland} % DE +\cstechrepSeries{Technical Reports} +%\cstechrepSeries{Technische Berichte} % DE +\cstechrepYear{2024} +\cstechrepMonth{3} +\cstechrepNumber{CL-\cstechrepYear{}-42} +\cstechrepLang{english} % en-US +%\cstechrepLang{ngerman} % DE + +% Special remark on babel/csquotes terminology in regard with US-vs-UK: +% en-US = [english]/[american]/[usenglish] (+ [canadian]) +% en-UK = [british] /[ukenglish] (+ [australian]) <OXFORD> +% For cs-techrep (like ACM), the recommended english variant is en-US! + +% DO NOT DELETE THIS: +\filecontentsForceExpansion|[] % force command expansion inside a filecontents* environment +\begin{filecontents*}[overwrite]{selfref.bib} + @TECHREPORT{selfref, + author = {|cstechrepAuthorListBib}, + title = {\cstechrepTitleBib}, + institution = {\cstechrepInstitution, \cstechrepDepartment}, + series = {\cstechrepSeries}, + number = {\cstechrepNumber}, + year = {|cstechrepYear}, + month = {|cstechrepMonth}, + langid = {|cstechrepLang}, + } +\end{filecontents*} + +% ====================================================================== +% EDIT THIS: + +\begin{filecontents}[overwrite]{embedded.bib} + @online{ieee2015howto, + author = {Michael Shell}, + title = {How to Use the {IEEEtran} \LaTeX\ Class}, + url = {http://mirrors.ctan.org/macros/latex/contrib/IEEEtran/IEEEtran_HOWTO.pdf}, + year = {2015} + } + @online{ieee2018formattingrules, + author = {{IEEE}}, + title = {Conference Template and Formatting Specifications}, + url = {https://www.ieee.org/content/dam/ieee-org/ieee/web/org/conferences/Conference-template-A4.doc}, + year = {2018} + } + @online{iaria2014formattingrules, + author = {{IARIA}}, + title = {Formatting Rules}, + url = {http://www.iaria.org/formatting.doc}, + year = {2014} + } + @online{iaria2009editorialrules, + _author = {Cosmin Dini}, + author = {{IARIA}}, + title = {Editorial Rules}, + url = {https://www.iaria.org/editorialrules.html}, + year = {2009} + } + @online{languagetool, + author = {{LanguageTooler GmbH}}, + title = {{LangueTool}}, + url = {https://languagetool.org/overleaf} + } + @online{overleaf, + author = {{Digital Science UK Limited}}, + title = {{Overleaf}}, + url = {https://www.overleaf.com} + } +\end{filecontents} + +\usepackage{fontawesome} % i.a., \faWarning{} +\usepackage{relsize} % i.a., \textsmaller{...} +\usepackage{lipsum} % for blindtext + +% ====================================================================== + +% cf. https://ctan.org/pkg/acronym +% Usage: +% singular, within sentence = \ac{gui} +% singular, beginning of sentence = \Ac{gui} +% plural, within sentence = \acp{gui} +% plural, beginning of sentence = \Acp{gui} +\begin{acronym} + \acro{gui}[GUI]{Graphical User Interface} + \acro{ide}[IDE]{Integrated Development Environment} +\end{acronym} + +% https://www.silbentrennung24.de/ +% https://www.hyphenation24.com/ +\hyphenation{block-chain block-chains Ethe-re-um} + +\begin{document} +\selectlanguage{\cstechrepLang} + +\maketitle + +\begin{abstract} + \lipsum[1][3-10] + \{\,\faWarning{}The abstract does neither mention a teaching module nor a team/project, + it is a summary of the content of the technical report, thus, the objectives and architecture.\} +\end{abstract} + +% A list of IEEE Computer Society appoved keywords can be obtained at +% http://www.computer.org/mc/keywords/keywords.htm +\begin{IEEEkeywords} + template; lorem ipsum. +\end{IEEEkeywords} + +\section{Introduction and Objectives \textbar{} Functional Requirements \textbar{} Problem Statement} + +The cs-techrep formatting is adopted both from \textsmaller{IEEE} \cite{ieee2018formattingrules} and \textsmaller{IARIA} \cite{iaria2014formattingrules} styles. +The cs-techrep \LaTeX\ class is based on \textsmaller{IEEE}tran class \cite{ieee2015howto}. +In addition, be aware of the supplementary \textsmaller{IARIA} editorial rules \cite{iaria2009editorialrules} \faWarning{} that provide a beginner-friendly set of further advices. +It is recommended to use a grammar tool, e.\,g., the LanguageTool \cite{languagetool} browser plugin in combination with Overleaf \cite{overleaf}. + +The pipe symbol \textquote{\textbar{}} in the headings represents alternatives. Choose one and remove the others. The selectively provided quoted terms are special German alternatives. + +The problem statement needs to be written from perspective of a subject-matter expert (\textquote{Fachkonzept}). Like an elevator pitch / mission statement \faWarning{}. NOT from a technical perspective. + +\section{Optional: Related Work \textbar{} State of the Art \textbar{} Methods \textbar{} Data Acquisition} +\lipsum[2] + +\section{Architectural Goals} % \textbar{} \textquote{Architekturziele}} +Provides +(1) a visualization of the external systems and users with which the system interacts (\textquote{Kontextabgrenzung}), +(2) the most important technical and organizational preconditions (\textquote{Rahmenbedingungen}), +(3) quality/non-functional requirements (\textquote{Qualitätsziele}), and/or +(4) architectural style design decisions with formative patterns of the solution (\textquote{Architekturstil}) +as well as (5) the applied programming language. + +\section{Architecture of FancyName \textbar{} Results \textbar{} Structural Design \textbar{} \textquote{Bausteinsicht}} + +\subsection{Technology Stack \textbar{} Overall System} %\textbar{} \textquote{Gesamtsystem}} +Provides +(1) design decisions based on the previously defined requirements and +(2) a visualization of the functional structure at top level including relationships (\textquote{Grobe Zerlegung}), thus, gives an overview on modules, frameworks, and middleware. + +In discussions of multi-tier architecture, layer is often used interchangeably -- and mistakenly -- for tier. They aren't the same. A \textquote{layer} refers to a functional division of the software, but a \textquote{tier} refers to a functional division of the software that runs on infrastructure separate from the other divisions. The Contacts app on your phone, for example, is a three-layer application, but a single-tier application, because all three layers run on your phone. + +In discussions concerning multi-tier architecture, the term \textquote{layer} is frequently misused interchangeably with \textquote{tier}, despite their distinct meanings. A layer denotes a functional partition within the software, whereas a tier signifies a functional division that operates on separate infrastructure from other divisions/tiers. For instance, the Camera app or Settings app on your phone exemplifies a three-layer application but remains a single-tier application since all three layers run on your phone. + + +\subsection{Presentation Tier \textbar{} Frontend} +\lipsum[3] + +\subsection{Application Tier \textbar{} Backend \textbar{} \textquote{Anwendungskern}} +\lipsum[4] + +\subsection{Data Tier \textbar{} Persistence} +\lipsum[5] + +\subsection{Optional: Infrastructure and Deployment \textbar{} Distribution Perspective \textbar{} \textquote{Verteilungssicht}} +Provides (1) information about configuration, exact software versions, SBOM, DevOps, Cloud, AWS, and others. +Should add (2) security-related considerations or disclaimers. +Could include (3) a software bill of materials (SBOM), at least for the major libraries or frameworks. + + +\section{Discussion \textbar{} Evaluation \textbar{} \\ Lessons Learned \textbar{} Impediments} +\lipsum[6] + +\section{Conclusion and Future Work \textbar{} \\ \textquote{Fazit und Ausblick}} +\lipsum[7] + + +%%% Advisor +\nocite{StNe23foodfresh} + +%%% First-Author +\nocite{NeLe13adhocCoop} +\nocite{Neumann2012lni} +\nocite{NeLe12alphaFlow} +\nocite{NeHL12hydra} +\nocite{NeWL12offsync} +\nocite{NSWL11alphaadaptive} +\nocite{NeFL10oxdbs} +\nocite{NeLe10alphaUC} +\nocite{NeLe09alphaflow} +\nocite{NeLe09dmps} +\nocite{NHSL09oxdbs} % DE +\nocite{NeWL09xdsrig} % DE +\nocite{NRDL09deus} + +%%% Co-Authorship +\nocite{LeNe24vocattllm} +\nocite{PANP23seccloudfogai} +\nocite{WaNe12alphaoffsync} +\nocite{ToNe11alphaprops} +\nocite{FDI+10esmmog} +\nocite{JBN+10fcmdb} +\nocite{ILN+09semrttx} +\nocite{IND+09lzatav} % DE +\nocite{MeNe04testejb} + +%%% Monographic Work +\nocite{Neumann2013dissBook} +\nocite{Neumann2012dissPreprint} +\nocite{neumann2005da} +\nocite{neumann2004sa} + +%%% TechRep / Non-Peer-Reviewed + +\nocite{SaNe24othfb} + +\nocite{ModA-TR-2023SS-WAE-TeamWeiss-Neunerln} +\nocite{ModA-TR-2023SS-BDCC-TeamRot-CompVisPipeline} +\nocite{ModA-TR-2023SS-BDCC-TeamBlau-NauticalNonsense} +\nocite{ModA-TR-2023SS-BCN-TeamGruen-TorpedoTactics} +\nocite{ModA-TR-2023SS-BCN-TeamCyan-Stockbird} +\nocite{ModA-TR-2023SS-BCN-TeamBlau-FancyChess} +\nocite{ModA-TR-2023WS-SWT-TeamRot-SGDb} +\nocite{ModA-TR-2023WS-SWT-TeamGruen-OPCUANetzwerk} +\nocite{ModA-TR-2022SS-WAE-TeamWeiss-WoIstMeinGeld} +\nocite{ModA-TR-2022SS-BDCC-TeamWeiss-TwitterDash} +\nocite{ModA-TR-2022SS-BDCC-TeamRot-Reddiment} +\nocite{ModA-TR-2022SS-BDCC-TeamGruen-ExplosionGuy} +\nocite{ModA-TR-2022SS-BDCC-TeamCyan-OTHWiki} +\nocite{ModA-TR-2022WS-SWT-TeamGruen-Graphvio} +\nocite{ModA-TR-2021SS-WAE-TeamWeiss-CovidDashboard} +\nocite{ModA-TR-2021SS-WAE-TeamRot-FireForceDefense} +\nocite{ModA-TR-2021SS-WAE-TeamGruen-MedPlanner} + +\nocite{NeRL12deus} +\nocite{LNR+11egr} + +% ======== References ========= +%\vfill % To end last page and thus get bibliography "behind" subfigure example, only this allows pbalance to level columns at the last page correctly (but no other balance-package can handle this situation better than pbalance, either). % However, pbalance ist not compatible with arxiv. +\begingroup +\sloppy +\printbibliography[notcategory=selfref] +\endgroup + +\end{document} diff --git a/macros/latex/contrib/cs-techrep/template/selfref.bib b/macros/latex/contrib/cs-techrep/template/selfref.bib new file mode 100644 index 0000000000..ecd901e557 --- /dev/null +++ b/macros/latex/contrib/cs-techrep/template/selfref.bib @@ -0,0 +1,10 @@ + @TECHREPORT{selfref, + author = {Christoph P. Neumann}, + title = {\cstechrepTitleBib}, + institution = {\cstechrepInstitution, \cstechrepDepartment}, + series = {\cstechrepSeries}, + number = {\cstechrepNumber}, + year = {2024}, + month = {3}, + langid = {english}, + } diff --git a/macros/latex/contrib/cs-techrep/template/webdev_commons.bib b/macros/latex/contrib/cs-techrep/template/webdev_commons.bib new file mode 100644 index 0000000000..159bef9d0e --- /dev/null +++ b/macros/latex/contrib/cs-techrep/template/webdev_commons.bib @@ -0,0 +1,572 @@ + +@Online{sqlite, + author = {Richard Hipp}, + note = {[Online]}, + title = {{SQLite}: {F}eatures}, + url = {https://sqlite.org/features.html} +} + +@Online{django, + author = {Adrian Holovaty and Simon Willison}, + note = {[Online]}, + title = {Django}, + url = {https://www.djangoproject.com/}, +} + +@Online{fastapi, + author = {Sebastián Ramírez}, + note = {[Online]}, + title = {FastAPI}, + url = {https://fastapi.tiangolo.com/}, +} + +@Online{docker, + author = {Docker}, + note = {[Online]}, + title = {Docker: Accelerated Container Application Development}, + url = {https://www.docker.com/}, +} + +@Online{elasticsearch, + author = {Elastic}, + note = {[Online]}, + title = {Elasticsearch Platform}, + url = {https://www.elastic.co/de/elasticsearch/}, +} + +@Online{react, + author = {Facebook}, + note = {[Online]}, + title = {React}, + url = {https://react.dev/}, +} + +@Online{angular, + author = {Google}, + note = {[Online]}, + title = {Angular}, + url = {https://angular.io/}, +} + +@Online{vue, + author = {Evan You}, + note = {[Online]}, + title = {Vue.js}, + url = {https://vuejs.org/}, +} + +@Online{eslint, + author = {Nicholas Zakas}, + note = {[Online]}, + title = {ESLint: {P}luggable {J}avaScript linter}, + url = {https://eslint.org/}, +} + +@Online{express, + author = {Douglas Christopher Wilson}, + note = {[Online]}, + title = {Express}, + url = {https://expressjs.com/}, +} + +@Online{graphql, + author = {Facebook}, + note = {[Online]}, + title = {GraphQL: {A} query language for your {API}}, + url = {https://graphql.org/}, +} + +@Online{istanbuljs, + author = {Istanbul}, + note = {[Online]}, + title = {Istanbul: {J}avaScript test coverage made simple}, + url = {https://istanbul.js.org/}, +} + +@Online{node, + author = {Ryan Dahl}, + note = {[Online]}, + title = {Node.js}, + url = {https://www.nodejs.org/}, +} + +@Online{npm, + author = {Isaac Schlueter}, + note = {[Online]}, + title = {npm}, + url = {https://www.npmjs.com/}, +} + +@Online{prettier, + author = {Prettier}, + note = {[Online]}, + title = {Prettier: {O}pinionated {C}ode {F}ormatter}, + url = {https://prettier.io/}, +} + +@Online{svelte, + author = {Rich Harris}, + note = {[Online]}, + title = {Svelte: Cybernetically enhanced web apps}, + url = {https://www.svelte.dev/}, +} + +@Online{sveltekit, + author = {Rich Harris}, + note = {[Online]}, + title = {Svelte Kit: {T}he fastest way to build {S}velte Apps}, + url = {https://kit.svelte.dev/}, +} + +@Online{typescript, + author = {Microsoft}, + note = {[Online]}, + title = {TypeScript: {J}avaScript {W}ith {S}yntax {F}or {T}ypes}, + url = {https://www.typescriptlang.org/}, +} + +@Online{jest, + author = {Facebook}, + note = {[Online]}, + title = {Jest is a delightful JavaScript Testing Framework with a focus on simplicity}, + url = {https://jestjs.io/}, + +} + +@Online{vite, + author = {Evan You}, + note = {[Online]}, + title = {Vite: {N}ext {G}eneration {F}rontend {T}ooling}, + url = {https://github.com/vitejs/vite}, +} + +@Online{vitest, + author = {Anthony Fu and Matías Capeletto}, + note = {[Online]}, + title = {Vitest: {A} {V}ite-native unit test framework}, + url = {https://vitest.dev/}, +} + +@Online{pinia, + author = {Eduardo San Martin Morote}, + note = {[Online]}, + title = {Pinia}, + url = {https://pinia.vuejs.org/}, +} + +@Online{virtuoso, + author = {OpenLink}, + note = {[Online]}, + title = {Virtuoso Universal Server}, + url = {https://virtuoso.openlinksw.com/}, +} + +@Online{ontotext, + author = {Ontotext}, + note = {[Online]}, + title = {GraphDB}, + url = {https://www.ontotext.com/products/graphdb/}, +} + +@Online{mongodb, + author = {Dwight Merriman and Eliot Horowitz and Kevin Ryan}, + note = {[Online]}, + title = {MongoDB}, + url = {https://www.mongodb.com/}, +} + +@Online{dotnet, + author = {Microsoft}, + note = {[Online]}, + title = {{.NET}: free, open-source, cross-platform framework}, + url = {https://dotnet.microsoft.com/}, +} + +@Online{phaser, + author = {{Photon Storm}}, + note = {[Online]}, + title = {Phaser Game Framework}, + url = {https://phaser.io/}, +} + +@Online{kubernetes, + author = {{CNCF}}, + note = {[Online]}, + title = {Kubernetes/K8s: open-source system for automating deployment, scaling, and management of containerized applications}, + url = {https://kubernetes.io/}, +} + +@Online{bootstrap, + author = {Mark Otto und Jacob Thornton}, + note = {[Online]}, + title = {Bootstrap: Build fast, responsive sites}, + url = {https://getbootstrap.com/}, +} + +@Online{docker-compose, + author = {Docker}, + note = {[Online]}, + title = {Compose: Defining and Running Multi-Container Docker Applications}, + url = {https://docs.docker.com/compose/}, +} + +@book{restful, + title={Architectural styles and the design of network-based software architectures}, + author={Fielding, Roy Thomas}, + year={2000}, + publisher={University of California, Irvine} +} + +@Online{grpc, + author = {{CNCF}}, + note = {[Online]}, + title = {gRPC: A high performance, open source universal RPC framework}, + url = {https://grpc.io/}, +} + +@Online{mysql, + author = {Michael Widenius und David Axmark}, + note = {[Online]}, + title = {MySQL: high-performance and scalable Online Transaction Processing}, + url = {https://www.mysql.com/}, +} + +@Online{mariadb, + author = {Michael Widenius}, + note = {[Online]}, + title = {MariaDB Community Server}, + url = {https://mariadb.com/}, +} + +@Online{postgresql, + author = {Andrew Yu and Jolly Chen}, + note = {[Online]}, + title = {PostgreSQL: Open Source Relational Database}, + url = {https://www.postgresql.org/}, +} + +@Online{opcua, + author = {{OPC}}, + note = {[Online]}, + title = {OPC Unified Architecture: a platform independent service-oriented architecture that integrates all the functionality of the individual OPC Classic specifications into one extensible framework}, + url = {https://opcfoundation.org/about/opc-technologies/opc-ua/}, +} + +@Online{aws, + author = {Amazon}, + note = {[Online]}, + title = {Amazon Web Services}, + url = {https://aws.amazon.com/} +} + +@Online{aws-cognito, + author = {Amazon}, + note = {[Online]}, + title = {{AWS Cognito}: Identity Platform}, + url = {https://aws.amazon.com/cognito/} +} + +@Online{aws-apigateway, + author = {Amazon}, + note = {[Online]}, + title = {{AWS API Gateway}}, + url = {https://aws.amazon.com/api-gateway/} +} + +@Online{mongodb-atlas, + author = {{MongoDB, Inc.}}, + note = {[Online]}, + title = {{MongoDB Atlas}}, + url = {https://www.mongodb.com/atlas}, +} + +@Online{mongodb-atlas-serverless, + author = {Amazon}, + note = {[Online]}, + title = {{AWS} Prescriptive Guidance: {MongoDB Atlas} on {AWS} -- Migrating from a self-managed environment to the {AWS} Cloud}, + url = {https://docs.aws.amazon.com/prescriptive-guidance/latest/migration-mongodb-atlas/serverless.html} +} + +@Online{aws-lambda, + author = {Amazon}, + note = {[Online]}, + title = {{AWS Lambda}}, + url = {https://aws.amazon.com/lambda/} +} + +@Online{aws-ec2, + author = {Amazon}, + note = {[Online]}, + title = {{AWS EC2}}, + url = {https://aws.amazon.com/ec2/} +} + +@Online{nextjs, + author = {Vercel}, + note = {[Online]}, + title = {Next.js}, + url = {https://nextjs.org/} +} + +@Online{aws-lambda-runtime, + author = {Amazon}, + note = {[Online]}, + title = {{AWS Lambda}: Run-Time Environment}, + url = {https://docs.aws.amazon.com/de_de/lambda/latest/dg/lambda-runtime-environment.html} +} + +@Online{authjs, + author = {Balázs Orbán}, + note = {[Online]}, + title = {Auth.js}, + url = {https://authjs.dev/} +} + +@Online{mongodb-via-aws, + author = {{MongoDB, Inc.}}, + note = {[Online]}, + title = {{MongoDB Atlas} via {AWS}}, + url = {https://www.mongodb.com/docs/atlas/reference/amazon-aws/} +} + +@Online{mongodb-replication, + author = {{MongoDB, Inc.}}, + note = {[Online]}, + title = {{MongoDB} Replication}, + url = {https://www.mongodb.com/docs/manual/replication/} +} + +@Online{prisma, + author = {{Prisma Data, Inc.}}, + note = {[Online]}, + title = {Prisma}, + url = {https://www.prisma.io/} +} + +@Online{prisma-schema, + author = {{Prisma Data, Inc.}}, + note = {[Online]}, + title = {Prisma Schema}, + url = {https://www.prisma.io/docs/concepts/components/prisma-schema} +} + +@Online{aws-s3, + author = {Amazon}, + note = {[Online]}, + title = {{Amazon S3}}, + url = {https://aws.amazon.com/s3/}, +} +@Online{aws-sam, + author = {Amazon}, + note = {[Online]}, + title = {{AWS SAM}}, + url = {https://aws.amazon.com/serverless/sam/}, +} + +@Online{aws-cli, + author = {Amazon}, + note = {[Online]}, + title = {{AWS CLI}}, + url = {https://aws.amazon.com/cli/}, +} + +@Online{aws-iam, + author = {Amazon}, + note = {[Online]}, + title = {{AWS IAM}}, + url = {https://aws.amazon.com/iam/}, +} + +@Online{aws-toolkit-intelij, + author = {Amazon}, + note = {[Online]}, + title = {{AWS Toolkit} for {IntelliJ IDEA}}, + url = {https://aws.amazon.com/intellij/}, +} + +@Online{kaggle-elonmusktweets, + author = {Google}, + note = {[Online]}, + title = {Kaggle Datasets: Elon Musk Tweets}, + url = {https://www.kaggle.com/datasets/gpreda/elon-musk-tweets}, +} + +@Online{yfinance, + author = {Yahoo}, + note = {[Online]}, + title = {Yahoo Finance}, + url = {https://finance.yahoo.com}, +} + +@Online{d3js, + author = {Observable}, + note = {[Online]}, + title = {D3.js}, + url = {https://d3js.org}, +} + +@Online{mui, + author = {{Material UI SAS}}, + note = {[Online]}, + title = {{MUI}: The React component library you always wanted}, + url = {https://mui.com}, +} + + +@Online{pytest, + author = {Holger Krekel and {pytest Entwicklungteam}}, + note = {[Online]}, + title = {Pytest}, + url = {https://pytest.org/} +} + +@Online{starlette, + author = {Sebastián Ramírez}, + note = {[Online]}, + title = {Starlette}, + url = {https://www.starlette.io/}, +} + +@Online{pydantic, + author = {Sebastián Ramírez}, + note = {[Online]}, + title = {Pydantic Documentation}, + url = {https://docs.pydantic.dev/}, +} + +@Online{uvicorn, + author = {Sebastián Ramírez}, + note = {[Online]}, + title = {Uvicorn}, + url = {https://www.uvicorn.org/} +} + +@Online{terraform, + author = {{HashiCorp}}, + note = {[Online]}, + title = {Terraform}, + url = {https://www.terraform.io/} +} + +@Online{cypress, + author = {Brian Mann}, + note = {[Online]}, + title = {Cypress}, + url = {https://www.cypress.io/} +} + +@Online{pymongo, + author = {{MongoDB, Inc.}}, + note = {[Online]}, + title = {PyMongo}, + url = {https://pypi.org/project/pymongo/} +} + +@Online{websocket-whatwg, + author = {Ian Hickson and Michael Carter}, + note = {[Online]}, + title = {Origin of {WebSocket} ({IRC} logs: freenode / \#whatwg / 20080618)}, + url = {https://krijnhoetmer.nl/irc-logs/whatwg/20080618#l-1145}, +} + +@TechReport{rfc6455, + type ={{RFC}}, + number = 6455, + doi = {10.17487/RFC6455}, + url = {https://www.rfc-editor.org/info/rfc6455}, + author = {Alexey Melnikov and Ian Fette}, + title = {{The WebSocket Protocol}}, + year = 2011, + month = dec, + issn = {2070-1721}, +} + +@Online{socketio, + author = {Guillermo Rauch}, + note = {[Online]}, + title = {{Socket.IO}}, + url = {https://socket.io/}, +} + +@Online{catapi, + author = {Aden Forshaw}, + note = {[Online]}, + title = {The Cat {API}}, + url = {https://thecatapi.com/}, +} + +@Online{boto3, + author = {Amazon}, + note = {[Online]}, + title = {{Boto3}: {AWS SDK} for Python}, + url = {https://boto3.amazonaws.com/v1/documentation/api/latest/index.html}, +} + +@Online{aws-sdk-js, + author = {Amazon}, + note = {[Online]}, + title = {{AWS SDK} for {JavaScript}}, + url = {https://www.npmjs.com/package/aws-sdk}, +} + +@Online{pytest-cov, + author = {Holger Krekel and {pytest Entwicklungteam}}, + note = {[Online]}, + title = {pytest Coverage Reports}, + url = {https://pypi.org/project/pytest-cov/}, +} + +@Online{scratch, + author = {{MIT Media Lab}}, + note = {[Online]}, + title = {Scratch}, + url = {https://scratch.mit.edu/projects/editor/}, +} + +@Online{python, + author = {Guido van Rossum}, + note = {[Online]}, + title = {Python}, + url = {https://www.python.org}, +} + +@Online{opencv, + author = {Gray Bradsky}, + note = {[Online]}, + title = {{OpenCV}: Open Source Computer Vision Library}, + url = {https://opencv.org}, +} + +@article{scikit-image, + title = {scikit-image: image processing in {P}ython}, + author = {van der Walt, {S}t\'efan and {S}ch\"onberger, {J}ohannes {L}. and + {Nunez-Iglesias}, {J}uan and {B}oulogne, {F}ran\c{c}ois and {W}arner, + {J}oshua {D}. and {Y}ager, {N}eil and {G}ouillart, {E}mmanuelle and + {Y}u, {T}ony and the scikit-image contributors}, + year = {2014}, + month = {6}, + keywords = {Image processing, Reproducible research, Education, + Visualization, Open source, Python, Scientific programming}, + volume = {2}, + pages = {e453}, + journal = {PeerJ}, + issn = {2167-8359}, + url = {https://doi.org/10.7717/peerj.453}, + doi = {10.7717/peerj.453} +} + + +@Online{flask, + author = {Pallets}, + note = {[Online]}, + title = {Flask User's Guide}, + url = {https://flask.palletsprojects.com/}, +} + + +@Online{bibtemplate, + author = {}, + note = {[Online]}, + title = {}, + url = {}, +}
\ No newline at end of file diff --git a/macros/latex/contrib/ffcode/README.md b/macros/latex/contrib/ffcode/README.md index 36252a3dfa..5301bd65df 100644 --- a/macros/latex/contrib/ffcode/README.md +++ b/macros/latex/contrib/ffcode/README.md @@ -1,13 +1,17 @@ +# Fixed-Font LaTeX Primitive: `\ff` and `\begin{ffcode}` + [![make](https://github.com/yegor256/ffcode/actions/workflows/l3build.yml/badge.svg)](https://github.com/yegor256/ffcode/actions/workflows/l3build.yml) [![CTAN](https://img.shields.io/ctan/v/ffcode)](https://ctan.org/pkg/ffcode) [![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/yegor256/ffcode/blob/master/LICENSE.txt) This LaTeX package helps you write source code in your academic papers -and make sure it looks neat. The package uses [`listings`](https://ctan.org/pkg/listings) +and make sure it looks neat. The package uses +[`listings`](https://ctan.org/pkg/listings) and [`tcolorbox`](https://ctan.org/pkg/tcolorbox) packages. -First, [install it](https://en.wikibooks.org/wiki/LaTeX/Installing_Extra_Packages) -from [CTAN](https://ctan.org/pkg/ffcode) +First, +[install it](https://en.wikibooks.org/wiki/LaTeX/Installing_Extra_Packages) +from [CTAN](https://ctan.org/pkg/ffcode) and then use in the preamble: ```tex @@ -23,7 +27,9 @@ void r() { \end{document} ``` -Otherwise, you can download [`ffcode.sty`](https://yegor256.github.io/ffcode/ffcode.sty) and add to your project. +Otherwise, you can download +[`ffcode.sty`](https://yegor256.github.io/ffcode/ffcode.sty) and +add to your project. If you want to contribute yourself, make a fork, then create a branch, then run `l3build ctan` in the root directory. diff --git a/macros/latex/contrib/ffcode/ffcode.dtx b/macros/latex/contrib/ffcode/ffcode.dtx index 52f2241dc0..6580579335 100644 --- a/macros/latex/contrib/ffcode/ffcode.dtx +++ b/macros/latex/contrib/ffcode/ffcode.dtx @@ -50,7 +50,7 @@ %<package>\NeedsTeXFormat{LaTeX2e} %<package>\ProvidesPackage{ffcode} %<*package> -[2024-02-04 0.9.2 Fixed Font Code] +[2024-03-23 0.9.3 Fixed Font Code] %</package> %<*driver> \documentclass{ltxdoc} @@ -267,6 +267,7 @@ \fi \ifdefined\ff@nobars\else \lstset{frame=leftline,framerule=.05em,rulecolor={\color{gray}}} + \fi \ifdefined\ff@nocn\else \lstset{firstnumber=last} \fi diff --git a/macros/latex/contrib/ffcode/ffcode.pdf b/macros/latex/contrib/ffcode/ffcode.pdf Binary files differindex c39bfa4ffe..5a7007dad0 100644 --- a/macros/latex/contrib/ffcode/ffcode.pdf +++ b/macros/latex/contrib/ffcode/ffcode.pdf diff --git a/macros/latex/contrib/fontscale/fontscale-manual.pdf b/macros/latex/contrib/fontscale/fontscale-manual.pdf Binary files differindex 778dfdcccc..99984191ff 100644 --- a/macros/latex/contrib/fontscale/fontscale-manual.pdf +++ b/macros/latex/contrib/fontscale/fontscale-manual.pdf diff --git a/macros/latex/contrib/fontscale/fontscale-manual.tex b/macros/latex/contrib/fontscale/fontscale-manual.tex index 3a24f6bca5..26833d220e 100644 --- a/macros/latex/contrib/fontscale/fontscale-manual.tex +++ b/macros/latex/contrib/fontscale/fontscale-manual.tex @@ -13,7 +13,7 @@ A user interface for setting document font sizes Oliver Beery -Version 1.0.1\quad{}8~March 2024 +Version 1.0.2\quad{}22 March 2024 \section{Introduction} @@ -46,7 +46,7 @@ Version 1.0.1\quad{}8~March 2024 \subsection{Loading the package} \label{subsec:loading} -This package requires the 10~October 2023 \pkg{l3kernel} update. +This package requires the 10 October 2023 \pkg{l3kernel} update. Since this update is fairly recent, you may need to ensure that your \LaTeX{} installation is up\-/to\-/date before using this package. This package lets the user set arbitrary font sizes. diff --git a/macros/latex/contrib/fontscale/fontscale.sty b/macros/latex/contrib/fontscale/fontscale.sty index c4ad86c21d..ba1ba40b87 100644 --- a/macros/latex/contrib/fontscale/fontscale.sty +++ b/macros/latex/contrib/fontscale/fontscale.sty @@ -8,20 +8,22 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {fontscale} - {2024-03-08} - {1.0.1} + {2024-03-22} + {1.0.2} {A user interface for setting document font sizes} % The 2023-10-10 l3kernel update added many 'e'-variants. -\msg_new:nnn { fontscale } { expl3-out-of-date } - { - The~ package~ could~ not~ load.~ - The~ fontscale~ package~ requires~ - L3~ programming~ layer~ version~ 2023-10-10~ or~ later. - } \IfExplAtLeastTF { 2023-10-10 } { } - { \msg_critical:nn { fontscale } { expl3-out-of-date } } + { + \msg_new:nnn { fontscale } { expl3-out-of-date } + { + The~ package~ could~ not~ load.~ + The~ fontscale~ package~ requires~ + L3~ programming~ layer~ version~ 2023-10-10~ or~ later. + } + \msg_critical:nn { fontscale } { expl3-out-of-date } + } % SOME VARIABLES @@ -204,10 +206,10 @@ % Sets a dimen or skip variable, supplying a default unit of pt. \cs_new_protected:Npn \__fontscale_dim_set_with_default_unit:Nn #1#2 - { \@defaultunits \dim_set:Nn #1 { #2 pt } \@nnil } + { \@defaultunits #1 = \dimexpr #2 pt \relax \relax \@nnil } \cs_generate_variant:Nn \__fontscale_dim_set_with_default_unit:Nn { c } \cs_new_protected:Npn \__fontscale_skip_set_with_default_unit:Nn #1#2 - { \@defaultunits \skip_set:Nn #1 { #2 pt } \@nnil } + { \@defaultunits #1 = \glueexpr #2 pt \relax \@nnil } \cs_generate_variant:Nn \__fontscale_skip_set_with_default_unit:Nn { c } % MESSAGES @@ -295,12 +297,14 @@ , modular / ratio .fp_set:N = \l__fontscale_modular_ratio_fp , modular / ratio .value_required:n = true + } +\keys_define:nn { fontscale / musical } + { + ratio .fp_set:N = \l__fontscale_musical_ratio_fp + , ratio .value_required:n = true - , musical / ratio .fp_set:N = \l__fontscale_musical_ratio_fp - , musical / ratio .value_required:n = true - - , musical / notes .int_set:N = \l__fontscale_musical_notes_int - , musical / notes .value_required:n = true + , notes .int_set:N = \l__fontscale_musical_notes_int + , notes .value_required:n = true } \keys_define:nn { fontscale / tiny } { @@ -508,79 +512,80 @@ { \tl_set:Ne \l__fontscale_keys_precompile_preamble_tl { - \bool_set:Nn \exp_not:N \l__fontscale_ignore_order_bool - { \exp_not:V \l__fontscale_ignore_order_bool } + \bool_if:NTF \l__fontscale_ignore_order_bool + { \bool_set_true:N } { \bool_set_false:N } + \l__fontscale_ignore_order_bool \fp_set:Nn \exp_not:N \l__fontscale_baselineskip_size_ratio_fp - { \exp_not:V \l__fontscale_baselineskip_size_ratio_fp } + { \l__fontscale_baselineskip_size_ratio_fp } \str_set:Nn \exp_not:N \l__fontscale_typographic_scale_str { \l__fontscale_typographic_scale_str } \fp_set:Nn \exp_not:N \l__fontscale_modular_ratio_fp - { \exp_not:V \l__fontscale_modular_ratio_fp } + { \l__fontscale_modular_ratio_fp } \fp_set:Nn \exp_not:N \l__fontscale_musical_ratio_fp - { \exp_not:V \l__fontscale_musical_ratio_fp } + { \l__fontscale_musical_ratio_fp } \int_set:Nn \l__fontscale_musical_notes_int { \int_use:N \l__fontscale_musical_notes_int } \tl_set:Nn \exp_not:N \l__fontscale_tiny_scale_tl - { \exp_not:V \l__fontscale_tiny_scale_tl } + { \exp_not:o \l__fontscale_tiny_scale_tl } \tl_set:Nn \exp_not:N \l__fontscale_scriptsize_scale_tl - { \exp_not:V \l__fontscale_scriptsize_scale_tl } + { \exp_not:o \l__fontscale_scriptsize_scale_tl } \tl_set:Nn \exp_not:N \l__fontscale_footnotesize_scale_tl - { \exp_not:V \l__fontscale_footnotesize_scale_tl } + { \exp_not:o \l__fontscale_footnotesize_scale_tl } \tl_set:Nn \exp_not:N \l__fontscale_small_scale_tl - { \exp_not:V \l__fontscale_small_scale_tl } + { \exp_not:o \l__fontscale_small_scale_tl } \tl_set:Nn \exp_not:N \l__fontscale_large_scale_tl - { \exp_not:V \l__fontscale_large_scale_tl } + { \exp_not:o \l__fontscale_large_scale_tl } \tl_set:Nn \exp_not:N \l__fontscale_Large_scale_tl - { \exp_not:V \l__fontscale_Large_scale_tl } + { \exp_not:o \l__fontscale_Large_scale_tl } \tl_set:Nn \exp_not:N \l__fontscale_LARGE_scale_tl - { \exp_not:V \l__fontscale_LARGE_scale_tl } + { \exp_not:o \l__fontscale_LARGE_scale_tl } \tl_set:Nn \exp_not:N \l__fontscale_huge_scale_tl - { \exp_not:V \l__fontscale_huge_scale_tl } + { \exp_not:o \l__fontscale_huge_scale_tl } \tl_set:Nn \exp_not:N \l__fontscale_Huge_scale_tl - { \exp_not:V \l__fontscale_Huge_scale_tl } + { \exp_not:o \l__fontscale_Huge_scale_tl } \tl_set:Nn \exp_not:N \l__fontscale_tiny_size_tl - { \exp_not:V \l__fontscale_tiny_size_tl } + { \exp_not:o \l__fontscale_tiny_size_tl } \tl_set:Nn \exp_not:N \l__fontscale_scriptsize_size_tl - { \exp_not:V \l__fontscale_scriptsize_size_tl } + { \exp_not:o \l__fontscale_scriptsize_size_tl } \tl_set:Nn \exp_not:N \l__fontscale_footnotesize_size_tl - { \exp_not:V \l__fontscale_footnotesize_size_tl } + { \exp_not:o \l__fontscale_footnotesize_size_tl } \tl_set:Nn \exp_not:N \l__fontscale_small_size_tl - { \exp_not:V \l__fontscale_small_size_tl } + { \exp_not:o \l__fontscale_small_size_tl } \tl_set:Nn \exp_not:N \l__fontscale_normalsize_size_tl - { \exp_not:V \l__fontscale_normalsize_size_tl } + { \exp_not:o \l__fontscale_normalsize_size_tl } \tl_set:Nn \exp_not:N \l__fontscale_large_size_tl - { \exp_not:V \l__fontscale_large_size_tl } + { \exp_not:o \l__fontscale_large_size_tl } \tl_set:Nn \exp_not:N \l__fontscale_Large_size_tl - { \exp_not:V \l__fontscale_Large_size_tl } + { \exp_not:o \l__fontscale_Large_size_tl } \tl_set:Nn \exp_not:N \l__fontscale_LARGE_size_tl - { \exp_not:V \l__fontscale_LARGE_size_tl } + { \exp_not:o \l__fontscale_LARGE_size_tl } \tl_set:Nn \exp_not:N \l__fontscale_huge_size_tl - { \exp_not:V \l__fontscale_huge_size_tl } + { \exp_not:o \l__fontscale_huge_size_tl } \tl_set:Nn \exp_not:N \l__fontscale_Huge_size_tl - { \exp_not:V \l__fontscale_Huge_size_tl } + { \exp_not:o \l__fontscale_Huge_size_tl } \tl_set:Nn \exp_not:N \l__fontscale_tiny_baselineskip_tl - { \exp_not:V \l__fontscale_tiny_baselineskip_tl } + { \exp_not:o \l__fontscale_tiny_baselineskip_tl } \tl_set:Nn \exp_not:N \l__fontscale_scriptsize_baselineskip_tl - { \exp_not:V \l__fontscale_scriptsize_baselineskip_tl } + { \exp_not:o \l__fontscale_scriptsize_baselineskip_tl } \tl_set:Nn \exp_not:N \l__fontscale_footnotesize_baselineskip_tl - { \exp_not:V \l__fontscale_footnotesize_baselineskip_tl } + { \exp_not:o \l__fontscale_footnotesize_baselineskip_tl } \tl_set:Nn \exp_not:N \l__fontscale_small_baselineskip_tl - { \exp_not:V \l__fontscale_small_baselineskip_tl } + { \exp_not:o \l__fontscale_small_baselineskip_tl } \tl_set:Nn \exp_not:N \l__fontscale_normalsize_baselineskip_tl - { \exp_not:V \l__fontscale_normalsize_baselineskip_tl } + { \exp_not:o \l__fontscale_normalsize_baselineskip_tl } \tl_set:Nn \exp_not:N \l__fontscale_large_baselineskip_tl - { \exp_not:V \l__fontscale_large_baselineskip_tl } + { \exp_not:o \l__fontscale_large_baselineskip_tl } \tl_set:Nn \exp_not:N \l__fontscale_Large_baselineskip_tl - { \exp_not:V \l__fontscale_Large_baselineskip_tl } + { \exp_not:o \l__fontscale_Large_baselineskip_tl } \tl_set:Nn \exp_not:N \l__fontscale_LARGE_baselineskip_tl - { \exp_not:V \l__fontscale_LARGE_baselineskip_tl } + { \exp_not:o \l__fontscale_LARGE_baselineskip_tl } \tl_set:Nn \exp_not:N \l__fontscale_huge_baselineskip_tl - { \exp_not:V \l__fontscale_huge_baselineskip_tl } + { \exp_not:o \l__fontscale_huge_baselineskip_tl } \tl_set:Nn \exp_not:N \l__fontscale_Huge_baselineskip_tl - { \exp_not:V \l__fontscale_Huge_baselineskip_tl } + { \exp_not:o \l__fontscale_Huge_baselineskip_tl } } } @@ -647,7 +652,7 @@ % Sets the size, scale, and baselineskip of the other font size commands and % stores them in property lists. Issues a warning if the user sets both the % scale and size keys for the same font size command. -\cs_new_protected:Npn \__fontscale_keys_process_classic_xpt:n #1 +\cs_new_protected:Npn \__fontscale_keys_process_other_classic_xpt:n #1 { \dim_set:cn { l_fontscale_#1_size_dim } { @@ -665,7 +670,7 @@ } } } -\cs_new_protected:Npn \__fontscale_keys_process_classic_xipt:n #1 +\cs_new_protected:Npn \__fontscale_keys_process_other_classic_xipt:n #1 { \dim_set:cn { l_fontscale_#1_size_dim } { @@ -683,7 +688,7 @@ } } } -\cs_new_protected:Npn \__fontscale_keys_process_classic_xiipt:n #1 +\cs_new_protected:Npn \__fontscale_keys_process_other_classic_xiipt:n #1 { \dim_set:cn { l_fontscale_#1_size_dim } { @@ -701,7 +706,7 @@ } } } -\cs_new_protected:Npn \__fontscale_keys_process_modular:n #1 +\cs_new_protected:Npn \__fontscale_keys_process_other_modular:n #1 { \dim_set:cn { l_fontscale_#1_size_dim } { @@ -712,7 +717,7 @@ } } } -\cs_new_protected:Npn \__fontscale_keys_process_musical:n #1 +\cs_new_protected:Npn \__fontscale_keys_process_other_musical:n #1 { \dim_set:cn { l_fontscale_#1_size_dim } { @@ -726,15 +731,15 @@ } \cs_new_protected:Npn \__fontscale_keys_process_other: { - \cs_set_eq:Nc \__fontscale_keys_process_typographic_scale:n + \cs_set_eq:Nc \__fontscale_keys_process_other_typographic_scale:n { \str_case:on \l__fontscale_typographic_scale_str { - { classic-10pt } { __fontscale_keys_process_classic_xpt:n } - { classic-11pt } { __fontscale_keys_process_classic_xipt:n } - { classic-12pt } { __fontscale_keys_process_classic_xiipt:n } - { modular } { __fontscale_keys_process_modular:n } - { musical } { __fontscale_keys_process_musical:n } + { classic-10pt } { __fontscale_keys_process_other_classic_xpt:n } + { classic-11pt } { __fontscale_keys_process_other_classic_xipt:n } + { classic-12pt } { __fontscale_keys_process_other_classic_xiipt:n } + { modular } { __fontscale_keys_process_other_modular:n } + { musical } { __fontscale_keys_process_other_musical:n } } } \seq_map_inline:Nn \c__fontscale_names_other_seq @@ -762,7 +767,8 @@ } \prg_break: } - \prg_break:n { \__fontscale_keys_process_typographic_scale:n {##1} } + \prg_break:n + { \__fontscale_keys_process_other_typographic_scale:n {##1} } \prg_break_point: \fp_set:cn { l_fontscale_##1_scale_fp } { @@ -839,15 +845,13 @@ \DeclareDocumentCommand \tiny { } { \__fontscale_tiny: } \cs_new_protected:Npn \__fontscale_tiny: { - \@setfontsize \tiny - { \dim_use:N \l_fontscale_tiny_size_dim } + \@setfontsize \tiny { \dim_use:N \l_fontscale_tiny_size_dim } \l_fontscale_tiny_baselineskip_skip } \DeclareDocumentCommand \scriptsize { } { \__fontscale_scriptsize: } \cs_new_protected:Npn \__fontscale_scriptsize: { - \@setfontsize \scriptsize - { \dim_use:N \l_fontscale_scriptsize_size_dim } + \@setfontsize \scriptsize { \dim_use:N \l_fontscale_scriptsize_size_dim } \l_fontscale_scriptsize_baselineskip_skip } \DeclareDocumentCommand \footnotesize { } { \__fontscale_footnotesize: } @@ -860,50 +864,43 @@ \DeclareDocumentCommand \small { } { \__fontscale_small: } \cs_new_protected:Npn \__fontscale_small: { - \@setfontsize \small - { \dim_use:N \l_fontscale_small_size_dim } + \@setfontsize \small { \dim_use:N \l_fontscale_small_size_dim } \l_fontscale_small_baselineskip_skip } \DeclareDocumentCommand \normalsize { } { \__fontscale_normalsize: } \cs_new_protected:Npn \__fontscale_normalsize: { - \@setfontsize \normalsize - { \dim_use:N \l_fontscale_normalsize_size_dim } + \@setfontsize \normalsize { \dim_use:N \l_fontscale_normalsize_size_dim } \l_fontscale_normalsize_baselineskip_skip } \DeclareDocumentCommand \large { } { \__fontscale_large: } \cs_new_protected:Npn \__fontscale_large: { - \@setfontsize \large - { \dim_use:N \l_fontscale_large_size_dim } + \@setfontsize \large { \dim_use:N \l_fontscale_large_size_dim } \l_fontscale_large_baselineskip_skip } \DeclareDocumentCommand \Large { } { \__fontscale_Large: } \cs_new_protected:Npn \__fontscale_Large: { - \@setfontsize \Large - { \dim_use:N \l_fontscale_Large_size_dim } + \@setfontsize \Large { \dim_use:N \l_fontscale_Large_size_dim } \l_fontscale_Large_baselineskip_skip } \DeclareDocumentCommand \LARGE { } { \__fontscale_LARGE: } \cs_new_protected:Npn \__fontscale_LARGE: { - \@setfontsize \LARGE - { \dim_use:N \l_fontscale_LARGE_size_dim } + \@setfontsize \LARGE { \dim_use:N \l_fontscale_LARGE_size_dim } \l_fontscale_LARGE_baselineskip_skip } \DeclareDocumentCommand \huge { } { \__fontscale_huge: } \cs_new_protected:Npn \__fontscale_huge: { - \@setfontsize \huge - { \dim_use:N \l_fontscale_huge_size_dim } + \@setfontsize \huge { \dim_use:N \l_fontscale_huge_size_dim } \l_fontscale_huge_baselineskip_skip } \DeclareDocumentCommand \Huge { } { \__fontscale_Huge: } \cs_new_protected:Npn \__fontscale_Huge: { - \@setfontsize \Huge - { \dim_use:N \l_fontscale_Huge_size_dim } + \@setfontsize \Huge { \dim_use:N \l_fontscale_Huge_size_dim } \l_fontscale_Huge_baselineskip_skip } % Initializes to \normalsize. @@ -967,33 +964,35 @@ { \__fontscale_set_font_step:Nn #1 {#2} } \cs_new_protected:Npn \__fontscale_set_font_step:Nn #1#2 { - \fp_set:Nn \l__fontscale_step_fp {#2} \bool_if:NTF #1 { \tl_set:Ne \l__fontscale_step_tl { \__fontscale_current_font_step: } \tl_if_empty:NTF \l__fontscale_step_tl { \msg_error:nn { fontscale } { font-step-out-of-bounds } } { - \fp_add:Nn \l__fontscale_step_fp { \l__fontscale_step_tl } + \fp_set:Nn \l__fontscale_step_fp { (#2) + \l__fontscale_step_tl } \__fontscale_set_font_step_aux:N \l__fontscale_step_fp } } - { \__fontscale_set_font_step_aux:N \l__fontscale_step_fp } + { + \fp_set:Nn \l__fontscale_step_fp {#2} + \__fontscale_set_font_step_aux:N \l__fontscale_step_fp + } } \cs_new_protected:Npn \__fontscale_set_font_step_aux:N #1 { - \str_case:enF { \fp_use:N #1 } + \token_case_meaning:NnF #1 { - { -4 } { \tiny } - { -3 } { \scriptsize } - { -2 } { \footnotesize } - { -1 } { \small } - { 0 } { \normalsize } - { 1 } { \large } - { 2 } { \Large } - { 3 } { \LARGE } - { 4 } { \huge } - { 5 } { \Huge } + \c_fontscale_tiny_step_fp { \tiny } + \c_fontscale_scriptsize_step_fp { \scriptsize } + \c_fontscale_footnotesize_step_fp { \footnotesize } + \c_fontscale_small_step_fp { \small } + \c_fontscale_normalsize_step_fp { \normalsize } + \c_fontscale_large_step_fp { \large } + \c_fontscale_Large_step_fp { \Large } + \c_fontscale_LARGE_step_fp { \LARGE } + \c_fontscale_huge_step_fp { \huge } + \c_fontscale_Huge_step_fp { \Huge } } { \str_case:onTF \l__fontscale_typographic_scale_str @@ -1120,23 +1119,71 @@ } } -\NewDocumentCommand \PrintFontSizeCommand { } - { \__fontscale_print_font_size_command: } -\cs_new_protected:Npn \__fontscale_print_font_size_command: +\NewDocumentCommand \PrintFontSizeCommand { } { \__fontscale_print_name: } +\cs_new_protected:Npn \__fontscale_print_name: { - \dim_set:Nn \l__fontscale_size_dim { \f@size pt } - \seq_map_inline:Nn \c__fontscale_names_seq + \dim_case:nnF { \f@size pt } { - \dim_compare:nNnT \l__fontscale_size_dim = - { \use:c { l_fontscale_##1_size_dim } } - { - \skip_if_eq:nnTF { \f@baselineskip } - { \use:c { l_fontscale_##1_baselineskip_skip } } - { \seq_map_break:n { \prg_break:n { \token_to_str:c {##1} } } } - { \seq_map_break: } - } + { \l_fontscale_tiny_size_dim } + { + \skip_if_eq:nnTF { \f@baselineskip } + { \l_fontscale_tiny_baselineskip_skip } + { \token_to_str:N \tiny } { UNDEFINED \@ } + } + { \l_fontscale_scriptsize_size_dim } + { + \skip_if_eq:nnTF { \f@baselineskip } + { \l_fontscale_scriptsize_baselineskip_skip } + { \token_to_str:N \scriptsize } { UNDEFINED \@ } + } + { \l_fontscale_footnotesize_size_dim } + { + \skip_if_eq:nnTF { \f@baselineskip } + { \l_fontscale_footnotesize_baselineskip_skip } + { \token_to_str:N \footnotesize } { UNDEFINED \@ } + } + { \l_fontscale_small_size_dim } + { + \skip_if_eq:nnTF { \f@baselineskip } + { \l_fontscale_small_baselineskip_skip } + { \token_to_str:N \small } { UNDEFINED \@ } + } + { \l_fontscale_normalsize_size_dim } + { + \skip_if_eq:nnTF { \f@baselineskip } + { \l_fontscale_normalsize_baselineskip_skip } + { \token_to_str:N \normalsize } { UNDEFINED \@ } + } + { \l_fontscale_large_size_dim } + { + \skip_if_eq:nnTF { \f@baselineskip } + { \l_fontscale_large_baselineskip_skip } + { \token_to_str:N \large } { UNDEFINED \@ } + } + { \l_fontscale_Large_size_dim } + { + \skip_if_eq:nnTF { \f@baselineskip } + { \l_fontscale_Large_baselineskip_skip } + { \token_to_str:N \Large } { UNDEFINED \@ } + } + { \l_fontscale_LARGE_size_dim } + { + \skip_if_eq:nnTF { \f@baselineskip } + { \l_fontscale_LARGE_baselineskip_skip } + { \token_to_str:N \LARGE \@ } { UNDEFINED \@ } + } + { \l_fontscale_huge_size_dim } + { + \skip_if_eq:nnTF { \f@baselineskip } + { \l_fontscale_huge_baselineskip_skip } + { \token_to_str:N \huge } { UNDEFINED \@ } + } + { \l_fontscale_Huge_size_dim } + { + \skip_if_eq:nnTF { \f@baselineskip } + { \l_fontscale_Huge_baselineskip_skip } + { \token_to_str:N \Huge } { UNDEFINED \@ } + } } - \prg_break:n { UNDEFINED } - \prg_break_point: - \@ + { UNDEFINED \@ } }
\ No newline at end of file diff --git a/macros/latex/contrib/sjtutex/sjtutex.dtx b/macros/latex/contrib/sjtutex/sjtutex.dtx index 4e340a821f..3c3b5b9fbe 100644 --- a/macros/latex/contrib/sjtutex/sjtutex.dtx +++ b/macros/latex/contrib/sjtutex/sjtutex.dtx @@ -216,7 +216,7 @@ Please update your TeX distribution}{}} %</class> %<*!(driver|install)> -%<+!driver>\GetIdInfo$Id: sjtutex.dtx b468d42 2024-02-18 19:15:02 +0800 Alexara Wu <alexarawu@outlook.com> $ +%<+!driver>\GetIdInfo$Id: sjtutex.dtx ab42a74 2024-03-23 20:09:29 +0800 Alexara Wu <alexarawu@outlook.com> $ %<class&thesis> {Thesis document class for Shanghai Jiao Tong University (SJTUTeX)} %<class&thesis>\ProvidesExplClass{sjtuthesis} %<class&report> {Report document class for Shanghai Jiao Tong University (SJTUTeX)} @@ -335,7 +335,7 @@ %<font&cjk&founder&zh>\ProvidesExplFile{sjtu-cjk-font-founder-zh.def} %<font&cjk&founder&ja> {Founder CJK fonts definition for Japanese (SJTUTeX)} %<font&cjk&founder&ja>\ProvidesExplFile{sjtu-cjk-font-founder-ja.def} -%<!driver> {\ExplFileDate}{2.1}{\ExplFileDescription} +%<!driver> {\ExplFileDate}{2.1.1}{\ExplFileDescription} %</!(driver|install)> % %<*driver> @@ -343,7 +343,7 @@ \documentclass{ctxdoc} \newcommand{\sjtutex}{SJTU\TeX} \expandafter\def\csname ver@\jobname.dtx\endcsname - {2024/02/18 v2.1 SJTUTeX} + {2024/03/23 v2.1.1 SJTUTeX} \usepackage{float} \usepackage{multirow} \usepackage{longtable} @@ -1130,6 +1130,22 @@ % 默认为 |\zihao{5}\normalfont|,正常字重五号字。 % \end{function} % +% \begin{function}[added=2024-03-21]{style/theorem-header-font} +% \begin{syntax} +% \OPT{theorem-header-font} = \marg{字体设置} +% \end{syntax} +% 定理头(即标题)字体。 +% 默认为 |\bfseries\CJKsffamily|,黑体加粗。 +% \end{function} +% +% \begin{function}[added=2024-03-21]{style/theorem-body-font} +% \begin{syntax} +% \OPT{theorem-body-font} = \marg{字体设置} +% \end{syntax} +% 定理内容字体。 +% 默认为 |\normalfont|,和正文字体相同。 +% \end{function} +% % \begin{function}[added=2023-03-28]{style/fnmark-style} % \begin{syntax} % \OPT{fnmark-style} = <plain|circled> @@ -1399,20 +1415,19 @@ % % \begin{function}{assumption,axiom,conjecture,corollary,definition,example, % exercise,lemma,problem,proposition,theorem} -% \sjtutex{} 预定义了一系列数学环境。在启用 \pkg{ntheorem} 或 \pkg{amsthm} -% 宏包后有效,环境如表 \ref{tab:theorems} 所示。 +% \sjtutex{} 预定义了一系列数学环境,如表 \ref{tab:theorems} 所示, +% 在启用 \pkg{amsthm} 或 \pkg{ntheorem} 宏包后有效。 % \begin{table}[H] -% \centering -% \small +% \centering\small % \caption{预定义的数学环境} % \label{tab:theorems} % \begin{tabular}{*{7}{l}} % \toprule -% \env{assumption} & \env{axiom} & \env{conjecture} & \env{corollary} & \env{definition} & \env{example} & \env{exercise} \\ -% 假设 & 公理 & 猜想 & 推论 & 定义 & 例 & 练习 \\ +% \env{assumption} & \env{axiom} & \env{conjecture} & \env{corollary} & \env{definition} & \env{example} & \env{exercise} \\ +% 假设 & 公理 & 猜想 & 推论 & 定义 & 例 & 练习 \\ % \midrule -% \env{lemma} & \env{problem} & \env{proof} & \env{proposition} & \env{remark} & \env{solution} & \env{theorem} \\ -% 引理 & 问题 & 证明 & 命题 & 注 & 解 & 定理 \\ +% \env{lemma} & \env{problem} & \env{proof} & \env{proposition} & \env{remark} & \env{solution} & \env{theorem} \\ +% 引理 & 问题 & 证明 & 命题 & 注 & 解 & 定理 \\ % \bottomrule % \end{tabular} % \end{table} @@ -1573,14 +1588,14 @@ % \bibitem{LiuHY2013} % 刘海洋. % \newblock \textit{\LaTeX{} 入门} [M]. -% \newblock 北京: 电子工业出版社, 2013 +% \newblock 北京: 电子工业出版社, 2013. % % \subsection*{标准、规范} % % \bibitem{gb-t-7713.1-2006} % 国务院学位委员会办公室, 全国信息与文献标准化技术委员会. % \newblock \textit{学位论文编写规则: GB/T 7713.1--2006}\allowbreak[S]. -% \newblock 北京: 中国标准出版社, 2007 +% \newblock 北京: 中国标准出版社, 2007. % % \bibitem{cy-t-35-2001} % 全国信息与文献标准化技术委员会第七分委员会, 中华人民共和国新闻出版总署. @@ -4084,6 +4099,26 @@ % \end{macrocode} % \end{macro} % +% \subsection{数学环境} +% +% 可以选用 \pkg{amsthm} 或 \pkg{ntheorem} 宏包控制数学环境样式, +% 并提供对证明环境 \env{proof} 的支持。 +% +% \changes{v2.1.1}{2024/03/21}{新增 \opt{style/theorem-header-font}、 +% \opt{style/theorem-body-font} 选项。} +% \begin{macro}{style/theorem-header-font,style/theorem-body-font} +% 预定义的数学环境的定理头(即标题)以及定理内容的字体。 +% \begin{macrocode} +\keys_define:nn { sjtu / style } + { + theorem-header-font .tl_set:N = \SJTU@style@thm@header@font , + theorem-header-font .initial:n = \bfseries \CJKsffamily , + theorem-body-font .tl_set:N = \SJTU@style@thm@body@font , + theorem-body-font .initial:n = \normalfont , + } +% \end{macrocode} +% \end{macro} +% % \subsection{浮动体} % % 下面这组命令使浮动对象的缺省值稍微宽松一点,从而防止幅度对象占据过多的 @@ -5695,8 +5730,12 @@ { \AtBeginEnvironment { longtable } { \SJTU@style@float@font } } % \end{macrocode} % +% \changes{v2.1.1}{2024/03/21}{预定义的数学环境声明移至导言区末尾, +% 且不会覆盖重名的已定义环境。} % \subsubsection{\pkg{amsthm} 宏包和 \pkg{ntheorem} 宏包} % +% 预定义的数学环境,不包括证明环境 \env{proof}。 +% 定义前会检测环境是否已经存在,避免覆盖用户的定义。 % \begin{macrocode} \cs_new_protected:Nn \@@_new_theorems: { @@ -5705,15 +5744,27 @@ assumption, axiom, conjecture, corollary, definition, example, exercise, lemma, problem, proposition, theorem } -%<!article> { \exp_args:Nnv \newtheorem {##1} { c_@@_name_ ##1 _tl } [ chapter ] } -%<article> { \exp_args:Nnv \newtheorem {##1} { c_@@_name_ ##1 _tl } } + { + \cs_if_exist:cF {##1} +%<*!article> + { + \exp_args:Nnv \newtheorem {##1} { c_@@_name_ ##1 _tl } + [ chapter ] + } +%</!article> +%<article> { \exp_args:Nnv \newtheorem {##1} { c_@@_name_ ##1 _tl } } + } \clist_map_inline:nn { remark, solution } - { \exp_args:NNnv \newtheorem* {##1} { c_@@_name_ ##1 _tl } } + { + \cs_if_exist:cF {##1} + { \exp_args:NNnv \newtheorem* {##1} { c_@@_name_ ##1 _tl } } + } } % \end{macrocode} % -% \pkg{amsthm} 宏包。 +% \pkg{amsthm} 会定义 \tn{openbox},为避免与一些宏包冲突, +% 我们先保存 \tn{openbox},然后取消定义。 % \begin{macrocode} \ctex_at_begin_package:nn { amsthm } { @@ -5732,36 +5783,95 @@ \RenewDocumentEnvironment { proof } { O{ \proofname } } { \par \pushQED { \qed } - \normalfont \dim_zero:N \topsep + \SJTU@style@thm@body@font \dim_zero:N \topsep \trivlist \item [ \skip_horizontal:N \labelsep - \bfseries \CJKsffamily #1 \@addpunct { \enskip } + \SJTU@style@thm@header@font #1 \@addpunct { \enskip } ] \ignorespaces } { \popQED \endtrivlist \@endpefalse } \newtheoremstyle { sjtu } - { } { } { \normalfont } { } { \bfseries \CJKsffamily } { } { \ccwd } { } - \theoremstyle { sjtu } - \@@_new_theorems: + { } { } { \SJTU@style@thm@body@font } { } + { \SJTU@style@thm@header@font } { } { \ccwd } { } } % \end{macrocode} % -% \pkg{ntheorem} 宏包。 +% 如果用户加载了 \pkg{amsthm} 或 \pkg{ntheorem} 宏包, +% 则在导言区末尾应用预设的样式定义定理环境。 % \begin{macrocode} -\ctex_at_end_package:nn { ntheorem } +\ctex_at_end_preamble:n { - \@@_cs_provide_eq:NN \QED \c_empty_tl - \theoremheaderfont { \bfseries \CJKsffamily } - \theorembodyfont { \normalfont } - \theoremseparator { \enskip } - \theoremsymbol { \ensuremath { \QED } } - \qedsymbol { \ensuremath { \QED } } - \newtheorem* { proof } { \proofname } - \theoremsymbol { } - \@@_new_theorems: + \@ifpackageloaded { amsthm } + { + \theoremstyle { sjtu } + \@@_new_theorems: + } + { + \@ifpackageloaded { ntheorem } + { + \@@_cs_provide_eq:NN \QED \c_empty_tl + \theoremheaderfont { \SJTU@style@thm@header@font } + \theorembodyfont { \SJTU@style@thm@body@font } + \theoremseparator { \enskip } + \theoremsymbol { \ensuremath { \QED } } + \qedsymbol { \ensuremath { \QED } } + \cs_if_exist:NF \proof + { \newtheorem* { proof } { \proofname } } + \theoremsymbol { } + \@@_new_theorems: + } { } + } + } +% \end{macrocode} +% +% \changes{v2.1.1}{2024/03/22}{添加 \pkg{thmtools} 宏包支持。} +% \subsubsection{\pkg{thmtools} 宏包} +% +% 使用 \pkg{tocloft} 包设置 \tn{listoftheorems} 的样式。 +% \begin{macrocode} +\ctex_at_end_package:nn { thmtools } + { + \newlistentry { thm } { loe } { 0 } + \newcounter { loedepth } + \setcounter { loedepth } { 1 } + \skip_set:Nn \cftthmnumwidth { 2.3 em } + \define@key { thmt-listof } { numwidth } + { \skip_set:Nn \cftthmnumwidth {#1} } + \cs_set:Npn \thmtlo@newentry + { \cs_set_eq:cN { l@ \thmt@envname } \l@thm } + \cs_set:Npn \thmtlo@chaptervspacehack { } + \RenewDocumentCommand \listoftheorems { s O{ } } + { + \group_begin: + \setlisttheoremstyle {#2} + \IfBooleanTF {#1} + { \SJTU@head* { \listtheoremname } } + { \SJTU@head { \listtheoremname } } + \cs_set:Npn \contentsline ##1 + { \use:c { thmt@contentsline@ ##1 } {##1} } + \clist_map_inline:Nn \thmt@allenvs + { + \tl_set:Nn \thmt@envname {##1} + \thmtlo@newentry + } + \@fileswfalse + \AddToHook { enddocument / afterlastpage } + { + \if@filesw + \@ifundefined { tf@loe } + { + \expandafter\newwrite\csname tf@loe\endcsname + \immediate\openout \csname tf@loe\endcsname \jobname.loe\relax + } { } + \fi + } + \cs_set:Npn \makebox [##1][##2]##3 { \, ##3 } + \@starttoc { loe } + \group_end: + } } % \end{macrocode} % diff --git a/macros/latex/contrib/sjtutex/sjtutex.pdf b/macros/latex/contrib/sjtutex/sjtutex.pdf Binary files differindex c14c72d1d6..049b2a97ce 100644 --- a/macros/latex/contrib/sjtutex/sjtutex.pdf +++ b/macros/latex/contrib/sjtutex/sjtutex.pdf diff --git a/macros/latex/contrib/yb-book/DEPENDS.txt b/macros/latex/contrib/yb-book/DEPENDS.txt index 6d00722666..cdd7bf4c2b 100644 --- a/macros/latex/contrib/yb-book/DEPENDS.txt +++ b/macros/latex/contrib/yb-book/DEPENDS.txt @@ -1,34 +1,42 @@ -hard pgf -hard pgfopts -hard xkeyval -hard textpos -hard geometry hard anyfontsize +hard biblatex +hard bigfoot +hard changepage hard chngcntr -hard lastpage -hard paralist -hard xcolor -hard setspace +hard csquotes hard enumitem +hard fancyhdr hard float -hard ulem -hard qrcode -hard wrapfig -hard soul -hard xifthen -hard csquotes -hard biblatex +hard footmisc +hard geometry +hard ifmtarg hard imakeidx -hard microtype +hard lastpage hard libertine -hard footmisc +hard mdframed +hard microtype +hard needspace +hard paralist +hard hypdoc +hard pgf +hard pgfopts +hard qrcode +hard setspace +hard soul +hard textpos hard titlesec hard titlesec -hard fancyhdr +hard ulem hard wrapfig -hard mdframed -hard changepage -hard ifmtarg -hard bigfoot +hard wrapfig +hard xcolor +hard xifthen +hard xkeyval hard zref -hard needspace
\ No newline at end of file +soft biblatex +soft href-ul +soft imakeidx +soft l3build +soft pgfopts +soft scheme-basic +soft xetex diff --git a/macros/latex/contrib/yb-book/LICENSE.txt b/macros/latex/contrib/yb-book/LICENSE.txt index 5744f745f0..1f211e0287 100644 --- a/macros/latex/contrib/yb-book/LICENSE.txt +++ b/macros/latex/contrib/yb-book/LICENSE.txt @@ -1,6 +1,6 @@ (The MIT License) -Copyright (c) 2021-2023 Yegor Bugayenko +Copyright (c) 2021-2024 Yegor Bugayenko Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal diff --git a/macros/latex/contrib/yb-book/README.md b/macros/latex/contrib/yb-book/README.md index fcc2528d67..caa052d47d 100644 --- a/macros/latex/contrib/yb-book/README.md +++ b/macros/latex/contrib/yb-book/README.md @@ -1,12 +1,16 @@ +# LaTeX Class for My Books + [![make](https://github.com/yegor256/yb-book/actions/workflows/l3build.yml/badge.svg)](https://github.com/yegor256/yb-book/actions/workflows/l3build.yml) [![CTAN](https://img.shields.io/ctan/v/yb-book)](https://ctan.org/pkg/yb-book) [![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/yegor256/yb-book/blob/master/LICENSE.txt) -This LaTeX class I use to format [my books](https://www.yegor256.com/books.html), +This LaTeX class I use to format +[my books](https://www.yegor256.com/books.html), which I sell [on Amazon](https://www.amazon.com/Yegor-Bugayenko/e/B01AM1QMDK). -First, [install it](https://en.wikibooks.org/wiki/LaTeX/Installing_Extra_Packages) -from [CTAN](https://ctan.org/pkg/yb-book) +First, +[install it](https://en.wikibooks.org/wiki/LaTeX/Installing_Extra_Packages) +from [CTAN](https://ctan.org/pkg/yb-book) and then use in the preamble: ```tex @@ -23,7 +27,7 @@ Hello, world! \end{document} ``` -If you want to contribute yourself, make a fork, then create a branch, +If you want to contribute yourself, make a fork, then create a branch, then run `make` in the root directory. It should compile everything without errors. If not, submit an issue and wait. Otherwise, make your changes and then run `make` again. If the build is diff --git a/macros/latex/contrib/yb-book/yb-book.dtx b/macros/latex/contrib/yb-book/yb-book.dtx index 105aec54c1..1c69ae61bb 100644 --- a/macros/latex/contrib/yb-book/yb-book.dtx +++ b/macros/latex/contrib/yb-book/yb-book.dtx @@ -1,7 +1,7 @@ % \iffalse meta-comment % (The MIT License) % -% Copyright (c) 2021-2023 Yegor Bugayenko +% Copyright (c) 2021-2024 Yegor Bugayenko % % Permission is hereby granted, free of charge, to any person obtaining a copy % of this software and associated documentation files (the 'Software'), to deal @@ -50,7 +50,7 @@ %<class>\NeedsTeXFormat{LaTeX2e} %<class>\ProvidesClass{yb-book} %<*class> -[22.05.20230 0.3.0 YB Branded Book Style] +[23.03.2024 0.4.1 YB Branded Book Style] %</class> %<*driver> \documentclass{ltxdoc} @@ -127,7 +127,8 @@ Hello, world! % printing on paper for review purposes. % \end{macro} -% \begin{macro}{draft} +% \begin{macro}{authordraft} +% \changes{v0.4.0}{2024/03/23}{The package option \texttt{draft} renamed to \texttt{draft}} % When it's a draft for reviewers (the page size is A4) % and you want to have a watermark and a compact form of the content. This % option goes together with |\thereviewer{}| command, which you may redefine, @@ -137,7 +138,7 @@ Hello, world! %<*verb> %\fi \begin{verbatim} -\documentclass[draft]{yb-book} +\documentclass[authordraft]{yb-book} \renewcommand*\thereviewer{Walter Sobchak} \begin{document} Hello, world! @@ -251,17 +252,17 @@ Hello, world! \RequirePackage{pgfopts} \pgfkeys{ /yb/.cd, - draft/.store in=\yb@draft, + authordraft/.store in=\yb@authordraft, compact/.store in=\yb@compact, manuscript/.store in=\yb@manuscript, } \ProcessPgfPackageOptions{/yb} % \end{macrocode} -% Then, depending on the options like |draft| and |manuscript|, we preset +% Then, depending on the options like |authordraft| and |manuscript|, we preset % options of the class |book| and then load it: % \begin{macrocode} -\makeatletter\ifdefined\yb@draft +\makeatletter\ifdefined\yb@authordraft \PassOptionsToClass{11pt}{book} \PassOptionsToClass{oneside}{book} \else @@ -282,7 +283,7 @@ Hello, world! \RequirePackage{geometry} \geometry{paperwidth=6in, paperheight=9in, bindingoffset=0.25in, left=0.75in, right=0.75in, top=0.75in, bottom=1.25in} -\makeatletter\ifdefined\yb@draft +\makeatletter\ifdefined\yb@authordraft \geometry{a4paper, margin=1in, left=1.5in} \else \ifdefined\yb@manuscript @@ -299,21 +300,53 @@ Hello, world! \RequirePackage{lmodern} % \end{macrocode} -% Then, we load many important packages: +% Then, we load \href{https://ctan.org/pkg/anyfontsize}{anyfontsize} to enable all sizes of fonts: % \begin{macrocode} \RequirePackage{anyfontsize} +% \end{macrocode} + +% Then, we load \href{https://ctan.org/pkg/tikz}{tikz} for graphics: +% \begin{macrocode} \RequirePackage{tikz} \usetikzlibrary{positioning} \usetikzlibrary{shapes} \usetikzlibrary{fit} +% \end{macrocode} + +% Then, we load \href{https://ctan.org/pkg/chngcntr}{chngcntr} for something else: +% \begin{macrocode} \RequirePackage{chngcntr} \counterwithout{footnote}{chapter} +% \end{macrocode} + +% Then, we load \href{https://ctan.org/pkg/lastpage}{lastpage} to enable rendering of the last page number: +% \begin{macrocode} \RequirePackage{lastpage} +% \end{macrocode} + +% Then, we load \href{https://ctan.org/pkg/paralist}{paralist} for inline enumeration: +% \begin{macrocode} \RequirePackage{paralist} +% \end{macrocode} + +% Then, we load \href{https://ctan.org/pkg/xcolor}{xcolor} for colors: +% \begin{macrocode} \RequirePackage{xcolor} +% \end{macrocode} + +% Then, we load \href{https://ctan.org/pkg/graphicx}{graphicx} to enable graphic files inclusion: +% \begin{macrocode} \RequirePackage{graphicx} +% \end{macrocode} + +% Then, we load \href{https://ctan.org/pkg/enumitem}{enumitem} for inline enumeration: +% \begin{macrocode} \RequirePackage[inline]{enumitem} \setlist{nosep} +% \end{macrocode} + +% Then, we load more packages: +% \begin{macrocode} \RequirePackage{float} \RequirePackage[normalem]{ulem} \RequirePackage{xfp} @@ -335,7 +368,7 @@ Hello, world! % \begin{macrocode} \RequirePackage{setspace} \setstretch{1.2} - \makeatletter\ifdefined\yb@draft\setstretch{1.1}\fi\makeatother + \makeatletter\ifdefined\yb@authordraft\setstretch{1.1}\fi\makeatother \makeatletter\ifdefined\yb@compact\setstretch{1.0}\fi\makeatother \makeatletter\ifdefined\yb@manuscript\setstretch{1.1}\fi\makeatother % \end{macrocode} @@ -383,7 +416,7 @@ Hello, world! % \begin{macro}{microtype} % Then, we include |microtype| for better rendering: % \begin{macrocode} -\makeatletter\ifdefined\yb@draft\else +\makeatletter\ifdefined\yb@authordraft\else \RequirePackage[letterspace=-50]{microtype} \fi\makeatother % \end{macrocode} @@ -403,7 +436,7 @@ Hello, world! % \begin{macrocode} \makeatletter \let\yb@oldsection\section -\ifdefined\yb@draft +\ifdefined\yb@authordraft \RequirePackage[medium]{titlesec} \else \RequirePackage[raggedright]{titlesec} @@ -417,9 +450,9 @@ Hello, world! % \end{macrocode} % \end{macro} -% Then, if it's a |draft|, we put a watermark comment: +% Then, if it's a |authordraft|, we put a watermark comment: % \begin{macrocode} -\makeatletter\ifdefined\yb@draft +\makeatletter\ifdefined\yb@authordraft \RequirePackage[absolute]{textpos} \TPGrid{16}{16} \RequirePackage{fancyhdr} @@ -475,7 +508,7 @@ Hello, world! % Then, we define |\ybPrintTitlePage| command: % \begin{macrocode} \makeatletter\newcommand\ybPrintTitlePage{ - \ifdefined\yb@draft\else + \ifdefined\yb@authordraft\else \begin{titlepage} \ttfamily \vspace*{\fill} @@ -505,7 +538,7 @@ Hello, world! % Then, we define |ybPrintTOC| command to print table of contents: % \begin{macrocode} \makeatletter\newcommand\ybPrintTOC{ - \ifdefined\yb@draft\else + \ifdefined\yb@authordraft\else \ifdefined\yb@compact\else\cleardoublepage\fi {\setstretch{0.7}\tableofcontents} \fi @@ -521,7 +554,7 @@ Hello, world! \makeindex \indexsetup{othercode={\hyphenpenalty=10000}} \makeatletter\newcommand\ybPrintIndex[1][Index]{ - \ifdefined\yb@draft\else + \ifdefined\yb@authordraft\else \cleardoublepage { \setstretch{1.0} @@ -571,7 +604,7 @@ Hello, world! ``#1''\\\raggedleft---#2 #3% \fi% } - \ifdefined\yb@draft% + \ifdefined\yb@authordraft% \begin{wrapfigure}{r}{0.4\textwidth}% \begin{mdframed}[style=quoteodd]% \yb@body% diff --git a/macros/latex/contrib/yb-book/yb-book.ins b/macros/latex/contrib/yb-book/yb-book.ins index e72072dbba..28537392a3 100644 --- a/macros/latex/contrib/yb-book/yb-book.ins +++ b/macros/latex/contrib/yb-book/yb-book.ins @@ -1,6 +1,6 @@ %% (The MIT License) %% -%% Copyright (c) 2021-2023 Yegor Bugayenko +%% Copyright (c) 2021-2024 Yegor Bugayenko %% %% Permission is hereby granted, free of charge, to any person obtaining a copy %% of this software and associated documentation files (the 'Software'), to deal @@ -26,7 +26,7 @@ \preamble (The MIT License) -Copyright (c) 2021-2023 Yegor Bugayenko +Copyright (c) 2021-2024 Yegor Bugayenko Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal diff --git a/macros/latex/contrib/yb-book/yb-book.pdf b/macros/latex/contrib/yb-book/yb-book.pdf Binary files differindex 75d400f858..0a319992b5 100644 --- a/macros/latex/contrib/yb-book/yb-book.pdf +++ b/macros/latex/contrib/yb-book/yb-book.pdf |