Something about l3key2e TeX

关于default与initial的区别

请看如下一段代码:

1
2
3
4
5
6
7
\keys_define:nn {mymodule}{
keya .code:n = {Enter~ keya},
keya .initial:n = {value-a},
keyb .code:N = {Enter~ keyb},
keyb .default:n = {value-b},
}
\keys_set:nn {mymodule}{keyb}

在上述的例子中一个是.initial:n, 一个是 .default:n, 都表示设置其默认值。但是在命令\keys_set:nn中如果没有出现keyb,不管这个keyb有没有赋值,对应的.default语句都不会执行。但是和.default不同的是,.initial不管有没有输入对应的keya,对应的.initial 语句均会执行.

meta-元键

其实就是你传入的参数,比如{keya=valuea, keyb=valueb} 解释为键值对,然后再提取value给对应的key进行赋值. 详细的说明请参见下图:

meta-key


Something about l3key2e TeX
https://zongpingding.github.io/2024/05/29/l3keyval/
Author
Eureka
Posted on
May 29, 2024
Licensed under