diff options
author | Norbert Preining <norbert@preining.info> | 2023-05-23 03:00:46 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2023-05-23 03:00:46 +0000 |
commit | d470efdd8b7b603d5d048f896fa1dce095a3e245 (patch) | |
tree | 9ef898fa049e63d1e6afe68840871c19ca41df08 /macros/latex/contrib/l3kernel/l3keys.dtx | |
parent | aaab1b0cf810d8f8df45d972eb51da24a0114047 (diff) |
CTAN sync 202305230300
Diffstat (limited to 'macros/latex/contrib/l3kernel/l3keys.dtx')
-rw-r--r-- | macros/latex/contrib/l3kernel/l3keys.dtx | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/macros/latex/contrib/l3kernel/l3keys.dtx b/macros/latex/contrib/l3kernel/l3keys.dtx index 64a301d906..84d5bc1d96 100644 --- a/macros/latex/contrib/l3kernel/l3keys.dtx +++ b/macros/latex/contrib/l3kernel/l3keys.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2023-05-15} +% \date{Released 2023-05-22} % % \maketitle % @@ -1888,7 +1888,7 @@ \@@_cmd_set_direct:nn { \l_keys_path_str / unknown } { \msg_error:nnx { keys } { boolean-values-only } - \l_keys_key_str + \l_keys_path_str } \@@_default_set:n { true } } @@ -2063,6 +2063,8 @@ % % \begin{macro}{\@@_initialise:n} % A set up for initialisation: just run the code if it exists. +% We need to set the key string here, using the deprecated \texttt{tl} +% as a piece of scratch space. % \begin{macrocode} \cs_new_protected:Npn \@@_initialise:n #1 { @@ -2072,7 +2074,13 @@ { \str_clear:N \l_@@_inherit_str \cs_if_exist:cT { \c_@@_code_root_str \l_keys_path_str } - { \@@_execute:nn \l_keys_path_str {#1} } + { + \exp_after:wN \@@_find_key_module:wNN + \l_keys_path_str \s_@@_stop + \l_keys_key_tl \l_keys_key_str + \tl_set_eq:NN \l_keys_key_tl \l_keys_key_str + \@@_execute:nn \l_keys_path_str {#1} + } } } % \end{macrocode} @@ -2097,7 +2105,7 @@ \@@_cmd_set:nn { \l_keys_path_str / unknown } { \msg_error:nnx { keys } { boolean-values-only } - \l_keys_key_str + \l_keys_path_str } \@@_default_set:n { true } \cs_if_exist:cF { if#1 } @@ -2112,20 +2120,22 @@ % % \begin{macro}{\@@_meta_make:n} % \begin{macro}{\@@_meta_make:nn} -% To create a meta-key, simply set up to pass data through. +% To create a meta-key, simply set up to pass data through. The internal +% function is used here as a meta key should respect the prevailing +% filtering, etc. % \begin{macrocode} \cs_new_protected:Npn \@@_meta_make:n #1 { \exp_args:NVo \@@_cmd_set_direct:nn \l_keys_path_str { - \exp_after:wN \keys_set:nn \exp_after:wN + \exp_after:wN \@@_set:nn \exp_after:wN { \l_@@_module_str } {#1} } } \cs_new_protected:Npn \@@_meta_make:nn #1#2 { \exp_args:NV \@@_cmd_set_direct:nn - \l_keys_path_str { \keys_set:nn {#1} {#2} } + \l_keys_path_str { \@@_set:nn {#1} {#2} } } % \end{macrocode} % \end{macro} |