Estou procurando uma maneira de definir e avaliar facilmente opções adicionais de documentos globais.
No momento estou usando
\documentclass[12pt,ngerman]{scrartcl}
como a primeira linha dos meus documentos, gostaria de adicionar mais variáveis, por exemplo board
ou management
e mais tarde usar opções como\ifoption{management}{then text}{else text}
Encontrei o ifdraft
pacote de Heiko Oberdiek que implementa o comportamento desejado draft
e final
as opções e foi capaz de ajustá-lo para a variável state
:
\documentclass[state]{article}
\makeatletter
\newif\if@state
\newif\if@option@state
\DeclareOption{state}{%
\@statetrue
\@option@statetrue
}
\ProcessOptions*\relax
\newcommand*{\ifstate}{%
\if@state
\expandafter\@firstoftwo
\else
\expandafter\@secondoftwo
\fi
}
\makeatother
\begin{document}
\ifstate{State was set}{State was not set}
\end{document}
Existe uma maneira de generalizar isso? Por exemplo, simplesmente definindo um comando \newglobal{state}
e encapsulando o restante em um pacote?