我正在寻找一种能够轻松定义和评估附加全局文档选项的方法。
现在我正在使用
\documentclass[12pt,ngerman]{scrartcl}
作为我的文档的第一行,我想添加更多变量,例如board
或management
稍后使用类似\ifoption{management}{then text}{else text}
我找到了Heiko Oberdiek 编写的包,它实现了和选项ifdraft
所需的行为,并且能够调整变量:draft
final
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}
有没有办法概括这一点?例如,只需定义一个命令\newglobal{state}
并将其余部分封装在一个包中?