diff --git a/HsH-classes.dtx b/HsH-classes.dtx new file mode 100644 index 0000000000000000000000000000000000000000..7c8e2e836fab6b2c77ebf4891c81f4e83b6032d2 --- /dev/null +++ b/HsH-classes.dtx @@ -0,0 +1,693 @@ +% \iffalse meta-comment +% +% Copyright (C) 2020 by Jan Wille <mail@janwille.de> +% ------------------------------------------------------- +% +% This file may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% 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.3 or later is part of all distributions of LaTeX +% version 2021-01-01 or later. +% +% \fi +% +%<*article|report|standalone> +\typeout{Adapted from KOMA script for use in Hochschule Hannover <2021-03-18> Jan Wille} +\NeedsTeXFormat{LaTeX2e} +% +%<article>\newcommand{\myClassName}{HsH-article} +%<report>\newcommand{\myClassName}{HsH-report} +%<standalone>\newcommand{\myClassName}{HsH-standalone} +\ProvidesClass{\myClassName}[2021/03/18 v1.0 HsH-Class based on KOMA] + +%</article|report|standalone> +% +%<*article|report|standalone> +%% commands for HsH-logo +\newcommand{\HsHlogoPath}{HSH-Logo.pdf} +\newcommand{\HsHlogoPage}{1} +\newcommand{\includeHsHlogohere}[1][5cm]{\includegraphics[width=#1,page=\HsHlogoPage]{\HsHlogoPath}} +\newif\if@german% + +%% document options ------------------------------------------------------------------------------- +\DeclareOption{german}{% + \@germantrue +} +\DeclareOption{ngerman}{% + \@germantrue +} +\DeclareOption{english}{% + \@germanfalse +} +\DeclareOption{f1}{% use logo of fakulty 1 + \renewcommand{\HsHlogoPage}{2} +} +\DeclareOption{f2}{% use logo of fakulty 2 + \renewcommand{\HsHlogoPage}{3} +} +\DeclareOption{f3}{% use logo of fakulty 3 + \renewcommand{\HsHlogoPage}{4} +} +\DeclareOption{f4}{% use logo of fakulty 4 + \renewcommand{\HsHlogoPage}{5} +} +\DeclareOption{f5}{% use logo of fakulty 5 + \renewcommand{\HsHlogoPage}{6} +} +\DeclareOption{sans}{% use san serif font + \renewcommand{\familydefault}{\sfdefault} +} +\DeclareOption{roman}{% use roman/serif font + \renewcommand{\familydefault}{\rmdefault} +} +%<article>\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} +%<report>\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrreprt}} +%<standalone>\DeclareOption*{\PassOptionsToClass{\CurrentOption}{standalone}} +% +%<article|report>\ExecuteOptions{fontsize=11pt,a4paper,ngerman,sans} % standart options +%<standalone>\ExecuteOptions{margin=0.25cm,fontsize=11pt,a4paper,ngerman,sans} % standart options +\ProcessOptions\relax + +%% Load KOMA class +%<article>\LoadClass{scrartcl} +%<report>\LoadClass{scrreprt} +%<standalone>\LoadClass[multi=tikzpicture,multi=circuitikz]{standalone} +%<article|report>\KOMAoption{toc}{bibliography,listof} + +%</article|report|standalone> +% +%<*article|report|standalone> +%% package loading and config --------------------------------------------------------------------- +% +% inputencoding, utf8 recomendet +\PassOptionsToPackage{utf8}{inputenc} +\RequirePackage{inputenc} +% +% outputencoding, T1 recomendet +\PassOptionsToPackage{T1}{fontenc} +\RequirePackage{fontenc} +% +\RequirePackage{lmodern} % font +% +% required for importing images +\RequirePackage{graphicx} +% +% a lot of nice Math +\RequirePackage{amsmath} +% +% german dezimal numbers +\if@german\RequirePackage{ziffer}\fi +% +%</article|report|standalone> +%<*article|report> +% +% required for changing layout +\PassOptionsToPackage{left=3cm,right=2.5cm,top=3cm,bottom=3cm}{geometry} +\RequirePackage{geometry} +% +% language specific localisation +\if@german\PassOptionsToPackage{ngerman}{babel}\else\PassOptionsToPackage{english}{babel}\fi +\RequirePackage{babel} +% +% required for header and footer +\PassOptionsToPackage{headsepline}{scrlayer-scrpage} +\RequirePackage{scrlayer-scrpage} +% compatability with listings +\RequirePackage{scrhack} +% +% references and lists are clikable +\PassOptionsToPackage{hidelinks}{hyperref} +\RequirePackage{hyperref} +% +% generat bookmarkes +\RequirePackage{bookmark} +% +% quotations +\PassOptionsToPackage{babel}{csquotes} +\if@german\PassOptionsToPackage{german=quotes}{csquotes}\fi +\RequirePackage{csquotes} +% this makes quotationmarks usable in text: +\MakeOuterQuote{"} +% +% foreach loops +\RequirePackage{pgffor} +% +%</article|report> +%<*article|report|standalone> +%% options for not loaded packages ---------------------------------------------------------------- +% +%<article|report>\PassOptionsToPackage{backend=biber,style=alphabetic,sorting=nyt}{biblatex} +\PassOptionsToPackage{free-standing-units,abbreviations}{siunitx} +\PassOptionsToPackage{european,EFvoltages,straightvoltages,betterproportions}{circuitikz} + +%</article|report|standalone> +% +%<*article|report|standalone> +%% title matters ---------------------------------------------------------------------------------- +% +%<*standalone> +\newcommand*{\@titlehead}{}% +\newcommand{\titlehead}[1]{\gdef\@titlehead{#1}}% +\newcommand*{\@subject}{}% +\newcommand*{\subject}[1]{\gdef\@subject{#1}}% +\newcommand*{\@subtitle}{}% +\newcommand*{\subtitle}[1]{\gdef\@subtitle{#1}}% +%</standalone> +\newcommand*{\@matrikelnr}{}% +\newcommand{\matrikelnr}[1]{\gdef\@matrikelnr{#1}}% +\newcommand*{\@professor}{}% +\newcommand{\professor}[1]{\gdef\@professor{#1}}% +\newcommand*{\@keywords}{}% +\newcommand{\keywords}[1]{\gdef\@keywords{#1}}% +\let\@author\@empty +\let\@keywords\@empty +\InputIfFileExists{personal.tex}{ + \ClassInfo{\myClassName}{personal.tex was found. Using it...} +}{ + \ClassInfo{\myClassName}{no personal.tex! Configre the titlepage yourself} +} + +%</article|report|standalone> +% +%<*article|report|standalone> +%% typesetting indexes upright or standart +\def\subinrm#1{\sb{\mathrm{#1}}} +{\catcode`\_=13 \global\let_=\subinrm} +\mathcode`_="8000 +% the toggle for upright subscripts +\newcommand\upsubscripts{\catcode`\_=12 } +% the toggle for italic subscripts +\newcommand\normalsubscripts{\catcode`\_=8 } +% setting upright as default +\upsubscripts + +%</article|report|standalone> +% +%<*article|report> +%% header and footer +\pagestyle{scrheadings} +\clearpairofpagestyles +%<article>\automark{section} +% Chaptertitles get same header/footer as everything: +%<report>\renewcommand*{\chapterpagestyle}{scrheadings} +%<report>\automark{chapter} +\ohead{\headmark} +\ihead{\@title} +\ofoot*{\pagemark} + +%% floats +% positioning of floats +\renewcommand{\fps@figure}{h!t} +\renewcommand{\fps@table}{h!t} +% +% check if KOMA is used +\ifx\KOMAScriptVersion\undefined\else +% center all floats + \g@addto@macro\@floatboxreset\centering +% center all captions + \setcapwidth[c]{0.8\textwidth} +\fi +% abbreviations for names: +\if@german + \renewcaptionname{ngerman}{\figurename}{Abb.} + \renewcaptionname{ngerman}{\tablename}{Tab.} + \renewcaptionname{ngerman}{\abstractname}{Abstract} +\else + \renewcaptionname{english}{\figurename}{Fig.} + \renewcaptionname{english}{\tablename}{Tab.} +\fi + +%% styling for itemize +\renewcommand{\labelitemi}{$\bullet$} +\renewcommand{\labelitemii}{$\circ$} +\renewcommand{\labelitemiii}{$-$} +\renewcommand{\labelitemiv}{$\cdot$} + +%% do stuff +\setlength\parindent{0pt} % indentation of new paragraphs +\raggedbottom +\renewcommand{\layercontentsmeasure}{\empty} % rulers when using draft disabled + +%% custom commands +\newcommand{\uproman}[1]{\uppercase\expandafter{\romannumeral#1}} +\newcommand{\lowroman}[1]{\romannumeral#1\relax} +%</article|report> +% +%<*article|report|standalone> +%% load config at beginning of document +\AtBeginDocument{ + \makeatletter +%<^*standalone> +% solve some common errors: + \@ifpackageloaded{biblatex}{ +% solves fontype warning in San-Serif + \renewcommand*{\mkbibacro}[1]{\MakeUppercase{#1}} + }{} + \@ifpackageloaded{subfigure}{ + \newcommand{\subfigureautorefname}{\figureautorefname} + }{} +%<^*standalone> + \InputIfFileExists{config.tex}{ + \ClassInfo{\myClassName}{config.tex was found. Using it...} + }{ + \ClassInfo{\myClassName}{no config.tex!! I hope you configered it yourself.} + } + %% provide some usefull commands: +% Makro for vertical lines around absolute values + \providecommand{\abs}[1]{\ensuremath{\left\vert#1\right\vert}} + \makeatother +} +%</article|report|standalone> +% +%<*article|report> +%% nicer abstract --------------------------------------------------------------------------------- +\renewenvironment{abstract}{% +%<article> \section*{\centering\abstractname} +%<report> \chapter*{\centering\abstractname} + \addcontentsline{toc}{chapter}{\abstractname} + \small + \quotation +}{% + \ifx\@keywords\@empty\else + \vspace{1cm} + \paragraph{\if@german Schlüsselwörter:\else Keywords:\fi} + \@keywords + \fi + \endquotation +} +%% decloration of Authorship ---------------------------------------------------------------------- +\newif\if@oneAuthor \@oneAuthortrue +\if@german + \setlocalecaption{ngerman}{dATitle}{Selbstständigkeitserklärung} + \setlocalecaption{ngerman}{dAPronomen}{\if@oneAuthor ich\else wir\fi} + \setlocalecaption{ngerman}{dAPluralendung}{\if@oneAuthor\else n\fi} + \setlocalecaption{ngerman}{dAGenitiv}{\if@oneAuthor mir\else uns\fi} + \setlocalecaption{ngerman}{dAText}{ + Hiermit bestätige\dAPluralendungname\space\dAPronomenname, dass die folgende Arbeit eigenständig von \dAGenitivname\space allein erstellt + und unter Berücksichtigung der zur Verfügung gestellten Aufgabenstellung sowie dem Arbeitsmaterial unter Angabe aller verwendeten Quellen + erarbeitet wurde. Die Regelungen und Konsequenzen eines Plagiats, inklusive disziplinarischer Maßnahmen, sind \dAGenitivname\space + bewusst. Insbesondere wurden alle Zitate und gedanklichen Übernahmen als solche kenntlich gemacht. + } +\else + \setlocalecaption{english}{dATitle}{Declaration of Authorship} + \setlocalecaption{english}{dAPronomen}{\if@oneAuthor I\else we\fi} + \setlocalecaption{english}{dAPronomenf}{\if@oneAuthor I\else We\fi} + \setlocalecaption{english}{dAPronomverb}{\if@oneAuthor am\else are\fi} + \setlocalecaption{english}{dAGenitiv}{\if@oneAuthor my\else our\fi} + \setlocalecaption{english}{dAText}{ + \dAPronomenfname\space hereby certify that the work \dAPronomenname\space\dAPronomverbname\space submitting is entirely of + \dAGenitivname\space own making except where otherwise indicated. \dAPronomenfname\space\dAPronomverbname\space aware of regulations + concerning plagiarism, including disciplinary actions that may result from it. Any use of the works of any other author, in any form, is + properly acknowledged at their point of use. + } +\fi +\newcommand\declarationAuthorship{ + \renewcommand{\thanks}{\sbox0} + \foreach \x [count=\i] in \@author{\ifnum\i>1\global\@oneAuthorfalse\fi} +% + \thispagestyle{plain} + \vspace*{\fill} + {\rule{\textwidth}{0.1pt}} + \vskip 3em + {\centering\huge\textbf{\dATitlename}\par} + \vskip 3em + {\dATextname\par} +% creating a line for every author + {\raggedleft + \foreach \x in \@author{ + \begin{tabular}[t]{r} + \\[3em] + \rule{4cm}{0.4pt}\\ + {\footnotesize\x} + \end{tabular} + } + \par} +} +%</article|report> +% +%<*article|report> +%% reconfig Titlepage ----------------------------------------------------------------------------- +\newtoks\@tabtoks +\newcommand\addtabtoks[1]{\global\@tabtoks\expandafter{\the\@tabtoks#1}} +\newcommand\eaddtabtoks[1]{\edef\mytmp{#1}\expandafter\addtabtoks\expandafter{\mytmp}} +%\newcommand*\resettabtoks{\global\@tabtoks{}} +\newcommand*\printtabtoks{\the\@tabtoks} +\addtokomafont{publishers}{\normalsize} +% +%<article>\renewcommand\maketitle[1][c]{ +%<report>\renewcommand\maketitle[1][l]{ + \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax + \else + \def\and{% + \end{tabular} + \hskip 1em \@plus.17fil + \begin{tabular}[t]{c}% + } + \fi +%<*article> + \par + \ifx\@uppertitleback\@empty\else + \ClassWarning{\KOMAClassName}{% + non empty \string\uppertitleback\space ignored + by \string\maketitle\MessageBreak + in `titlepage=false' mode% + } + \fi + \ifx\@lowertitleback\@empty\else + \ClassWarning{\KOMAClassName}{% + non empty \string\lowertitleback\space ignored + by \string\maketitle\MessageBreak + in `titlepage=false' mode% + } + \fi +%</article> +%<report> \begin{titlepage} +%<article> \begingroup + \let\@param#1 + \ifx\@param\@empty + \ClassError{\myClassName}{\maketitle\space with empty option}{ + \maketitle[] has been called with an empty parameter, this doesn't work. Use \maketitle instead. + } + \fi +%<*report> + \if@titlepageiscoverpage + \edef\titlepage@restore{ + \noexpand\endgroup + \noexpand\global\noexpand\@colht\the\@colht + \noexpand\global\noexpand\@colroom\the\@colroom + \noexpand\global\vsize\the\vsize + \noexpand\global\noexpand\@titlepageiscoverpagefalse + \noexpand\let\noexpand\titlepage@restore\noexpand\relax + } + \begingroup + \topmargin=\dimexpr \coverpagetopmargin-1in\relax + \oddsidemargin=\dimexpr \coverpageleftmargin-1in\relax + \evensidemargin=\dimexpr \coverpageleftmargin-1in\relax + \textwidth=\dimexpr + \paperwidth-\coverpageleftmargin-\coverpagerightmargin\relax + \textheight=\dimexpr + \paperheight-\coverpagetopmargin-\coverpagebottommargin\relax + \headheight=0pt + \headsep=0pt + \footskip=\baselineskip + \@colht=\textheight + \@colroom=\textheight + \vsize=\textheight + \columnwidth=\textwidth + \hsize=\columnwidth + \linewidth=\hsize + \else + \let\titlepage@restore\relax + \fi + \let\footnotesize\small + \let\footnoterule\relax + \let\footnote\thanks +%</report> +%<article> \let\titlepage@restore\relax + \renewcommand*\thefootnote{\@fnsymbol\c@footnote}% + \let\@oldmakefnmark\@makefnmark + \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}% +%<article> \next@tdpage + \ifx\@extratitle\@empty +%<article> \ifx\@frontispiece\@empty\else \mbox{}\fi +%<*report> + \ifx\@frontispiece\@empty\else + \if@twoside\mbox{}\next@tpage\fi + \noindent\@frontispiece\next@tdpage + \fi +%</report> + \else +%<article> \@makeextratitle +%<*report> + \noindent\@extratitle + \ifx\@frontispiece\@empty + \else + \next@tpage + \noindent\@frontispiece + \fi + \next@tdpage +%</report> + \fi +%<*article> + \ifx\@frontispiece\@empty + \ifx\@extratitle\@empty\else\next@tdpage\fi + \else + \next@tpage + \@makefrontispiece + \next@tdpage + \fi + \global\@topnum=\z@ +%</article> + \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative + \IfFileExists{\HsHlogoPath}{}{ + \ClassError{\myClassName}{HsH-Logo.pdf not found!}{ + The HsH Logo is necasary for the titlepage! Try putting it next to your source file or use \HsHlogoPath to define the file location + } + } + \vspace*{1cm} + \begin{minipage}[t]{\textwidth}% + \ifx\@titlehead\@empty \else + \usekomafont{titlehead}{\@titlehead}% + \fi + \hfill +% image with referrencepoint in lower left corner: + \raisebox{0pt}[\ht\strutbox][\dp\strutbox]{\includeHsHlogohere} + \end{minipage} + \raisebox{10pt}{\rule{\textwidth}{0.5pt}} + \null +%<article> \vskip 2em +%<report> \vfill + \begingroup + \if\@param c\centering\fi + \if\@param r\raggedleft\fi + \ifx\@subject\@empty\else + {\usekomafont{subject}{\@subject\par}} +%<article> \vskip 1.5em +%<report> \vskip 3em + \fi + {\usekomafont{title}{\huge\@title\par}} +%<article> \vskip .5em +%<report> \vskip 1em + {\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi} +%<article|report> \vskip 4em + {\ifx\@matrikelnr\@empty + \if\@author\@empty\else\usekomafont{author}{ + \parbox{\dimexpr\linewidth}{ + \if\@param c\centering\fi + \if\@param r\raggedleft\fi + \@author + } + }\fi + \else + \if\@author\@empty\else + % sneeky comma needed after \@matrikelnr to deal with single item lists + \foreach \x [count=\i,evaluate=\i as \y using {{\@matrikelnr,}[\i-1]}] in \@author {\eaddtabtoks{\x & \y\protect\\}} + \usekomafont{author}{\def\arraystretch{1.2} + \if\@param l\hspace{-6pt}\begin{tabular}{l l}\printtabtoks\end{tabular}\fi + \if\@param c\begin{tabular}{l l}\printtabtoks\end{tabular}\fi + \if\@param r\begin{tabular}{r r}\printtabtoks\end{tabular}\hspace{-6pt}\fi + } + \fi + \fi} +%<article> \vskip 1em +%<report> \vskip 1.5em + {\usekomafont{date}{\@date\par}} +%<article> \vskip 1em +%<report> \vskip \z@ \@plus3fill + {\if\@professor\@empty\else\usekomafont{publishers}{Professor\if@german(in)/Lehrbeauftragte(r)\fi: \@professor}\fi} +%<*article> + \ifx\@dedication\@empty\else + \vskip 2em + {\usekomafont{dedication}{\@dedication \par}}% + \fi +%</article> + \par + \endgroup +%<article> \vskip 2em +%<report> \vskip 3em +%<article> \ifx\titlepagestyle\@empty\else\thispagestyle{\titlepagestyle}\fi + \@thanks\global\let\@thanks\@empty +%<*report> + \vfill\null + \if@twoside + \@tempswatrue + \expandafter\ifnum \@nameuse{scr@v@3.12}>\scr@compatibility\relax + \else + \ifx\@uppertitleback\@empty\ifx\@lowertitleback\@empty + \@tempswafalse + \fi\fi + \fi + \if@tempswa + \next@tpage + \begin{minipage}[t]{\textwidth} + \@uppertitleback + \end{minipage}\par + \vfill + \begin{minipage}[b]{\textwidth} + \@lowertitleback + \end{minipage}\par + \@thanks\global\let\@thanks\@empty + \fi + \else + \ifx\@uppertitleback\@empty\else + \ClassWarning{\KOMAClassName}{% + non empty \string\uppertitleback\space ignored + by \string\maketitle\MessageBreak + in `twoside=false' mode% + } + \fi + \ifx\@lowertitleback\@empty\else + \ClassWarning{\KOMAClassName}{% + non empty \string\lowertitleback\space ignored + by \string\maketitle\MessageBreak + in `twoside=false' mode% + } + \fi + \fi + \ifx\@dedication\@empty + \else + \next@tdpage\null\vfill + {\centering\usekomafont{dedication}{\@dedication \par}}% + \vskip \z@ \@plus3fill + \@thanks\global\let\@thanks\@empty + \cleardoubleemptypage + \fi + \ifx\titlepage@restore\relax\else\clearpage\titlepage@restore\fi +%</report> +%<article> \endgroup +%<report> \end{titlepage} + \setcounter{footnote}{0} + \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax + \let\thanks\relax + \let\maketitle\relax + \let\@maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\@subtitle\@empty + \global\let\@extratitle\@empty + \global\let\@frontispiece\@empty + \global\let\@titlehead\@empty + \global\let\@subject\@empty + \global\let\@publishers\@empty + \global\let\@uppertitleback\@empty + \global\let\@lowertitleback\@empty + \global\let\@dedication\@empty + \global\let\@matrikelnr\@empty + \global\let\@prof\@empty + \global\let\author\relax + \global\let\title\relax + \global\let\extratitle\relax + \global\let\titlehead\relax + \global\let\subject\relax + \global\let\publishers\relax + \global\let\uppertitleback\relax + \global\let\lowertitleback\relax + \global\let\dedication\relax + \global\let\date\relax + \global\let\matrikelnr\relax + \global\let\professor\relax + \fi + \global\let\and\relax +} +%</article|report> +% +% Config file ------------------------------------------------------------------------------------- +%<*config> +%% Meta Data for the PDF file +\@ifpackageloaded{hyperref}{ + \hypersetup{ + pdfinfo={ + Title={\@title}, + Author={\@author}, + Subject={\@subject}, + Keywords={\@keywords} + } + } +} +%% configs for optional packages: +\@ifpackageloaded{biblatex}{ + \ExecuteBibliographyOptions{ + bibwarn=true, + url=true, + isbn=false, + } +}{} +\@ifpackageloaded{siunitx}{ + \if@german + \sisetup{output-decimal-marker={,}} % use comma as dezimal + \fi + \sisetup{ + tight-spacing=true, + per-mode=symbol, + scientific-notation=engineering, + %exponent-to-prefix, % use this instead of sci-notatio + round-mode = places, % round numbers + round-precision = 3, % to 3 places + } +}{} +\@ifpackageloaded{listings}{ + \lstset{ + commentstyle=\color{gray}, + keywordstyle=\color{red}, + stringstyle=\color{blue}, + showstringspaces=false, + basicstyle=\ttfamily, + tabsize=4, + literate={Ö}{{\"O}}1{Ä}{{\"A}}1{Ü}{{\"U}}1{ß}{{\ss}}1{ü}{{\"u}}1{ä}{{\"a}}1{ö}{{\"o}}1, + escapeinside={(*@}{@*)}, + } +}{} +\@ifpackageloaded{enumitem}{ + \newlist{checklist}{itemize}{2} + \setlist[checklist]{label=$\square$} +}{} +\@ifpackageloaded{csvsimple}{ + \csvstyle{every csv}{separator=semicolon} % global seperator for csv files +}{} +\@ifpackageloaded{circuitikz}{ + \ctikzset{ + font=\footnotesize, + bipole annotation style/.style={font=\tiny ,inner sep=1pt}, + } +}{} +\@ifpackageloaded{pgfplots}{ + \usepgfplotslibrary{fillbetween} % mark areas under or between graphs + \usetikzlibrary{patterns} % for using pattern in plots + \if@german + \pgfplotsset{/pgf/number format/use comma} + \fi + \pgfplotsset{ + compat=1.16, + /pgf/number format/read comma as period, + every tick label/.append style={font=\tiny}, + every axis legend/.append style={font=\footnotesize}, + MyPlots/.style = { % Style for all plots + width=.6\textwidth, + grid=major, + grid style={dashed,gray!50}, + legend pos=outer north east, + FM1/.style = {blue, thick, mark=x, mark size=1.5,samples=100}, % Format 1 + FM2/.style = {orange, thick, mark=*, mark size=1,samples=100}, % Format 2 + FM3/.style = {green, thick, mark=square*, mark size=1,samples=100}, % Format 3 + FM4/.style = {red, thick, mark=diamond*, mark size=1,samples=100}, % Format 4 + FM5/.style = {pink, thick, mark=triangel*, mark size=1,samples=100},% Format 5 + errBars/.style = {error bars/.cd, y dir=both, y explicit, % ermöglicht Fehlerbalken + error mark options={mark size=1pt,rotate=90}}, + } + } +}{} +\@ifpackageloaded{pgfplotstable}{ + \pgfplotstableset{ + col sep=semicolon, % global seperator for csv files + } +}{} +%</config> +% +% \Finale +\endinput diff --git a/HsH-classes.ins b/HsH-classes.ins new file mode 100644 index 0000000000000000000000000000000000000000..f4f98f466cc5e0e9bed7f631f4ffe2158315a4f3 --- /dev/null +++ b/HsH-classes.ins @@ -0,0 +1,66 @@ +%% +%% Copyright (C) 2021 by Jan Wille <mail@janwille.de> +%% +%% This file may be distributed and/or modified under the conditions of +%% the LaTeX Project Public License, either version 1.3 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.3 or later is part of all distributions of LaTeX version +%% 2005/12/01 or later. +%% + +\input docstrip.tex +\keepsilent +\askforoverwritefalse + +\preamble + +This is a generated file. + +Copyright (C) 2021 by Jan Wille <mail@janwille.de> + +This file may be distributed and/or modified under the conditions of +the LaTeX Project Public License, either version 1.3 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.3 or later is part of all distributions of LaTeX version +2021/01/01 or later. + +\endpreamble + +%\BaseDirectory{.} \UseTDS + +\usedir{tex/latex/HsH-Classes} +\generate{ + \file{HsH-article.cls}{\from{HsH-classes.dtx}{article}} + \file{HsH-report.cls}{\from{HsH-classes.dtx}{report}} + \file{HsH-standalone.cls}{\from{HsH-classes.dtx}{standalone}} + \nopreamble\nopostamble + \file{config.tex}{\from{HsH-classes.dtx}{config}} +} + +\obeyspaces +\Msg{*************************************************************} +\Msg{* *} +\Msg{* To finish the installation you have to move the following *} +\Msg{* file into a directory searched by TeX: *} +\Msg{* *} +\Msg{* HsH-article.cls *} +\Msg{* HsH-report.cls *} +\Msg{* HsH-standalone.cls *} +\Msg{* config.tex *} +\Msg{* *} +\Msg{* To produce the documentation run the file HsH-classes.dtx *} +\Msg{* through pdfLaTeX. *} +\Msg{* *} +\Msg{* Happy TeXing! *} +\Msg{* *} +\Msg{*************************************************************} + +\endbatchfile diff --git a/Makefile b/Makefile index fff4becc77f4a90667b2be9b257a8febcee421c7..61a8f2a57f968797c76f02e6650642bb21542fa1 100644 --- a/Makefile +++ b/Makefile @@ -1,13 +1,14 @@ # Makefile for Latex project NAME = test -LATEX = pdflatex +LATEX = latex +PDFLATEX = pdflatex BIBTEX = biber # OUTDIR needs to be at least this, can not be empty: OUTDIR = . AUXDIR = .aux IGNORE = src/% -GARBAGE_PATTERNS = *.aux *.bbl *.bib *.bcf *.blg *.idx *.ind *.lof *.lot *.log *.xml *.toc *.synctex(busy) *.synctex.gz(busy) +GARBAGE_PATTERNS = *.aux *.bbl *.bcf *.blg *.idx *.ind *.lof *.lot *.log *.xml *.toc *.synctex(busy) *.synctex.gz(busy) # comment this out to get all outputs: QUIET = -quiet @@ -25,8 +26,11 @@ export TEXINPUTS:=$(CURDIR)\src all: pdf bib - $(LATEX) $(TEX_FLAGS) $(QUIET) $(NAME).tex - $(LATEX) -synctex=1 $(TEX_FLAGS) $(QUIET) $(NAME).tex + $(PDFLATEX) $(TEX_FLAGS) $(QUIET) $(NAME).tex + $(PDFLATEX) -synctex=1 $(TEX_FLAGS) $(QUIET) $(NAME).tex + +src: HsH-Classes.ins HsH-Classes.dtx + $(LATEX) -output-directory=src HsH-Classes.ins pdf: $(SUB_FILES) $(NAME).pdf @@ -35,7 +39,7 @@ bib: $(OUTDIR)/$(AUXDIR)/$(NAME).bcf # generel latex call %.pdf: %.tex - $(LATEX) $(TEX_FLAGS) $(QUIET) $*.tex + $(PDFLATEX) $(TEX_FLAGS) $(QUIET) $*.tex # generell inkscape call %.pdf_tex: %.svg