我正在制作一个序言包,并且我想提供 bibfiles 作为选项:
序言.sty:
\RequirePackage{biblatex}
\DeclareOption*{
\addbibresource{\CurrentOption}
\PackageInfo{preamble}{\CurrentOption added as bibfile}
}
\ProcessOptions\relax
主要.tex:
\usepackage[refs.bib]{preamble}
当我\CurrentOption
在 inside使用时\addbibresource
,其内容似乎消失了,并且我收到“BibTeX 未定义数据源!”警告。但是,我可以在中使用它,\PackageInfo
并且“refs.bib 添加为 bibfile”按预期打印。
据我了解,\CurrentOption
只能在包特定的命令(例如\PackageInfo
或\PassOptionsToPackage
)中使用,而不能在其他地方使用。
我说得对吗?如果是,我该如何解决这个问题?
答案1
这种奇怪的行为似乎在standalone
之后加载包时消失了\addbibresource
。我不知道为什么,但我的问题解决了。