Schicker Seitenstil in \DeclareOption

Schicker Seitenstil in \DeclareOption

In meiner Klasse möchte ich das Seitenlayout zuerst während einer Deklaration definieren \DeclareOptionund dann während einer Deklaration ändern \newenvironment. Dafür wollte ich das fancyhdrPaket verwenden. Jetzt ist mein Problem, dass ich a) die Pakete danach laden muss \ProcessOptionsund b) ich nicht weiß, wie ich die Seiteneigenschaften in der \newenvironmentUmgebung im laufenden Betrieb ändern oder erweitern kann. Was ich grundsätzlich will (Pseudocode):

\DeclareOption{test}{%
    \fancypagestyle{aSix}{%
    }
} 
\ProcessOptions
\newenvironment{test2}{%
\fancypagestyle{aSix2}{
%Takes the pagestyle aSix and update it with additional values}

Wie kann ich das machen?

Antwort1

Ich schlage vor, einen anderen Ansatz mit einem zu verwenden und dies conditionalbeispielsweise auf mit festzulegen , wenn die Klassenoption verwendet wird.\ifaSixtrue\aSixtrue

Rudimentäre Klasse

\ProvidesClass{ishouldgivemoreinformation}

\newif\ifaSix
\DeclareOption{aSix}{\global\aSixtrue}


\ProcessOptions

\LoadClass{article}

\RequirePackage{fancyhdr}

\fancypagestyle{aSix}{%
  \fancyhead[C]{Foo}
  \renewcommand{\headrulewidth}{5pt}
}

\ifaSix
\fancypagestyle{aSix2}{%
  \pagestyle{aSix}%
  \fancyfoot[c]{Foobar}%
  % Some updates here
}
\else
\fancypagestyle{aSix2}{%
  \pagestyle{aSix}%
}
\fi

\endinput

driver.tex

\documentclass[aSix]{ishouldgivemoreinformation}


\pagestyle{aSix2}
\begin{document}
FOO
\end{document}

verwandte Informationen