我想将多个调用分组到\usepackage
一个样式文件中。用户可以选择一个选项,自动将包添加到他们的文档中。
将以下内容归入单个名称下
mathabx MnSymbol fdsymbol boisik stix mathdesign
将这些归入一个名称下
stmaryrd wasysym turnstile trsym trfsigns cmll colonequals fourier
答案1
我将重点回答问题的一般形式,即如何声明一个可以加载多个包的选项。
可能还有其他方法,但我可能会让选项设置布尔变量的值,然后带条件使用该变量,并且仅当变量设置为 true 时才加载包。
这将给你一个粗略的想法:
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{mypackage}[2022/10/03 an example package]
% declare a boolean for "foo", default off
\newif\iffoo
\foofalse
% declare a boolean for "bar", default off
\newif\ifbar
\barfalse
% the options set the booleans to true
\DeclareOption{foo}{\footrue}
\DeclareOption{bar}{\bartrue}
% process the options before checking if the booleans are true
\ProcessOptions
% load several packages if foo is chosen
\iffoo
\RequirePackage{package1}
\RequirePackage{package2}
\RequirePackage{package3}
\RequirePackage{package4}
\fi
% load several packages if bar is chosen
\ifbar
\RequirePackage{package5}
\RequirePackage{package6}
\RequirePackage{package7}
\RequirePackage{package8}
\fi
在文档中与\usepackage[foo]{mypackage}
等一起使用。
这不会像您指定的特定软件包那样工作,因为它们相互冲突,如评论中所述。我怀疑是否有办法一次使用所有这些软件包,而且我不确定您为什么要这样做。不过,这是另一个问题。