![我无法在非特定于包的命令中使用 \CurrentOption](https://linux22.com/image/394643/%E6%88%91%E6%97%A0%E6%B3%95%E5%9C%A8%E9%9D%9E%E7%89%B9%E5%AE%9A%E4%BA%8E%E5%8C%85%E7%9A%84%E5%91%BD%E4%BB%A4%E4%B8%AD%E4%BD%BF%E7%94%A8%20%5CCurrentOption%20.png)
我正在制作一个序言包,并且我想提供 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
。我不知道为什么,但我的问题解决了。