
Как можно проанализировать (т.е. получить доступ) весь список параметров, заданный для текущего класса документа, с помощью l3keys
?
Для этого, очевидно, потребуется что-то вроде
\keys_define:nn { document-class-?? }
{
default .code:n { \PassOptionToClass { \l_keys_key_tl } { article } }
}
но я не знаю, где искать список опций класса документа, чтобы передать его \keys_set:nn
.
решение1
Модули l3keys
обеспечивают обработку keyval общего назначения для expl3
кода. Однако они не взаимодействуют с системой опций пакетов или классов LaTeX2e. Для этого вам необходимо загрузить дополнительный код, который доступен в пакете l3keys2e
. Это обеспечивает \ProcessKeysOptions
команду для разбора опций класса/пакета и их обработки с использованием keyvals, определенных в l3keys
.
Причина такого разделения заключается в том, что l3keys
он предназначен для формирования части ядра LaTeX3, в то время как l3keys2e
привязан к модели LaTeX2e для обработки параметров. Кажется крайне вероятным, что автономное ядро LaTeX3 будет использовать параметры keyval «по умолчанию», но с другой базовой реализацией.