Move all Modules to Document Class

This commit is contained in:
Frederik Beimgraben 2024-12-01 18:51:26 +00:00
parent f2b251c69d
commit 8cd01e245d
45 changed files with 247 additions and 247 deletions

View File

Before

Width:  |  Height:  |  Size: 430 B

After

Width:  |  Height:  |  Size: 430 B

View File

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Before

Width:  |  Height:  |  Size: 432 B

After

Width:  |  Height:  |  Size: 432 B

View File

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 7.5 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

View File

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 118 KiB

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

Before

Width:  |  Height:  |  Size: 7.4 KiB

After

Width:  |  Height:  |  Size: 7.4 KiB

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -1,4 +1,20 @@
% !TEX root = ../../../Main.tex % =======================================================================================
% Original Author: Martin Oswald (Zürich University of Applied Sciences)
% Modified by: Frederik Beimgraben (University of Applied Sciences Reutlingen)
% Description: This class is a modified version of the ZHAWReport class by Martin Oswald.
% It is used for reports at the University of Applied Sciences Reutlingen.
% =======================================================================================
% License: Creative Commons CC BY 4.0
% Creative Commons Attribution-ShareAlike 4.0 International License.
%
% You should have received a copy of the license along with this
% work. If not, see <http://creativecommons.org/licenses/by-sa/4.0/>.
% =======================================================================================
% String comparison Command
\ExplSyntaxOn
\cs_new_eq:NN \strcompare \str_if_eq:eeTF
\ExplSyntaxOff
% Suppress all warnings; Only show errors % Suppress all warnings; Only show errors
\usepackage{silence} \usepackage{silence}
@ -13,16 +29,16 @@
%---------------------------------------- %----------------------------------------
% PATHS % PATHS
%---------------------------------------- %----------------------------------------
\def\fontsPath{TeX/Assets/Fonts} \def\classPath{HSRTReport}
\def\imagesPath{TeX/Assets/Images} \def\fontsPath{\classPath/Assets/Fonts}
\def\classPath{TeX/Classes/HSRTReport} \def\imagesPath{\classPath/Assets/Images}
%---------------------------------------- %----------------------------------------
% CLASS DEFINITION AND PARAMETERS % CLASS DEFINITION AND PARAMETERS
%---------------------------------------- %----------------------------------------
% Original: ZHAWReport.cls by Martin Oswald % Original: ZHAWReport.cls by Martin Oswald
\NeedsTeXFormat{LaTeX2e} \NeedsTeXFormat{LaTeX2e}
\newcommand{\classname}{TeX/Classes/HSRTReport/HSRTReport} \newcommand{\classname}{HSRTReport/HSRTReport}
\ProvidesClass{\classname}[2024/07/08 HSRT Report Class] \ProvidesClass{\classname}[2024/07/08 HSRT Report Class]
\providecommand{\baseclass}{scrreprt} \providecommand{\baseclass}{scrreprt}
@ -37,22 +53,9 @@
\LoadClass{\baseclass} \LoadClass{\baseclass}
% ---------------------------------------- % ----------------------------------------
% REQUIRED PACKAGES % Imports
% ---------------------------------------- % ----------------------------------------
\RequirePackage[ngerman]{babel} \input{\classPath/Imports}
\RequirePackage{lmodern}
\RequirePackage{graphicx}
\RequirePackage{svg}
\RequirePackage[T1]{fontenc}
\RequirePackage{fontspec}
\RequirePackage{tikz}
\RequirePackage{fancyhdr}
\RequirePackage{bophook}
\RequirePackage{ifthen}
\RequirePackage{arrayjobx}
\RequirePackage{etoolbox}
\RequirePackage{transparent}
\RequirePackage{tocloft}
%---------------------------------------- %----------------------------------------
% REFS % REFS
@ -187,7 +190,7 @@
} }
% ============================================================================= % =============================================================================
\def\skylinePath{TeX/Assets/Images/Skyline.svg} \def\skylinePath{\classPath/Assets/Images/Skyline.svg}
\newcommand{\footerYShift}{1.5em} \newcommand{\footerYShift}{1.5em}
\newcommand{\footerXShift}{0.7em} \newcommand{\footerXShift}{0.7em}
@ -220,13 +223,13 @@
\ifthenelse{\equal{\extension}{svg}}{ \ifthenelse{\equal{\extension}{svg}}{
\begin{tikzpicture} \begin{tikzpicture}
\node[opacity=\opacity] { \node[opacity=\opacity] {
\includesvg[height=\imageHeight]{TeX/Assets/Images/\temp@macro.\extension} \includesvg[height=\imageHeight]{\classPath/Assets/Images/\temp@macro.\extension}
}; };
\end{tikzpicture} \end{tikzpicture}
}{ }{
\begin{tikzpicture} \begin{tikzpicture}
\node[opacity=\opacity] { \node[opacity=\opacity] {
\includegraphics[height=\imageHeight]{TeX/Assets/Images/\temp@macro.\extension} \includegraphics[height=\imageHeight]{\classPath/Assets/Images/\temp@macro.\extension}
}; };
\end{tikzpicture} \end{tikzpicture}
} }
@ -278,8 +281,6 @@
\newcommand{\decoRule}{\rule{.8\textwidth}{.4pt}} \newcommand{\decoRule}{\rule{.8\textwidth}{.4pt}}
\input{\classPath/Pages/Titlepage.tex}
%---------------------------------------- %----------------------------------------
% TABLE OF CONTENTS % TABLE OF CONTENTS
%---------------------------------------- %----------------------------------------
@ -294,3 +295,17 @@
\renewcommand\cftsecfont{\blenderfont\color{gray}} \renewcommand\cftsecfont{\blenderfont\color{gray}}
\renewcommand\cftsubsecfont{\blenderfont\color{gray}} \renewcommand\cftsubsecfont{\blenderfont\color{gray}}
\renewcommand\cftsubsubsecfont{\blenderfont\color{gray}} \renewcommand\cftsubsubsecfont{\blenderfont\color{gray}}
% ----------------------------------------
% Local Imports
% ----------------------------------------
\input{\classPath/Pages/Titlepage.tex}
% ==== Tools ====
\input{\classPath/Modules/Listings}
\input{\classPath/Modules/Floats}
\input{\classPath/Modules/MeetingPresence}
\input{\classPath/Modules/InfoBlocks}
\input{\classPath/Modules/Watermark}
\input{\classPath/Modules/ToC}
\input{\classPath/Modules/Typography}

183
HSRTReport/Imports.tex Normal file
View File

@ -0,0 +1,183 @@
% !TEX root = ./HSRTReport.cls
% ==== Imports ====
% calc package
\RequirePackage{calc}
% fp package
\RequirePackage[nomessages]{fp}% http://ctan.org/pkg/fp
% xstring package
\RequirePackage{xstring}
% Glossaries package
\RequirePackage{glossaries}
% Import multicols
\RequirePackage{multicol}
% Silence package warnings
\RequirePackage{silence}
% Babel for language support
\RequirePackage[ngerman]{babel}
% Bibliography management with biber backend and IEEE style
\RequirePackage[
backend=biber,
sorting=none,
style=ieee
]{biblatex}
% Context-sensitive quotation marks
\RequirePackage{csquotes}
% Geometry for setting page dimensions and margins
\RequirePackage[a4paper, margin=2cm]{geometry}
% Booktabs for better table formatting
\RequirePackage{booktabs}
% Tabularx for tables with fixed width columns
\RequirePackage{tabularx}
% Longtable for tables that span multiple pages
\RequirePackage{longtable}
% Graphics support
\RequirePackage{graphicx}
% Enumitem for customized lists
\RequirePackage{enumitem}
% Verbatim for including literal text
\RequirePackage{verbatim}
% Captions for customizing figure and table captions
\RequirePackage{caption}
% Floatrow for advanced float customization
\RequirePackage{floatrow}
% Subcaption for subfigures within a figure
\RequirePackage[subrefformat=parens]{subcaption}
% Glossaries for glossary support
\RequirePackage{glossaries}
% Blindtext for generating dummy text
\RequirePackage{blindtext}
% Listings for including source code with syntax highlighting
\RequirePackage{listings}
% Hyphenation support for monospaced fonts
\RequirePackage[htt]{hyphenat}
% Color package for text coloring
\RequirePackage{color}
% Additional options for captions
\RequirePackage{caption,xparse}
% Multirow for table cells spanning multiple rows
\RequirePackage{multirow}
% Mathematical symbols and fonts
\RequirePackage{amssymb}
% Pifont for dingbat symbols
\RequirePackage{pifont}
% Epigraph for quotations
\RequirePackage{epigraph}
% Lipsum for generating dummy text
\RequirePackage{lipsum}
% Setspace for line spacing
\RequirePackage{setspace}
% Lmodern for scalable font
\RequirePackage{lmodern}
% Anyfontsize for using arbitrary font sizes
\RequirePackage{anyfontsize}
% For dotted lines in tables
\RequirePackage{arydshln}
% Boxes (for Info, Warning, etc.)
\RequirePackage[framemethod=TikZ]{mdframed}
% Emojis
\RequirePackage{twemojis}
% Euro Symbol
\RequirePackage{eurosym}
% To add a watermark
\RequirePackage{draftwatermark}
% Unicode Symbols
\RequirePackage{utfsym}
% For the \textsubscript command
\RequirePackage{accsupp}
% Modify TOC formatting
\RequirePackage{tocloft}
% Fontawesome for icons
\RequirePackage{fontawesome5}
% For better environment definitions
\RequirePackage{environ}
% http://ctan.org/pkg/keyval
\RequirePackage{keyval}
% For justified text
\RequirePackage{ragged2e}
% FPeval for floating point calculations
\RequirePackage{xfp}
% TikZ for drawing
\RequirePackage{tikz}
% To refer to page text area
\RequirePackage{tikzpagenodes}
% Pie Chart
\RequirePackage{pgf-pie}
% Transparent images
\RequirePackage{transparent}
% SVG images
\RequirePackage{svg}
% Fontenc for font encoding
\RequirePackage[T1]{fontenc}
% Fontspec for font selection
\RequirePackage{fontspec}
% For the IfThenElse command
\RequirePackage{ifthen}
% Bophook for hooks
\RequirePackage{bophook}
% For Arrays
\RequirePackage{arrayjobx}
% For Headers and Footers
\RequirePackage{fancyhdr}
% Command Patching
\RequirePackage{etoolbox}
% ==== /Imports ====

View File

@ -24,13 +24,13 @@
\ifthenelse{\equal{\extension}{svg}}{ \ifthenelse{\equal{\extension}{svg}}{
\begin{tikzpicture} \begin{tikzpicture}
\node[opacity=\opacity] { \node[opacity=\opacity] {
\includesvg[height=\imageHeight]{TeX/Assets/Images/\temp@macro.\extension} \includesvg[height=\imageHeight]{\classPath/Assets/Images/\temp@macro.\extension}
}; };
\end{tikzpicture} \end{tikzpicture}
}{ }{
\begin{tikzpicture} \begin{tikzpicture}
\node[opacity=\opacity] { \node[opacity=\opacity] {
\includegraphics[height=\imageHeight]{TeX/Assets/Images/\temp@macro.\extension} \includegraphics[height=\imageHeight]{\classPath/Assets/Images/\temp@macro.\extension}
}; };
\end{tikzpicture} \end{tikzpicture}
} }

View File

@ -1,21 +1,17 @@
\RequirePackage{currfile}
\ExplSyntaxOn
\cs_new_eq:NN \strcompare \str_if_eq:eeTF
\ExplSyntaxOff
\documentclass[ \documentclass[
11pt, 11pt,
paper=a4, paper=a4,
oneside, oneside,
DIV=14, DIV=14,
onecolumn onecolumn
]{TeX/Classes/HSRTReport/HSRTReport} ]{HSRTReport/HSRTReport}
\input{TeX/Report} \input{TeX/Preamble}
% ==== Document ====
\begin{document} \begin{document}
% Title page
\maketitle \maketitle
\setstretch{1.0} \setstretch{1.0}

View File

@ -1,167 +0,0 @@
% !TEX root = ../Main.tex
% ==== Imports ====
% calc package
\usepackage{calc}
% fp package
\usepackage[nomessages]{fp}% http://ctan.org/pkg/fp
% xstring package
\usepackage{xstring}
% Glossaries package
\usepackage{glossaries}
% Import multicols
\usepackage{multicol}
% Silence package warnings
\usepackage{silence}
% Babel for language support
\usepackage[ngerman]{babel}
% Bibliography management with biber backend and IEEE style
\usepackage[
backend=biber,
sorting=none,
style=ieee
]{biblatex}
% Context-sensitive quotation marks
\usepackage{csquotes}
% Clever referencing with hyperlinked references
\usepackage[nameinlink, noabbrev]{cleveref}
% Geometry for setting page dimensions and margins
\usepackage[a4paper, margin=2cm]{geometry}
% Booktabs for better table formatting
\usepackage{booktabs}
% Tabularx for tables with fixed width columns
\usepackage{tabularx}
% Longtable for tables that span multiple pages
\usepackage{longtable}
% Graphics support
\usepackage{graphicx}
% Enumitem for customized lists
\usepackage{enumitem}
% Verbatim for including literal text
\usepackage{verbatim}
% Captions for customizing figure and table captions
\usepackage{caption}
% Floatrow for advanced float customization
\usepackage{floatrow}
% Subcaption for subfigures within a figure
\usepackage[subrefformat=parens]{subcaption}
% Glossaries for glossary support
\usepackage{glossaries}
% Blindtext for generating dummy text
\usepackage{blindtext}
% Listings for including source code with syntax highlighting
\usepackage{listings}
% Hyphenation support for monospaced fonts
\usepackage[htt]{hyphenat}
% Color package for text coloring
\usepackage{color}
% Additional options for captions
\usepackage{caption,xparse}
% Multirow for table cells spanning multiple rows
\usepackage{multirow}
% Mathematical symbols and fonts
\usepackage{amssymb}
% Pifont for dingbat symbols
\usepackage{pifont}
% Epigraph for quotations
\usepackage{epigraph}
% Lipsum for generating dummy text
\usepackage{lipsum}
% Setspace for line spacing
\usepackage{setspace}
% Lmodern for scalable font
\usepackage{lmodern}
% Anyfontsize for using arbitrary font sizes
\usepackage{anyfontsize}
% For dotted lines in tables
\usepackage{arydshln}
% Boxes (for Info, Warning, etc.)
\usepackage[framemethod=TikZ]{mdframed}
% Emojis
\usepackage{twemojis}
% Euro Symbol
\usepackage{eurosym}
% To add a watermark
\usepackage{draftwatermark}
% Unicode Symbols
\usepackage{utfsym}
% For the \textsubscript command
\usepackage{accsupp}
% Modify TOC formatting
\usepackage{tocloft}
% Fontawesome for icons
\usepackage{fontawesome5}
% For better environment definitions
\usepackage{environ}
% http://ctan.org/pkg/keyval
\usepackage{keyval}
% For justified text
\usepackage{ragged2e}
% FPeval for floating point calculations
\usepackage{xfp}
% To refer to page text area
\usepackage{tikzpagenodes}
% Pie Chart
\usepackage{pgf-pie}
% Transparent images
\usepackage{transparent}
% ==== /Imports ====
% Tool to import relative to current file using
% the currfile package
\DeclareRobustCommand{\inputrelative}[1]{
% Write \currfiledir#1 to the log file
\typeout{Importing file: <\currfiledir#1> relative to <\currfiledir>}
\input{\currfiledir#1}
}

16
TeX/Preamble.tex Normal file
View File

@ -0,0 +1,16 @@
% !TEX root = ../Main.tex
% ==== Settings ====
\input{TeX/Settings/General}
\input{TeX/Settings/Logos}
% ==== /Settings ====
% ==== Imports ====
\usepackage{hyperref}
\usepackage[nameinlink, noabbrev]{cleveref}
% ==== /Imports ====
% ==== Glossary ====
\input{Content/99_glossary.tex}
\makenoidxglossaries
% ==== /Glossary ====

View File

@ -1,23 +0,0 @@
% !TEX root = ../Main.tex
\WarningsOff*
% ==== Imports ====
\input{TeX/Imports}
% ==== Settings ====
\input{TeX/Settings/General}
\input{TeX/Settings/Logos}
\input{TeX/Settings/BibTeX}
% ==== Tools ====
\input{TeX/Modules/Listings}
\input{TeX/Modules/Floats}
\input{TeX/Modules/MeetingPresence}
\input{TeX/Modules/InfoBlocks}
\input{TeX/Modules/Watermark}
\input{TeX/Modules/ToC}
\input{TeX/Modules/Typography}
% ==== Glossary ====
\input{Content/99_glossary.tex}
\makenoidxglossaries

View File

@ -1,11 +0,0 @@
% !TEX root = ../Main.tex
\newcommand{\meetingDate}{14.11.2024}
% Current date and time
\createdon{\meetingDate}
\title{Handout zur außerordentlichen STUPA-Sitzung am \meetingDate}
\AddLogoExplicit{TeX/Assets/Images/STUPA.png}{1.1}{0.3}{1}{0}
\AddLogoExplicit{TeX/Assets/Images/HSRT.png}{1.4}{0.0}{2}{1}

View File

@ -1,4 +0,0 @@
% !TEX root = ../../Main.tex
% Add main.bib to bibliography
\addbibresource{main.bib}

View File

@ -1,5 +0,0 @@
% !TEX root = ../Main.tex
\ExplSyntaxOn
\cs_new_eq:NN \strcompare \str_if_eq:eeTF
\ExplSyntaxOff