LaTeX3、l3keys:结合 .choice 和 .default

LaTeX3、l3keys:结合 .choice 和 .default

使用 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}

这将打印

在此处输入图片描述

相关内容