使用l3keys
,是否有任何方法可以检查当前 (子) 模块中的键?我正在寻找类似 的东西\clist_show
,但用于键。
\keys_show
听起来很有希望,但要求您已经知道已经创建的密钥:\keys_show:nn {<module>} {<key>}
。
我的理想情况是:
\keys_show:n {module}
There are 4 keys in the key module 'module' (without outer braces):
> {this} tl
> {is} tl
> {a} tl
> {test} bool
答案1
正如布鲁诺所说评论,这里的情况与想要列出所有定义的宏完全相同。实际上,l3keys
和其他 keyval 包中的关键定义都只是“适当”位置的宏名称。TeX 没有为我们提供查询已定义宏列表的途径,以查找“所有匹配某些通配符方案的宏”,因此使用此类命令的唯一方法是“手动”执行。目前,情况并非如此l3keys
。当然可以想象这样做,但如果没有明确的用例,它可能会增加代码的复杂性而没有任何普遍的好处。