From 7ae99d0695886654063166819b1ee151f3e6d795 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 12 Feb 2022 21:17:31 +0000 Subject: knowledge (12feb22) git-svn-id: svn://tug.org/texlive/trunk@61991 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/tex/latex/knowledge/knowledge.sty | 46 ++++++++++++++++------ 1 file changed, 35 insertions(+), 11 deletions(-) (limited to 'Master/texmf-dist/tex/latex/knowledge') diff --git a/Master/texmf-dist/tex/latex/knowledge/knowledge.sty b/Master/texmf-dist/tex/latex/knowledge/knowledge.sty index 507ab282514..875271f7379 100644 --- a/Master/texmf-dist/tex/latex/knowledge/knowledge.sty +++ b/Master/texmf-dist/tex/latex/knowledge/knowledge.sty @@ -23,7 +23,7 @@ %% LaTeX version 1999/12/01 or later. %% \usepackage{expl3} -\ProvidesExplPackage{knowledge}{2022/01/12}{1.27}{} +\ProvidesExplPackage{knowledge}{2022/02/12}{1.28}{} %%%%%%%%%% \RequirePackage{l3keys2e} \RequirePackage{etoolbox} @@ -1104,6 +1104,7 @@ \knowledge_option_aci_test_loaded:n{hyperref} \knowledge_option_aci_test_loaded:n{xcolor} \knowledge_option_aci_test_loaded:n{makeidx} +\knowledge_option_aci_test_loaded:n{imakeidx} \knowledge_option_aci_test_loaded:n{cleveref} \cs_new:Nn\knowledge_option_aci_define:n{ \keys_define:nn{ knowledge~package~options } { @@ -1131,6 +1132,7 @@ \knowledge_option_aci_define:n{hyperref} \knowledge_option_aci_define:n{xcolor} \knowledge_option_aci_define:n{makeidx} +\knowledge_option_aci_define:n{imakeidx} \knowledge_option_aci_define:n{cleveref} \ProcessKeysOptions{knowledge~package~options} @@ -1179,6 +1181,7 @@ \knowledge_option_aci_autoload:nnn{ hyperref }{}{} \knowledge_option_aci_autoload:nn{ xcolor }{} \knowledge_option_aci_autoload:nn{ makeidx }{} +\knowledge_option_aci_autoload:nn{ imakeidx }{} \knowledge_option_aci_autoload:nn{ cleveref }{} \tl_const:Nn\scope_tl{SC@PE} \tl_const:Nn\scopept_tl{SC@PE2} @@ -3344,17 +3347,29 @@ \let\klTKS\knowledge_fake_klTKS } } +\bool_if:NT\knowledge_imakeidx_active_bool{\bool_set_true:N\knowledge_makeidx_active_bool} +\bool_if:NT\knowledge_imakeidx_syntax_bool{\bool_set_true:N\knowledge_makeidx_syntax_bool} +\cs_new:Npn \knowledge_index:nn #1 #2{ + \tl_if_empty:nTF {#1} + {\index{#2}} + {\index[{#1}]{#2}} + } + +\cs_generate_variant:Nn \knowledge_index:nn {xx} + \cs_new:Nn\knowledge_kl_compute_code_makeidx:{ \bool_if:NF\knowledge_kl_noindex_bool{ \tl_if_exist_ne:NTF\knowledge_kl_index_tl - {\exp_args:Nx\index - {\tl_if_exist_ne:NTF\knowledge_kl_index_parent_key_tl - {\exp_not:V\knowledge_kl_index_parent_key_tl!}{} - \tl_if_exist_ne:NTF\knowledge_kl_index_key_tl - {\exp_not:V\knowledge_kl_index_key_tl@}{} + {\knowledge_index:xx + {\tl_if_exist_ne:NTF \knowledge_kl_index_name_tl + {\exp_not:V \knowledge_kl_index_name_tl}{}} + {\tl_if_exist_ne:NTF\knowledge_kl_index_parent_key_tl + {\exp_not:V\knowledge_kl_index_parent_key_tl!}{} + \tl_if_exist_ne:NTF\knowledge_kl_index_key_tl + {\exp_not:V\knowledge_kl_index_key_tl@}{} \expandafter\tl_to_str:n\expandafter{\knowledge_kl_index_tl} \tl_if_exist_ne:NTF\knowledge_kl_index_number_style_tl - {|\exp_not:V\knowledge_kl_index_number_style_tl}{} + {|\exp_not:V\knowledge_kl_index_number_style_tl}{} }}{} } } @@ -3368,10 +3383,19 @@ index .default:n = {} } -\NewKnowledgeParamTl*[\knowledge_kl_index_number_style_tl]{index~style} -\NewKnowledgeParamTl*[\knowledge_kl_index_parent_key_tl]{index~parent~key} -\NewKnowledgeParamTl*[\knowledge_kl_index_key_tl]{index~key} -\NewKnowledgeParamBool*{no~index}\knowledge_kl_noindex_bool +\bool_if:NT\knowledge_makeidx_syntax_bool +{ \NewKnowledgeParamTl*[\knowledge_kl_index_number_style_tl]{index~style} + \NewKnowledgeParamTl*[\knowledge_kl_index_parent_key_tl]{index~parent~key} + \NewKnowledgeParamTl*[\knowledge_kl_index_key_tl]{index~key} + \NewKnowledgeParamBool*{no~index}\knowledge_kl_noindex_bool +} +\bool_if:NT\knowledge_imakeidx_syntax_bool { + \NewKnowledgeParamTl*[\knowledge_kl_index_name_tl]{index~name} +} +\knowledge_directives_require_aci_package:nn + {index,index~key,index~parent~key,index~style}{makeidx} +\knowledge_directives_require_aci_package:nn + {index~name}{imakeidx} \bool_if:NTF\knowledge_cleveref_active_bool{ \knowledgenewvariant\kcref{ namespace=default, -- cgit v1.2.3