scrlayer-scrpage in mehreren Dokumenten verwendet werden kann, ohne seine Definition von einem Dokument ins andere kopieren zu müssenAnwender, die häufig ähnliche Dokumente erstellen, kennen das Problem, dass sie immer wieder dieselben Seitenstil-Definitionen benötigen. Dazu kopieren sie häufig das Laden des Pakets scrlayer-scrpage und dessen Konfiguration von einem Dokument zum nächsten. Nachteil dieser Methode ist, dass im Falle einer generellen Änderung auch die Definitionen in allen Dokumenten geändert werden müsste.
Will man für mehrere Projekte dieselben Seitenstildefinitionen verwenden, so wird daher empfohlen, dafür eine eigene TeX-Datei oder ein Wrapper-Paket mit den gewünschten Definitionen zu erstellen. Diese sollte in einem benutzerspezifischen oder einem lokalen TEXMF-Baum ablegt werden. Dabei ist darauf zu achten, die Verzeichnisstruktur im TEXMF-Baum korrekt aufzubauen.
Beispielsweise könnte bei TeX Live zunächst mit
kpsewhich -var-value=TEXMFHOME
das Wurzelverzeichnis des privaten TEXMF-Baums ermittel werden, dort dann tex/latex/koma-script-contrib (einschließlich aller Eltern) anlegt und in dieses Verzeichnis dann die Datei mypagestyles.tex kopiert werden.
Unter MiKTeX könnte hingegen beispielsweise unter Eigene Dateien die Verzeichnisstruktur texmf\tex\latex\koma-script-contrib anlegt und in das koma-script-contrib-Verzeichnis dann mypagestyles.tex kopiert werden. Anschließend ist die MiKTeX-Console (über das Windows-Start-Menü) zu öffnen und das Verzeichnis Eigene Dateien\texmf als neue TEXMF-Wurzel hinzuzufügen. Bei MiKTeX ist außerdem zu beachten, dass nach dem Hinzufügen weiterer Dateien zu koma-script-contrib die Filename Database mit Hilfe der MiKTeX-Console erneuert werden muss.
Zu näheren Informationen bezüglich der Installation privater oder lokaler Dateien, sei außerdem auf die Anleitung der jeweiligen TeX-Distribution verwiesen.
Die so abgelegte Datei mypagestyles.tex kann dann in jedem Dokument nach dem Laden von scrlayer-scrpage ganz einfach per \input{mypagestyles.tex} geladen werden. Alternativ kann aber auch ein Wrapperpaket erstellt werden, das scrlayer-scrpage lädt und zusätzliche Optionen für die Auswahl des konkreten Seitenstils bereitstellt. Das könnte beispielsweise so aussehen:
% This is an example only!
% Please change the name, if you use it as a template for own packages!
\ProvidesPackage{my-very-nice-scrlayer-scrpage-extension.sty}[2021-06-18 v0.1 using scrlayer-scrpage with predefined page style]
\newcommand*{\myverynice@pagestyle}{}
\DeclareOption{default}{%
\renewcommand*{\myverynice@pagestyle}{\ifoot*{}}%
}
\DeclareOption{draftnote}{%
\renewcommand*{\myverynice@pagestyle}{%
\ifoot*{Draft: \@date}%
}%
}
\DeclareOption{internal}{%
\renewcommand*{\myverynice@pagestyle}{%
\RequirePackage{xcolor}%
\ifoot*{\textcolor{red}{For internal use only!}}%
}%
}
\DeclareOption*{\expandafter\PassOptionsToPackage\expandafter{\CurrentOption}{scrlayer-scrpage}}
\ProcessOptions*
\RequirePackage{scrlayer-scrpage}
\myverynice@pagestyle
\endinput
Das Paket my-very-nice-scrlayer-scrpage-extension würde also die Optionen default, draftnote und internal bereitstellen, über die gesteuert werden kann, dass zusätzliche Informationen im Fuß der Seite angezeigt werden können. Alle anderen Optionen werden an das Paket scrlayer-scrpage weitergereicht.
Nun ist dieselbe Verzeichnisstruktur zu erstellen, wie bereits oben für mypagestyle.tex erklärt. Das neue Paket wird dann als my-very-nice-scrlayer-scrpage-extension.sty nach koma-script-contrib kopiert. Bei MiKTeX die Erneuerung der Filename Database nicht vergessen!
Ab jetzt kann das Paket wie jedes andere Paket verwendet werden. Es lädt automatisch scrlayer-scrpage und bei Bedarf auch xcolor und stellt den Seitenstil entsprechend der gewählten Optionen ein. Ohne Option ändert es nichts an den Einstellungen von scrlayer-scrpage. Soll aber beispielsweise immer Option automark ausgeführt werden, so wäre in my-very-nice-scrlayer-scrpage-extension.sty die Zeile
\RequirePackage{scrlayer-scrpage}
in
\RequirePackage[automark]{scrlayer-scrpage}
zu ändern.