diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/l3kernel/l3token.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/l3kernel/l3token.dtx | 202 |
1 files changed, 107 insertions, 95 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx index a3737fd0c74..2dcccabbb4e 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx @@ -35,7 +35,7 @@ % %<*driver|package> \RequirePackage{l3names} -\GetIdInfo$Id: l3token.dtx 2931 2011-10-22 13:48:28Z bruno $ +\GetIdInfo$Id: l3token.dtx 3099 2011-12-27 21:41:02Z joseph $ {L3 Experimental token manipulation} %</driver|package> %<*driver> @@ -910,44 +910,56 @@ % % \section{Experimental token functions} % -% \begin{function}{\char_active_set:Npn, \char_active_set:Npx} +% \begin{function}[added = 2011-12-27] +% {\char_set_active:Npn, \char_set_active:Npx} % \begin{syntax} -% \cs{char_active_set:Npn} \meta{char} \meta{parameters} \Arg{code} +% \cs{char_set_active:Npn} \meta{char} \meta{parameters} \Arg{code} % \end{syntax} % Makes \meta{char} an active character to expand to \meta{code} as % replacement text. % Within the \meta{code}, the \meta{parameters} (|#1|, |#2|, -% \emph{etc.}) will be replaced by those absorbed -% This definition is local to the current \TeX{} group. +% \emph{etc.}) will be replaced by those absorbed. The \meta{char} is +% made active within the current \TeX{} group level, and the definition +% is also local. % \end{function} -% -% \begin{function}{\char_active_gset:Npn, \char_active_gset:Npx} +% +% \begin{function}[added = 2011-12-27] +% {\char_gset_active:Npn, \char_gset_active:Npx} % \begin{syntax} -% \cs{char_active_gset:Npn} \meta{char} \meta{parameters} \Arg{code} +% \cs{char_gset_active:Npn} \meta{char} \meta{parameters} \Arg{code} % \end{syntax} % Makes \meta{char} an active character to expand to \meta{code} as % replacement text. % Within the \meta{code}, the \meta{parameters} (|#1|, |#2|, -% \emph{etc.}) will be replaced by those absorbed -% This definition is global. +% \emph{etc.}) will be replaced by those absorbed. The \meta{char} is +% made active within the current \TeX{} group level, but the definition +% is global. This function is therefore suited to cases where an active +% character definition should be applied only in some context (where the +% \meta{char} is again made active). % \end{function} % -% \begin{function}{\char_active_set_eq:NN} +% \begin{function}[added = 2011-12-27] +% {\char_set_active_eq:NN} % \begin{syntax} -% \cs{char_active_set_eq:NN} \meta{char} \meta{function} +% \cs{char_set_active_eq:NN} \meta{char} \meta{function} % \end{syntax} % Makes \meta{char} an active character equivalent in meaning to the -% \meta{fiucntion} (which may itself be an active character). This -% definition is local to the current \TeX{} group. +% \meta{function} (which may itself be an active character). The \meta{char} +% is made active within the current \TeX{} group level, and the definition +% is also local. % \end{function} -% -% \begin{function}{\char_active_gset_eq:NN} +% +% \begin{function}[added = 2011-12-27] +% {\char_gset_active_eq:NN} % \begin{syntax} -% \cs{char_active_gset_eq:NN} \meta{char} \meta{function} +% \cs{char_gset_active_eq:NN} \meta{char} \meta{function} % \end{syntax} % Makes \meta{char} an active character equivalent in meaning to the -% \meta{fiucntion} (which may itself be an active character). This -% definition is global. +% \meta{function} (which may itself be an active character). The \meta{char} +% is made active within the current \TeX{} group level, but the definition +% is global. This function is therefore suited to cases where an active +% character definition should be applied only in some context (where the +% \meta{char} is again made active). % \end{function} % % \begin{function}[added = 2011-08-14,TF]{\peek_N_type:} @@ -994,11 +1006,11 @@ % \begin{macro}{\char_show_value_catcode:n} % Category code changes. % \begin{macrocode} -\cs_new_protected_nopar:Npn \char_set_catcode:nn #1#2 +\cs_new_protected:Npn \char_set_catcode:nn #1#2 { \tex_catcode:D #1 = \int_eval:w #2 \int_eval_end: } -\cs_new_nopar:Npn \char_value_catcode:n #1 +\cs_new:Npn \char_value_catcode:n #1 { \tex_the:D \tex_catcode:D \int_eval:w #1\int_eval_end: } -\cs_new_nopar:Npn \char_show_value_catcode:n #1 +\cs_new_protected:Npn \char_show_value_catcode:n #1 { \tex_showthe:D \tex_catcode:D \int_eval:w #1 \int_eval_end: } % \end{macrocode} % \end{macro} @@ -1025,37 +1037,37 @@ % \char_set_catcode_invalid:N % } % \begin{macrocode} -\cs_new_protected_nopar:Npn \char_set_catcode_escape:N #1 +\cs_new_protected:Npn \char_set_catcode_escape:N #1 { \char_set_catcode:nn { `#1 } \c_zero } -\cs_new_protected_nopar:Npn \char_set_catcode_group_begin:N #1 +\cs_new_protected:Npn \char_set_catcode_group_begin:N #1 { \char_set_catcode:nn { `#1 } \c_one } -\cs_new_protected_nopar:Npn \char_set_catcode_group_end:N #1 +\cs_new_protected:Npn \char_set_catcode_group_end:N #1 { \char_set_catcode:nn { `#1 } \c_two } -\cs_new_protected_nopar:Npn \char_set_catcode_math_toggle:N #1 +\cs_new_protected:Npn \char_set_catcode_math_toggle:N #1 { \char_set_catcode:nn { `#1 } \c_three } -\cs_new_protected_nopar:Npn \char_set_catcode_alignment:N #1 +\cs_new_protected:Npn \char_set_catcode_alignment:N #1 { \char_set_catcode:nn { `#1 } \c_four } -\cs_new_protected_nopar:Npn \char_set_catcode_end_line:N #1 +\cs_new_protected:Npn \char_set_catcode_end_line:N #1 { \char_set_catcode:nn { `#1 } \c_five } -\cs_new_protected_nopar:Npn \char_set_catcode_parameter:N #1 +\cs_new_protected:Npn \char_set_catcode_parameter:N #1 { \char_set_catcode:nn { `#1 } \c_six } -\cs_new_protected_nopar:Npn \char_set_catcode_math_superscript:N #1 +\cs_new_protected:Npn \char_set_catcode_math_superscript:N #1 { \char_set_catcode:nn { `#1 } \c_seven } -\cs_new_protected_nopar:Npn \char_set_catcode_math_subscript:N #1 +\cs_new_protected:Npn \char_set_catcode_math_subscript:N #1 { \char_set_catcode:nn { `#1 } \c_eight } -\cs_new_protected_nopar:Npn \char_set_catcode_ignore:N #1 +\cs_new_protected:Npn \char_set_catcode_ignore:N #1 { \char_set_catcode:nn { `#1 } \c_nine } -\cs_new_protected_nopar:Npn \char_set_catcode_space:N #1 +\cs_new_protected:Npn \char_set_catcode_space:N #1 { \char_set_catcode:nn { `#1 } \c_ten } -\cs_new_protected_nopar:Npn \char_set_catcode_letter:N #1 +\cs_new_protected:Npn \char_set_catcode_letter:N #1 { \char_set_catcode:nn { `#1 } \c_eleven } -\cs_new_protected_nopar:Npn \char_set_catcode_other:N #1 +\cs_new_protected:Npn \char_set_catcode_other:N #1 { \char_set_catcode:nn { `#1 } \c_twelve } -\cs_new_protected_nopar:Npn \char_set_catcode_active:N #1 +\cs_new_protected:Npn \char_set_catcode_active:N #1 { \char_set_catcode:nn { `#1 } \c_thirteen } -\cs_new_protected_nopar:Npn \char_set_catcode_comment:N #1 +\cs_new_protected:Npn \char_set_catcode_comment:N #1 { \char_set_catcode:nn { `#1 } \c_fourteen } -\cs_new_protected_nopar:Npn \char_set_catcode_invalid:N #1 +\cs_new_protected:Npn \char_set_catcode_invalid:N #1 { \char_set_catcode:nn { `#1 } \c_fifteen } % \end{macrocode} % \end{macro} @@ -1080,37 +1092,37 @@ % \char_set_catcode_invalid:n % } % \begin{macrocode} -\cs_new_protected_nopar:Npn \char_set_catcode_escape:n #1 +\cs_new_protected:Npn \char_set_catcode_escape:n #1 { \char_set_catcode:nn {#1} \c_zero } -\cs_new_protected_nopar:Npn \char_set_catcode_group_begin:n #1 +\cs_new_protected:Npn \char_set_catcode_group_begin:n #1 { \char_set_catcode:nn {#1} \c_one } -\cs_new_protected_nopar:Npn \char_set_catcode_group_end:n #1 +\cs_new_protected:Npn \char_set_catcode_group_end:n #1 { \char_set_catcode:nn {#1} \c_two } -\cs_new_protected_nopar:Npn \char_set_catcode_math_toggle:n #1 +\cs_new_protected:Npn \char_set_catcode_math_toggle:n #1 { \char_set_catcode:nn {#1} \c_three } -\cs_new_protected_nopar:Npn \char_set_catcode_alignment:n #1 +\cs_new_protected:Npn \char_set_catcode_alignment:n #1 { \char_set_catcode:nn {#1} \c_four } -\cs_new_protected_nopar:Npn \char_set_catcode_end_line:n #1 +\cs_new_protected:Npn \char_set_catcode_end_line:n #1 { \char_set_catcode:nn {#1} \c_five } -\cs_new_protected_nopar:Npn \char_set_catcode_parameter:n #1 +\cs_new_protected:Npn \char_set_catcode_parameter:n #1 { \char_set_catcode:nn {#1} \c_six } -\cs_new_protected_nopar:Npn \char_set_catcode_math_superscript:n #1 +\cs_new_protected:Npn \char_set_catcode_math_superscript:n #1 { \char_set_catcode:nn {#1} \c_seven } -\cs_new_protected_nopar:Npn \char_set_catcode_math_subscript:n #1 +\cs_new_protected:Npn \char_set_catcode_math_subscript:n #1 { \char_set_catcode:nn {#1} \c_eight } -\cs_new_protected_nopar:Npn \char_set_catcode_ignore:n #1 +\cs_new_protected:Npn \char_set_catcode_ignore:n #1 { \char_set_catcode:nn {#1} \c_nine } -\cs_new_protected_nopar:Npn \char_set_catcode_space:n #1 +\cs_new_protected:Npn \char_set_catcode_space:n #1 { \char_set_catcode:nn {#1} \c_ten } -\cs_new_protected_nopar:Npn \char_set_catcode_letter:n #1 +\cs_new_protected:Npn \char_set_catcode_letter:n #1 { \char_set_catcode:nn {#1} \c_eleven } -\cs_new_protected_nopar:Npn \char_set_catcode_other:n #1 +\cs_new_protected:Npn \char_set_catcode_other:n #1 { \char_set_catcode:nn {#1} \c_twelve } -\cs_new_protected_nopar:Npn \char_set_catcode_active:n #1 +\cs_new_protected:Npn \char_set_catcode_active:n #1 { \char_set_catcode:nn {#1} \c_thirteen } -\cs_new_protected_nopar:Npn \char_set_catcode_comment:n #1 +\cs_new_protected:Npn \char_set_catcode_comment:n #1 { \char_set_catcode:nn {#1} \c_fourteen } -\cs_new_protected_nopar:Npn \char_set_catcode_invalid:n #1 +\cs_new_protected:Npn \char_set_catcode_invalid:n #1 { \char_set_catcode:nn {#1} \c_fifteen } % \end{macrocode} % \end{macro} @@ -1129,29 +1141,29 @@ % \begin{macro}{\char_show_value_sfcode:n} % Pretty repetitive, but necessary! % \begin{macrocode} -\cs_new_protected_nopar:Npn \char_set_mathcode:nn #1#2 +\cs_new_protected:Npn \char_set_mathcode:nn #1#2 { \tex_mathcode:D #1 = \int_eval:w #2 \int_eval_end: } -\cs_new_nopar:Npn \char_value_mathcode:n #1 +\cs_new:Npn \char_value_mathcode:n #1 { \tex_the:D \tex_mathcode:D \int_eval:w #1\int_eval_end: } -\cs_new_nopar:Npn \char_show_value_mathcode:n #1 +\cs_new_protected:Npn \char_show_value_mathcode:n #1 { \tex_showthe:D \tex_mathcode:D \int_eval:w #1 \int_eval_end: } -\cs_new_protected_nopar:Npn \char_set_lccode:nn #1#2 +\cs_new_protected:Npn \char_set_lccode:nn #1#2 { \tex_lccode:D #1 = \int_eval:w #2 \int_eval_end: } -\cs_new_nopar:Npn \char_value_lccode:n #1 +\cs_new:Npn \char_value_lccode:n #1 { \tex_the:D \tex_lccode:D \int_eval:w #1\int_eval_end: } -\cs_new_nopar:Npn \char_show_value_lccode:n #1 +\cs_new_protected:Npn \char_show_value_lccode:n #1 { \tex_showthe:D \tex_lccode:D \int_eval:w #1 \int_eval_end: } -\cs_new_protected_nopar:Npn \char_set_uccode:nn #1#2 +\cs_new_protected:Npn \char_set_uccode:nn #1#2 { \tex_uccode:D #1 = \int_eval:w #2 \int_eval_end: } -\cs_new_nopar:Npn \char_value_uccode:n #1 +\cs_new:Npn \char_value_uccode:n #1 { \tex_the:D \tex_uccode:D \int_eval:w #1\int_eval_end: } -\cs_new_nopar:Npn \char_show_value_uccode:n #1 +\cs_new_protected:Npn \char_show_value_uccode:n #1 { \tex_showthe:D \tex_uccode:D \int_eval:w #1 \int_eval_end: } -\cs_new_protected_nopar:Npn \char_set_sfcode:nn #1#2 +\cs_new_protected:Npn \char_set_sfcode:nn #1#2 { \tex_sfcode:D #1 = \int_eval:w #2 \int_eval_end: } -\cs_new_nopar:Npn \char_value_sfcode:n #1 +\cs_new:Npn \char_value_sfcode:n #1 { \tex_the:D \tex_sfcode:D \int_eval:w #1\int_eval_end: } -\cs_new_nopar:Npn \char_show_value_sfcode:n #1 +\cs_new_protected:Npn \char_show_value_sfcode:n #1 { \tex_showthe:D \tex_sfcode:D \int_eval:w #1 \int_eval_end: } % \end{macrocode} % \end{macro} @@ -1172,7 +1184,7 @@ % \begin{macro}{\token_new:Nn} % Creates a new token. % \begin{macrocode} -\cs_new_protected_nopar:Npn \token_new:Nn #1#2 { \cs_new_eq:NN #1 #2 } +\cs_new_protected:Npn \token_new:Nn #1#2 { \cs_new_eq:NN #1 #2 } % \end{macrocode} % \end{macro} % @@ -1438,7 +1450,7 @@ \exp_after:wN \token_if_macro_p_aux:w \token_to_meaning:N #1 MA; \q_stop } - \cs_new_nopar:Npn \token_if_macro_p_aux:w #1 MA #2 ; #3 \q_stop + \cs_new:Npn \token_if_macro_p_aux:w #1 MA #2 ; #3 \q_stop { \if_int_compare:w \pdftex_strcmp:D { #2 } { cro } = \c_zero \prg_return_true: @@ -1529,7 +1541,7 @@ \exp_after:wN \token_if_chardef_aux:w \token_to_meaning:N #1 ?CHAR" \q_stop } - \cs_new_nopar:Npn \token_if_chardef_aux:w #1 ?CHAR" #2 \q_stop + \cs_new:Npn \token_if_chardef_aux:w #1 ?CHAR" #2 \q_stop { \tl_if_empty:nTF {#1} { \prg_return_true: } { \prg_return_false: } } % \end{macrocode} % @@ -1539,7 +1551,7 @@ \exp_after:wN \token_if_mathchardef_aux:w \token_to_meaning:N #1 ?MAYHCHAR" \q_stop } - \cs_new_nopar:Npn \token_if_mathchardef_aux:w #1 ?MAYHCHAR" #2 \q_stop + \cs_new:Npn \token_if_mathchardef_aux:w #1 ?MAYHCHAR" #2 \q_stop { \tl_if_empty:nTF {#1} { \prg_return_true: } { \prg_return_false: } } % \end{macrocode} % Integer registers are a little more difficult since they expand to @@ -1555,7 +1567,7 @@ \token_to_meaning:N #1 ?COUXY \q_stop \fi: } - \cs_new_nopar:Npn \token_if_int_register_aux:w #1 ?COUXY #2 \q_stop + \cs_new:Npn \token_if_int_register_aux:w #1 ?COUXY #2 \q_stop { \tl_if_empty:nTF {#1} { \prg_return_true: } { \prg_return_false: } } % \end{macrocode} % Skip registers are done the same way as the integer registers. @@ -1569,7 +1581,7 @@ \token_to_meaning:N #1?SKIP\q_stop \fi: } - \cs_new_nopar:Npn \token_if_skip_register_aux:w #1 ?SKIP #2 \q_stop + \cs_new:Npn \token_if_skip_register_aux:w #1 ?SKIP #2 \q_stop { \tl_if_empty:nTF {#1} { \prg_return_true: } { \prg_return_false: } } % \end{macrocode} % Dim registers. No news here @@ -1583,7 +1595,7 @@ \token_to_meaning:N #1 ?ZIMEX \q_stop \fi: } - \cs_new_nopar:Npn \token_if_dim_register_aux:w #1 ?ZIMEX #2 \q_stop + \cs_new:Npn \token_if_dim_register_aux:w #1 ?ZIMEX #2 \q_stop { \tl_if_empty:nTF {#1} { \prg_return_true: } { \prg_return_false: } } % \end{macrocode} % Toks registers. @@ -1597,7 +1609,7 @@ \token_to_meaning:N #1 ?YOKS \q_stop \fi: } - \cs_new_nopar:Npn \token_if_toks_register_aux:w #1 ?YOKS #2 \q_stop + \cs_new:Npn \token_if_toks_register_aux:w #1 ?YOKS #2 \q_stop { \tl_if_empty:nTF {#1} { \prg_return_true: } { \prg_return_false: } } % \end{macrocode} % Protected macros. @@ -1608,7 +1620,7 @@ \exp_after:wN \token_if_protected_macro_aux:w \token_to_meaning:N #1 ?PROYECYEZ~MACRO \q_stop } - \cs_new_nopar:Npn \token_if_protected_macro_aux:w + \cs_new:Npn \token_if_protected_macro_aux:w #1 ?PROYECYEZ~MACRO #2 \q_stop { \tl_if_empty:nTF {#1} { \prg_return_true: } { \prg_return_false: } } % \end{macrocode} @@ -1619,7 +1631,7 @@ \exp_after:wN \token_if_long_macro_aux:w \token_to_meaning:N #1 ?LOXG~MACRO \q_stop } - \cs_new_nopar:Npn \token_if_long_macro_aux:w #1 ?LOXG~MACRO #2 \q_stop + \cs_new:Npn \token_if_long_macro_aux:w #1 ?LOXG~MACRO #2 \q_stop { \tl_if_empty:nTF {#1} { \prg_return_true: } { \prg_return_false: } } % \end{macrocode} % Finally protected long macros where we for once don't have to add an @@ -1631,7 +1643,7 @@ \exp_after:wN \token_if_protected_long_macro_aux:w \token_to_meaning:N #1 ?PROYECYEZ?LOXG~MACRO \q_stop } - \cs_new_nopar:Npn \token_if_protected_long_macro_aux:w + \cs_new:Npn \token_if_protected_long_macro_aux:w #1 ?PROYECYEZ?LOXG~MACRO #2 \q_stop { \tl_if_empty:nTF {#1} { \prg_return_true: } { \prg_return_false: } } % \end{macrocode} @@ -1711,14 +1723,14 @@ \token_to_meaning:N #1 ; ; ; \q_stop #1 } } - \cs_new_nopar:Npn \token_if_primitive_aux:NNw #1#2 #3 ; #4 \q_stop + \cs_new:Npn \token_if_primitive_aux:NNw #1#2 #3 ; #4 \q_stop { \tl_if_empty:oTF { \token_if_primitive_aux_space:w #3 ~ } { \token_if_primitive_aux_loop:N #3 ; \q_stop } { \token_if_primitive_aux_nullfont:N } } } -\cs_new_nopar:Npn \token_if_primitive_aux_space:w #1 ~ { } +\cs_new:Npn \token_if_primitive_aux_space:w #1 ~ { } \cs_new:Npn \token_if_primitive_aux_nullfont:N #1 { \if_meaning:w \tex_nullfont:D #1 @@ -1727,7 +1739,7 @@ \prg_return_false: \fi: } -\cs_new_nopar:Npn \token_if_primitive_aux_loop:N #1 +\cs_new:Npn \token_if_primitive_aux_loop:N #1 { \if_num:w `#1 < \c_token_A_int % \exp_after:wN \token_if_primitive_auxii:Nw @@ -1736,7 +1748,7 @@ \exp_after:wN \token_if_primitive_aux_loop:N \fi: } -\cs_new_nopar:Npn \token_if_primitive_auxii:Nw #1 #2 \q_stop +\cs_new:Npn \token_if_primitive_auxii:Nw #1 #2 \q_stop { \if:w : #1 \exp_after:wN \token_if_primitive_aux_undefined:N @@ -1792,7 +1804,7 @@ % The token to search for as an explicit token: % \emph{cf.}~\cs{l_peek_search_token}. % \begin{macrocode} -\cs_new_nopar:Npn \l_peek_search_tl { } +\tl_new:N \l_peek_search_tl % \end{macrocode} % \end{variable} % @@ -1973,13 +1985,13 @@ % things are a bit complicated. % \begin{macrocode} \group_begin: - \cs_set_nopar:Npn \peek_def:nnnn #1#2#3#4 + \cs_set:Npn \peek_def:nnnn #1#2#3#4 { \peek_def_aux:nnnnn {#1} {#2} {#3} {#4} { TF } \peek_def_aux:nnnnn {#1} {#2} {#3} {#4} { T } \peek_def_aux:nnnnn {#1} {#2} {#3} {#4} { F } } - \cs_set_nopar:Npn \peek_def_aux:nnnnn #1#2#3#4#5 + \cs_set:Npn \peek_def_aux:nnnnn #1#2#3#4#5 { \cs_gset_nopar:cpx { #1 #5 } { @@ -2088,7 +2100,7 @@ % returned instead. % \begin{macrocode} \exp_args:Nno \use:nn - { \cs_new_nopar:Npn \token_get_prefix_arg_replacement_aux:wN #1 } + { \cs_new:Npn \token_get_prefix_arg_replacement_aux:wN #1 } { \tl_to_str:n { macro : } #2 -> #3 \q_stop #4 } { #4 {#1} {#2} {#3} } \cs_new:Npn \token_get_prefix_spec:N #1 @@ -2126,9 +2138,9 @@ % % \subsection{Experimental token functions} % -% \begin{macro}{\char_active_set:Npn,\char_active_set:Npx} -% \begin{macro}{\char_active_set:Npn,\char_active_set:Npx} -% \begin{macro}{\char_active_set_eq:NN,\char_active_gset_eq:NN} +% \begin{macro}{\char_set_active:Npn,\char_set_active:Npx} +% \begin{macro}{\char_set_active:Npn,\char_set_active:Npx} +% \begin{macro}{\char_set_active_eq:NN,\char_gset_active_eq:NN} % \begin{macrocode} \group_begin: \char_set_catcode_active:N \^^@ @@ -2142,12 +2154,12 @@ \tl_to_lowercase:n { \group_end: #2 ^^@ } } } - \char_tmp:NN \char_active_set:Npn \cs_set:Npn - \char_tmp:NN \char_active_set:Npx \cs_set:Npx - \char_tmp:NN \char_active_gset:Npn \cs_gset:Npn - \char_tmp:NN \char_active_gset:Npx \cs_gset:Npx - \char_tmp:NN \char_active_set_eq:NN \cs_set_eq:NN - \char_tmp:NN \char_active_gset_eq:NN \cs_gset_eq:NN + \char_tmp:NN \char_set_active:Npn \cs_set:Npn + \char_tmp:NN \char_set_active:Npx \cs_set:Npx + \char_tmp:NN \char_gset_active:Npn \cs_gset:Npn + \char_tmp:NN \char_gset_active:Npx \cs_gset:Npx + \char_tmp:NN \char_set_active_eq:NN \cs_set_eq:NN + \char_tmp:NN \char_gset_active_eq:NN \cs_gset_eq:NN \group_end: % \end{macrocode} % \end{macro} @@ -2361,7 +2373,7 @@ \cs_new_eq:NN \char_make_math_subscript:n \char_set_catcode_math_subscript:n \cs_new_eq:NN \char_make_ignore:n \char_set_catcode_ignore:n -\cs_new_eq:NN \char_make_space:n \char_set_catcode_space:n +\cs_new_eq:NN \char_make_space:n \char_set_catcode_space:n \cs_new_eq:NN \char_make_letter:n \char_set_catcode_letter:n \cs_new_eq:NN \char_make_other:n \char_set_catcode_other:n \cs_new_eq:NN \char_make_active:n \char_set_catcode_active:n |