von Johannes_B » So 5. Okt 2014, 14:25
Minimale Vorlage vs. maximale Probleme
Du musst das Initialisieren, lesen, auswerten trennen. Das geht auf verschiedene Art und Weise. Und genau bei der Reihenfolge des Ladens kannst du bei LaTeX schnell Probleme bekommen. Leider ist die Ladereihenfolge wichtig, hyperref sollte beispielsweise (fast immer) zuletzt geladen werden.
\begin{filecontents}{\jobname.cfg}
%\booltrue{arial}
%\arialtrue
\booltrue{coloredsections}
\end{filecontents}
\begin{filecontents}{\jobname.sty}
\ProvidesPackage{\jobname.sty}[2014/10/04 v1.0 Paket fuer Vorlage]
\ProcessOptions\relax
\RequirePackage{etoolbox}
\RequirePackage[T1]{fontenc}
\RequirePackage{lmodern}
\RequirePackage[ngerman]{babel}
\RequirePackage{babel}%<--------
\RequirePackage{blindtext}
\PassOptionsToPackage{xcolor}{x11names}
\RequirePackage{xcolor}
%\RequirePackage[x11names]{xcolor}
\colorlet{dispostioncolor}{blue}
\newbool{arial}
%und andere bools
\newbool{coloredsections}
\AtEndPreamble{\ifbool{coloredsections}{
\addtokomafont{disposition}{\color{dispostioncolor}}}{}
}
\InputIfFileExists{\jobname.cfg}{\typeout{Processing
config}}{\typeout{Seems not config is needed, using defaults}}
\ifbool{arial}{
\RequirePackage{tgheros}
\renewcommand*\familydefault{\sfdefault}
}{\typeout{gute entscheidung}}
\endinput
\end{filecontents}
\documentclass[oneside,fontsize=12pt,
english%HÄH? ich hab doch aber english eingestellt?
]{scrreprt}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},germandbls={ß}}
\usepackage{\jobname}
%\usepackage[table]{xcolor}
\begin{document}
\tableofcontents
\blinddocument
\end{document}
Wird hier beispielsweise keine Farbe gebraucht, warum dann das Paket überhaupt laden? Oder braucht der Nutzer vielleicht sogar farbige Tabellen? Dann lädt er xcolor mit der Option table und Bämm, optionclash.
Manche Optionen könnten sich auch logisch ausschließen, oder andere Optionen setzen.
Sei also auf der Hut.
Oder mit anderen Worten, hat der Nutzer die Wahl zwischen Apfel und Birne, dann fang auch ab wenn der Kaffee will.
»Sorry, coffee not available, for valent options type h«
[url=http://www.komascript.de/node/1691]Minimale Vorlage vs. maximale Probleme[/url]
Du musst das Initialisieren, lesen, auswerten trennen. Das geht auf verschiedene Art und Weise. Und genau bei der Reihenfolge des Ladens kannst du bei LaTeX schnell Probleme bekommen. Leider ist die Ladereihenfolge wichtig, hyperref sollte beispielsweise (fast immer) zuletzt geladen werden.
[code]
\begin{filecontents}{\jobname.cfg}
%\booltrue{arial}
%\arialtrue
\booltrue{coloredsections}
\end{filecontents}
\begin{filecontents}{\jobname.sty}
\ProvidesPackage{\jobname.sty}[2014/10/04 v1.0 Paket fuer Vorlage]
\ProcessOptions\relax
\RequirePackage{etoolbox}
\RequirePackage[T1]{fontenc}
\RequirePackage{lmodern}
\RequirePackage[ngerman]{babel}
\RequirePackage{babel}%<--------
\RequirePackage{blindtext}
\PassOptionsToPackage{xcolor}{x11names}
\RequirePackage{xcolor}
%\RequirePackage[x11names]{xcolor}
\colorlet{dispostioncolor}{blue}
\newbool{arial}
%und andere bools
\newbool{coloredsections}
\AtEndPreamble{\ifbool{coloredsections}{
\addtokomafont{disposition}{\color{dispostioncolor}}}{}
}
\InputIfFileExists{\jobname.cfg}{\typeout{Processing
config}}{\typeout{Seems not config is needed, using defaults}}
\ifbool{arial}{
\RequirePackage{tgheros}
\renewcommand*\familydefault{\sfdefault}
}{\typeout{gute entscheidung}}
\endinput
\end{filecontents}
\documentclass[oneside,fontsize=12pt,
english%HÄH? ich hab doch aber english eingestellt?
]{scrreprt}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},germandbls={ß}}
\usepackage{\jobname}
%\usepackage[table]{xcolor}
\begin{document}
\tableofcontents
\blinddocument
\end{document}
[/code]
Wird hier beispielsweise keine Farbe gebraucht, warum dann das Paket überhaupt laden? Oder braucht der Nutzer vielleicht sogar farbige Tabellen? Dann lädt er xcolor mit der Option table und Bämm, optionclash.
Manche Optionen könnten sich auch logisch ausschließen, oder andere Optionen setzen.
Sei also auf der Hut.
Oder mit anderen Worten, hat der Nutzer die Wahl zwischen Apfel und Birne, dann fang auch ab wenn der Kaffee will.
»Sorry, coffee not available, for valent options type h«