该hyperref
包(例如)提供了一个\hypersetup
命令,其中可以提供键值选项作为替代\usepackage[key=value]{hyperref}
。
我正在尝试使用 做同样的事情kvoptions
,但它似乎对我来说不起作用。
据我所知,在我的.sty
档案中我应该能够说
\RequirePackage[patch]{kvoptions}
\newcommand*{\Xsetup}[1]{\setkeys{X}{#1}}
\SetupKeyvalOptions{family=X, prefix=X@}
\DeclareStringOption[default]{key}
\ProcessLocalKeyvalOptions*
然后在我的.tex
文件中说\Xsetup{key=value}
。这将在文件\X@key
内提供宏.sty
。
不幸的是,当我这样做时,\X@key
设置为default
而不是。value
平均能量损失
kvtest.tex
\documentclass{article}
\usepackage{kvtest}
\Xsetup{key=value}
\begin{document}
hi
\end{document}
kvtest.sty
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{kvtest}[2018/05/17]
\RequirePackage[patch]{kvoptions}
\newcommand*{\Xsetup}[1]{\setkeys{X}{#1}}
\SetupKeyvalOptions{family=X, prefix=X@}
\DeclareStringOption[default]{key}
\ProcessLocalKeyvalOptions*
\show\X@key