diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/l3kernel/l3doc.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/l3kernel/l3doc.dtx | 63 |
1 files changed, 40 insertions, 23 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx b/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx index 711873fe192..16ccbe2bff8 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx @@ -70,14 +70,14 @@ and all files in that bundle must be distributed together. % This isn't included in the typeset documentation because it's a bit % ugly: %<*class> -\ProvidesExplClass{l3doc}{2018/03/05}{} +\ProvidesExplClass{l3doc}{2018-04-30}{} {L3 Experimental documentation class} %</class> % \fi % % \title{The \cls{l3doc} class} % \author{\Team} -% \date{Released 2018/03/05} +% \date{Released 2018-04-30} % \maketitle % \tableofcontents % @@ -564,7 +564,8 @@ and all files in that bundle must be distributed together. % \begin{variable}{\l_@@_detect_internals_bool, \l_@@_detect_internals_tl} % If \texttt{true}, \pkg{l3doc} will check for use of internal % commands \cs[no-index]{__\meta{pkg}_\ldots{}} from other packages in -% \texttt{macrocode} environments and in~\cs{cs}. Also a token list +% the argument of the \texttt{macro} environment, and in the code typeset in +% \texttt{macrocode} environments, but not in~\cs{cs}. Also a token list % to store temporary data for this purpose. % \begin{macrocode} \bool_new:N \l_@@_detect_internals_bool @@ -922,6 +923,7 @@ and all files in that bundle must be distributed together. % \tl_if_head_eq_charcode:oNF, % \tl_if_head_eq_meaning:VNF, % \tl_if_in:noTF, +% \tl_if_in:ooTF, % \tl_if_in:NoTF, % \tl_if_in:NoT, % \tl_if_in:NoF, @@ -1026,11 +1028,6 @@ and all files in that bundle must be distributed together. % \begin{macrocode} \cs_new_protected:Npn \@@_replace_at_at:N #1 { - \bool_if:NT \l_@@_in_implementation_bool - { - \bool_if:NT \l_@@_detect_internals_bool - { \@@_detect_internals:N #1 } - } \tl_if_empty:NF \g_@@_module_name_tl { \exp_args:NNo \@@_replace_at_at_aux:Nn @@ -1051,7 +1048,12 @@ and all files in that bundle must be distributed together. % \end{macro} % \end{macro} % -% \begin{macro}{\@@_detect_internals:N, \@@_if_detect_internals_ok:NF} +% \begin{macro} +% { +% \@@_detect_internals:N, +% \@@_detect_internals_aux:N, +% \@@_if_detect_internals_ok:NF +% } % After splitting at each |__| and removing the leading item from the % sequence (since it does not follow |__|), remove everything after % any space or end-of-line to get a good approximation of the control @@ -1062,9 +1064,14 @@ and all files in that bundle must be distributed together. % remove anything after any |_| or |:| (with either catcode) to get a % guess of the module name. % \begin{macrocode} +\cs_new_protected:Npn \@@_detect_internals:N #1 + { + \bool_if:NT \l_@@_detect_internals_bool + { \@@_detect_internals_aux:N #1 } + } \group_begin: \char_set_catcode_active:N \^^M - \cs_new_protected:Npn \@@_detect_internals:N #1 + \cs_new_protected:Npn \@@_detect_internals_aux:N #1 { \tl_set_eq:NN \l_@@_detect_internals_tl #1 \tl_replace_all:Non \l_@@_detect_internals_tl { \token_to_str:N _ } { _ } @@ -1192,7 +1199,11 @@ and all files in that bundle must be distributed together. % % \begin{macro}[rEXP]{\@@_key_get_base:nN} % Get the base form of a function and store it. As part of getting -% the base form, change trailing |T| or |F| to |TF|. +% the base form, change trailing |T| or |F| to |TF|, skipping that +% change if the function contains no colon to avoid changing for +% instance some names ending in \texttt{PDF} or similar. The various +% letters |z| serve as end-delimiters different from any outcome of +% \cs{tl_to_str:n}. % \begin{macrocode} \cs_new_protected:Npn \@@_key_get_base:nN #1#2 { @@ -1206,22 +1217,23 @@ and all files in that bundle must be distributed together. } \cs_new:Npx \@@_key_get_base_TF:nN #1#2 { - \tl_set:Nx #2 { \exp_not:N \tl_to_str:n {#1} \scan_stop: } - \tl_if_in:NnTF #2 { \tl_to_str:n { F } \scan_stop: } + \tl_set:Nx #2 { \exp_not:N \tl_to_str:n {#1} } + \tl_if_in:NoF #2 { \tl_to_str:n {:} } + { \exp_not:N \prg_break: } + \tl_if_in:onT { #2 z } { \tl_to_str:n {TF} z } + { \exp_not:N \prg_break: } + \tl_if_in:onT { #2 z } { \tl_to_str:n {T} z } { - \tl_if_in:NnF #2 { \tl_to_str:n { TF } \scan_stop: } - { - \tl_replace_once:Nnn #2 - { \tl_to_str:n { F } \scan_stop: } - { \tl_to_str:n { TF } \scan_stop: } - } + \tl_put_right:Nn #2 { \tl_to_str:n {F} } + \exp_not:N \prg_break: } + \tl_if_in:onT { #2 z } { \tl_to_str:n {F} z } { - \tl_replace_once:Nnn #2 - { \tl_to_str:n { T } \scan_stop: } - { \tl_to_str:n { TF } \scan_stop: } + \tl_put_right:Nn #2 { z } + \tl_replace_once:Nnn #2 { \tl_to_str:n {F} z } { \tl_to_str:n {TF} } + \exp_not:N \prg_break: } - \tl_remove_once:Nn #2 { \scan_stop: } + \exp_not:N \prg_break_point: } \cs_new:Npn \@@_base_form_aux:nnN #1#2#3 { @@ -1654,6 +1666,7 @@ and all files in that bundle must be distributed together. \providecommand*\upTeX{up\kern-.2em\hologo{TeX}} \providecommand*\epTeX{$\varepsilon$-\pTeX} \providecommand*\eupTeX{$\varepsilon$-\upTeX} +\providecommand*\ConTeXt{\hologo{ConTeXt}} % \end{macrocode} % \end{macro} % @@ -2092,6 +2105,7 @@ and all files in that bundle must be distributed together. \tl_remove_all:Nx \l_@@_tmpa_tl { \tl_to_str:n { ^ ^ A } } \tl_remove_all:Nx \l_@@_tmpa_tl { \iow_char:N \^^I } \tl_remove_all:Nx \l_@@_tmpa_tl { \iow_char:N \^^M } + \@@_detect_internals:N \l_@@_tmpa_tl \@@_replace_at_at:N \l_@@_tmpa_tl \exp_args:NNx \seq_set_from_clist:Nn #2 { \tl_to_str:N \l_@@_tmpa_tl } @@ -3680,6 +3694,7 @@ and all files in that bundle must be distributed together. { \@@_xmacro_code:w #1 \q_stop } { \tl_set:Nn \l_@@_tmpa_tl {#1} + \@@_detect_internals:N \l_@@_tmpa_tl \@@_replace_at_at:N \l_@@_tmpa_tl \tl_use:N \l_@@_tmpa_tl } @@ -3687,12 +3702,14 @@ and all files in that bundle must be distributed together. \cs_new_protected:Npn \@@_xmacro_code:w #1 < @ @ = #2 > #3 \q_stop { \tl_set:Nn \l_@@_tmpa_tl {#1} + \@@_detect_internals:N \l_@@_tmpa_tl \@@_replace_at_at:N \l_@@_tmpa_tl \tl_gset:Nn \g_@@_module_name_tl {#2} \tl_put_right:Nn \l_@@_tmpa_tl { < @ @ = #2 > } \tl_set:Nn \l_@@_tmpb_tl {#3} + \@@_detect_internals:N \l_@@_tmpb_tl \@@_replace_at_at:N \l_@@_tmpb_tl \tl_put_right:No \l_@@_tmpa_tl { \l_@@_tmpb_tl } |