使用 LaTeX3 和l3keys
(包含在 中expl3
),有没有办法选择包含默认值(或者空选项)?
\documentclass{minimal}
\usepackage{expl3}
\begin{document}
\ExplSyntaxOn
\keys_define:nn {test}
{
font .choice:,
font / sf .code:n = {},
font .default:n = {},
}
\keys_set:nn { test } { font= } % ERROR
\end{document}
答案1
此.default:n
部分用于=
在键后面无内容时提供值。
当然,如果您愿意,您可以定义一个空的选择,并将其指定为默认值。
\documentclass{minimal}
\usepackage{expl3}
\begin{document}
\ExplSyntaxOn
\keys_define:nn {test}
{
font .choice:,
font / sf .code:n = {sf},
font / bf .code:n = {bf},
font / .code:n = {empty},
font .default:n = {},
}
\keys_set:nn { test } { font }
\par
\keys_set:nn { test } { font= }
\par
\keys_set:nn { test } { font=bf }
\end{document}
这将打印