refactor(latex): split monolithic imports into categorized config files

This commit is contained in:
Frederik Beimgraben 2025-10-29 22:25:17 +01:00
parent c95467a5af
commit d1e4dddf1e
7 changed files with 187 additions and 2 deletions

View File

@ -0,0 +1,56 @@
% !TEX root = ../HSRTReport.cls
% ==== Content and Typography Packages ====
% Packages for content formatting and typography
% Tables with fixed width columns
\RequirePackage{tabularx}
% Tables spanning multiple pages
\RequirePackage{longtable}
% Dotted lines in tables
\RequirePackage{arydshln}
% Multi-row table cells
\RequirePackage{multirow}
% Customized lists
\RequirePackage{enumitem}
% Figure and table captions
\RequirePackage{caption}
% Advanced float customization
\RequirePackage{floatrow}
% Subfigures and subcaptions
\RequirePackage[subrefformat=parens]{subcaption}
% Code listings with syntax highlighting
\RequirePackage{listings}
% Hyphenation for monospaced fonts
\RequirePackage[htt]{hyphenat}
% Mathematical symbols and fonts
\RequirePackage{amsmath}
\RequirePackage{amssymb}
\RequirePackage{amsfonts}
% Additional symbols
\RequirePackage{pifont}
\RequirePackage{eurosym}
\RequirePackage{utfsym}
\RequirePackage{twemojis}
% Font Awesome icons
\RequirePackage{fontawesome5}
% Justified text
\RequirePackage{ragged2e}
% Subscript support
\RequirePackage{accsupp}
% Info boxes and frames
\RequirePackage[framemethod=TikZ]{mdframed}

View File

@ -0,0 +1,57 @@
% !TEX root = ../HSRTReport.cls
% ==== Core Packages ====
% Essential LaTeX packages for basic functionality
% Calculation package
\RequirePackage{calc}
% Floating point calculations
\RequirePackage[nomessages]{fp}% http://ctan.org/pkg/fp
\RequirePackage{xfp}
% Key-value interface
\RequirePackage{keyval}
% Conditional commands
\RequirePackage{ifthen}
% Command patching
\RequirePackage{etoolbox}
% Array handling
\RequirePackage{arrayjobx}
% Environment definitions
\RequirePackage{environ}
% Hook management
\RequirePackage{bophook}
% Counter manipulation
\RequirePackage{chngcntr}
% Extended color support
\RequirePackage{xcolor}
\RequirePackage{color}
% Graphics support
\RequirePackage{graphicx}
% SVG support
\RequirePackage{svg}
% Transparent images
\RequirePackage{transparent}
% Font encoding and selection
\RequirePackage[T1]{fontenc}
\RequirePackage{fontspec}
% Modern Latin fonts
\RequirePackage{lmodern}
% Arbitrary font sizes
\RequirePackage{anyfontsize}
% Silence package warnings
\RequirePackage{silence}

View File

@ -0,0 +1,50 @@
% !TEX root = ../HSRTReport.cls
% ==== Document Structure Packages ====
% Packages for document layout and structure
% Language support
\RequirePackage[ngerman]{babel}
% Page geometry
\RequirePackage[a4paper, margin=2cm]{geometry}
% Bibliography management
\RequirePackage[
backend=biber,
sorting=none,
style=ieee
]{biblatex}
% Context-sensitive quotation marks
\RequirePackage{csquotes}
% Glossaries and acronyms
\RequirePackage[acronym, savenumberlist=true]{glossaries}
% Headers and footers
\RequirePackage{fancyhdr}
% Table of contents formatting
\RequirePackage{tocloft}
% Line spacing
\RequirePackage{setspace}
% Hyperlinks and references
\RequirePackage{hyperref}
% Enhanced cross-references
\RequirePackage[nameinlink, noabbrev]{cleveref}
% Watermark support
\RequirePackage{draftwatermark}
% Verbatim text
\RequirePackage{verbatim}
% Lorem ipsum text generation
\RequirePackage{lipsum}
\RequirePackage{blindtext}
% Quotations and epigraphs
\RequirePackage{epigraph}

View File

@ -0,0 +1,15 @@
% !TEX root = ../HSRTReport.cls
% ==== Graphics and Drawing Packages ====
% Packages for graphics, diagrams, and TikZ drawings
% TikZ for drawing
\RequirePackage{tikz}
% TikZ page nodes
\RequirePackage{tikzpagenodes}
% PGF/TikZ libraries
\RequirePackage{pgf}
% Pie charts
\RequirePackage{pgf-pie}

View File

@ -55,12 +55,19 @@
% ---------------------------------------- % ----------------------------------------
% Imports % Imports
% ---------------------------------------- % ----------------------------------------
\input{\classPath/Imports} % Load core packages first
\input{\classPath/Config/Imports-Core}
% Document structure packages
\input{\classPath/Config/Imports-Document}
% Content and typography packages
\input{\classPath/Config/Imports-Content}
% Graphics and TikZ packages
\input{\classPath/Config/Imports-Graphics}
%---------------------------------------- %----------------------------------------
% REFS % REFS
%---------------------------------------- %----------------------------------------
\RequirePackage{hyperref} % Hyperref already loaded in Imports-Document
\hypersetup{ \hypersetup{
pdfpagemode={UseOutlines}, pdfpagemode={UseOutlines},
bookmarksopen=true, bookmarksopen=true,

BIN
Main.pdf

Binary file not shown.