diff options
Diffstat (limited to 'Master')
34 files changed, 202 insertions, 144 deletions
diff --git a/Master/texmf-dist/doc/latex/tagpdf/README.md b/Master/texmf-dist/doc/latex/tagpdf/README.md index 654c5ec695d..e6db86a9e40 100644 --- a/Master/texmf-dist/doc/latex/tagpdf/README.md +++ b/Master/texmf-dist/doc/latex/tagpdf/README.md @@ -1,6 +1,6 @@ #tagpdf — A package to create tagged pdf -Packageversion: 0.98b -Packagedate: 2023/01/24 +Packageversion: 0.98c +Packagedate: 2023/01/30 Author: Ulrike Fischer ## License diff --git a/Master/texmf-dist/doc/latex/tagpdf/tagpdf-code.pdf b/Master/texmf-dist/doc/latex/tagpdf/tagpdf-code.pdf Binary files differindex 5b954258dd5..c8c3c146cb1 100644 --- a/Master/texmf-dist/doc/latex/tagpdf/tagpdf-code.pdf +++ b/Master/texmf-dist/doc/latex/tagpdf/tagpdf-code.pdf diff --git a/Master/texmf-dist/doc/latex/tagpdf/tagpdf.pdf b/Master/texmf-dist/doc/latex/tagpdf/tagpdf.pdf Binary files differindex a77e88d3c5f..3edd2185eb3 100644 --- a/Master/texmf-dist/doc/latex/tagpdf/tagpdf.pdf +++ b/Master/texmf-dist/doc/latex/tagpdf/tagpdf.pdf diff --git a/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex b/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex index e36b3e91979..299763001c3 100644 --- a/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex +++ b/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex @@ -15,8 +15,8 @@ } \makeatletter -\def\UlrikeFischer@package@version{0.98b} -\def\UlrikeFischer@package@date{2023-01-24} +\def\UlrikeFischer@package@version{0.98c} +\def\UlrikeFischer@package@date{2023-01-30} \makeatother \documentclass[DIV=12,parskip=half-,bibliography=totoc,a4paper]{article} diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx index 0028f723970..0a2c4f693fe 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-backend.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf-backend.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -47,13 +47,13 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{implementation} % \begin{macrocode} %<@@=tag> %<*luatex> -\ProvidesExplFile {tagpdf-luatex.def} {2023-01-24} {0.98b} +\ProvidesExplFile {tagpdf-luatex.def} {2023-01-30} {0.98c} {tagpdf~driver~for~luatex} % \end{macrocode} % \section{Loading the lua} @@ -158,8 +158,8 @@ local ProvidesLuaModule = { name = "tagpdf", - version = "0.98b", --TAGVERSION - date = "2023-01-24", --TAGDATE + version = "0.98c", --TAGVERSION + date = "2023-01-30", --TAGDATE description = "tagpdf lua code", license = "The LATEX Project Public License 1.3c" } diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-checks.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-checks.dtx index fae3e853d3a..a20017a77c2 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-checks.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-checks.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf-checks.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{documentation} % \section{Commands} @@ -295,7 +295,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-checks-code} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-checks-code} {2023-01-30} {0.98c} {part of tagpdf - code related to checks, conditionals, debugging and messages} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx index 93bf80667bc..a62f6d3cdb3 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-data.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{documentation} % This files contains a various data files which are read in @@ -60,7 +60,7 @@ % It lists the new tag, the rolemap and the namespace of the rolemap. % \begin{macrocode} %<*ns-latex> -%% \ProvidesExplFile {tagpdf-ns-latex.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-latex.def} {2023-01-30} {0.98c} %% {latex} {https://www.latex-project.org/ns/dflt/2022}{} title, Title, pdf2, part, Title, pdf2, @@ -86,7 +86,7 @@ footnotelabel,Lbl, pdf2, % It is bound to change % \begin{macrocode} %<*ns-latex-book> -%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2023-01-30} {0.98c} %% {latex-book} {https://www.latex-project.org/ns/book/2022}{} chapter, H1,pdf2, section, H2,pdf2, @@ -102,7 +102,7 @@ subparagraph, H6,pdf2, % It is bound to change a lot! % \begin{macrocode} %<*ns-latex-inline> -%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2023-01-30} {0.98c} %% {latex-inline} {https://www.latex-project.org/ns/inline/2022}{} chapter, Span, pdf2, section, Span, pdf2, @@ -116,7 +116,7 @@ P, Span, pdf2, % \section{The pdf namespace data} % \begin{macrocode} %<*ns-pdf> -%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2023-01-30} {0.98c} %% {pdf} {http://iso.org/pdf/ssn}{} StructTreeRoot,StructTreeRoot,pdf,D, Document,Document,pdf,D, @@ -184,7 +184,7 @@ Strong,Span,pdf,I, % \section{The pdf 2.0 namespace data} % \begin{macrocode} %<*ns-pdf2> -%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2023-01-30} {0.98c} %% {pdf2} {http://iso.org/pdf2/ssn}{} Document,Document,pdf2,D, Part,Part,pdf2,G, @@ -240,7 +240,7 @@ Strong,Strong,pdf2,I, % \section{The mathml namespace data} % \begin{macrocode} %<*ns-mathml> -%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2023-01-30} {0.98c} % {mathml}{http://www.w3.org/1998/Math/MathML}{} abs,,, and,,, @@ -475,7 +475,7 @@ xor,,, % This will perhaps change in future. % \begin{macrocode} %<*parent-child> -%% \ProvidesExplFile {tagpdf-parent-child.csv} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-parent-child.csv} {2023-01-30} {0.98c} ,,,StructTreeRoot,Document,Art,Part,Div,Sect,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,MC Document,both,document level,1,0..n,∅,‡,‡,∅,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅ Art,1.7,grouping,∅,0..n,∅,‡,‡,0..n,0..n,‡,∅,∅,∅,0..n,∅,0..n,∅,∅,∅,0..1,0..1,∅,∅,∅,0..n,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅,∅,0..n,0..n,∅,∅,∅,0..n,0..n,∅,∅ @@ -530,7 +530,7 @@ MC,both,---,∅,∅,∅,∅,∅,∅,0..n,‡,∅,∅,∅,0..n,0..n,0..n,0..n,0.. % This will perhaps change in future. % \begin{macrocode} %<*parent-child-2> -%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2023-01-30} {0.98c} ,,,StructTreeRoot,Document,DocumentFragment,Art,Part,Div,Sect,Aside,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Title,Sub,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Em,Strong,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,FENote,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,math,mathml,Artifact,MC Document,both,document level,1,0..n,0..n,∅,‡,‡,∅,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅ DocumentFragment,2.0,document level,∅,0..n,0..n,0..n,‡,‡,0..n,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅*,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,0..n,∅ diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-generic.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-generic.dtx index fd3409c73bb..1d04a193680 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-generic.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-generic.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf-mc-generic.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{documentation} % \end{documentation} @@ -55,11 +55,11 @@ % \begin{macrocode} %<@@=tag> %<*generic> -\ProvidesExplPackage {tagpdf-mc-code-generic} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-mc-code-generic} {2023-01-30} {0.98c} {part of tagpdf - code related to marking chunks - generic mode} %</generic> %<*debug> -\ProvidesExplPackage {tagpdf-debug-generic} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-debug-generic} {2023-01-30} {0.98c} {part of tagpdf - debugging code related to marking chunks - generic mode} %</debug> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx index de5fe42739f..066d2e22436 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-luacode.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf-mc-luacode.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{implementation} % The code is splitted into three parts: code shared by all engines, @@ -86,7 +86,7 @@ % \begin{macrocode} %<@@=tag> %<*luamode> -\ProvidesExplPackage {tagpdf-mc-code-lua} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-mc-code-lua} {2023-01-30} {0.98c} {tagpdf - mc code only for the luamode } %</luamode> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx index e693242d1b0..88c5937f575 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-mc-shared.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf-mc-shared.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{documentation} % \section{Public Commands} @@ -174,7 +174,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-mc-code-shared} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-mc-code-shared} {2023-01-30} {0.98c} {part of tagpdf - code related to marking chunks - code shared by generic and luamode } %</header> diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx index 60ba8572948..8948b890550 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-roles.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf-roles.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{documentation} % \begin{function} @@ -85,12 +85,20 @@ % Namespaces are mostly a PDF 2.0 property, but it doesn't harm to % set them also in a PDF 1.7 or earlier. % \end{function} +% +% \begin{function}[TF]{\tag_check_child:nn} +% \begin{syntax} +% \cs{tag_check_child:nn}\Arg{tag}\Arg{namespace} \Arg{true code} \Arg{false code} +% \end{syntax} +% This checks if the tag \meta{tag} from the name space \meta{namespace} +% can be used at the current position. In tagpdf-base it is always true. +% \end{function} % \end{documentation} % \begin{implementation} % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-roles-code} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-roles-code} {2023-01-30} {0.98c} {part of tagpdf - code related to roles and structure names} %</header> % \end{macrocode} @@ -522,14 +530,14 @@ % \begin{macrocode} \tl_if_empty:nF { #2 } { - \prop_get:cnN { g__tag_role_NS_#4_prop } {#3}\l_@@_tmpa_tl + \prop_get:cnN { g_@@_role_NS_#4_prop } {#3}\l_@@_tmpa_tl \quark_if_no_value:NTF \l_@@_tmpa_tl { - \prop_gput:cnx { g__tag_role_NS_#2_prop } {#1} + \prop_gput:cnx { g_@@_role_NS_#2_prop } {#1} {{\tl_to_str:n{#3}}{\tl_to_str:n{#4}}} } { - \prop_gput:cno { g__tag_role_NS_#2_prop } {#1}{\l_@@_tmpa_tl} + \prop_gput:cno { g_@@_role_NS_#2_prop } {#1}{\l_@@_tmpa_tl} } } } @@ -642,7 +650,7 @@ % \begin{macrocode} \cs_new_protected:Npn \@@_role_read_namespace:n #1 %name of namespace { - \prop_if_exist:cF {g__tag_role_NS_#1_prop} + \prop_if_exist:cF {g_@@_role_NS_#1_prop} { \msg_warning:nnn {tag}{namespace-unknown}{#1} } \file_if_exist:nTF { tagpdf-ns-#1.def} { @@ -1155,6 +1163,30 @@ } \cs_generate_variant:Nn\@@_check_parent_child:nnN {VVN} \cs_generate_variant:Nn\@@_check_parent_child:nnnnN {VVVVN,nVnVN,VVnnN} +%</package> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}[TF]{\tag_check_child:nn} +% \begin{macrocode} +%<base>\prg_new_protected_conditional:Npnn \tag_check_child:nn #1 #2 {T,F,TF}{\prg_return_true:} +%<*package> +\prg_set_protected_conditional:Npnn \tag_check_child:nn #1 #2 {T,F,TF} + { + \seq_get:NN\g_@@_struct_stack_seq\l_@@_tmpa_tl + \@@_struct_get_tag_info:eNN + {\l_@@_tmpa_tl} + \l_@@_get_parent_tmpa_tl + \l_@@_get_parent_tmpb_tl + \@@_check_parent_child:VVnnN + \l_@@_get_parent_tmpa_tl + \l_@@_get_parent_tmpb_tl + {#1}{#2} + \l_@@_parent_child_check_tl + \int_compare:nNnTF { \l_@@_parent_child_check_tl } < {0} + {\prg_return_false:} + {\prg_return_true:} + } % \end{macrocode} % \end{macro} % @@ -1199,7 +1231,7 @@ { \cs_new_protected:Npn \@@_role_remap_inline: { - \prop_get:cVNT { g__tag_role_NS_latex-inline_prop }\l_@@_role_remap_tag_tl\l_@@_tmpa_tl + \prop_get:cVNT { g_@@_role_NS_latex-inline_prop }\l_@@_role_remap_tag_tl\l_@@_tmpa_tl { \tl_set:Nx\l_@@_role_remap_tag_tl { @@ -1219,7 +1251,7 @@ { \cs_new_protected:Npn \@@_role_remap_inline: { - \prop_get:cVNT { g__tag_role_NS_latex-inline_prop }\l_@@_role_remap_tag_tl\l_@@_tmpa_tl + \prop_get:cVNT { g_@@_role_NS_latex-inline_prop }\l_@@_role_remap_tag_tl\l_@@_tmpa_tl { \tl_set:Nn\l_@@_role_remap_NS_tl {latex-inline} } diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx index f450520a481..5e21bb0f6a5 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-space.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf-space.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{documentation} % \begin{function}{interwordspace (setup-key)} @@ -64,7 +64,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-space-code} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-space-code} {2023-01-30} {0.98c} {part of tagpdf - code related to real space chars} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx index 2e83d512806..229989dad1c 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-struct.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf-struct.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{documentation} % \section{Public Commands} @@ -242,7 +242,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-struct-code} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-struct-code} {2023-01-30} {0.98c} {part of tagpdf - code related to storing structure} %</header> % \end{macrocode} @@ -1510,7 +1510,7 @@ % \section{Attributes and attribute classes} % \begin{macrocode} %<*header> -\ProvidesExplPackage {tagpdf-attr-code} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-attr-code} {2023-01-30} {0.98c} {part of tagpdf - code related to attributes and attribute classes} %</header> % \end{macrocode} @@ -1577,7 +1577,7 @@ { attribute-class .code:n = { - \clist_set:No \l_@@_tmpa_clist { #1 } + \clist_set:Nx \l_@@_tmpa_clist { #1 } \seq_set_from_clist:NN \l_@@_tmpb_seq \l_@@_tmpa_clist % \end{macrocode} % we convert the names into pdf names with slash @@ -1618,50 +1618,53 @@ { attribute .code:n = % A property (attribute, value currently a dictionary) { - \clist_set:No \l_@@_tmpa_clist { #1 } - \seq_set_from_clist:NN \l_@@_tmpb_seq \l_@@_tmpa_clist + \clist_set:Nx \l_@@_tmpa_clist { #1 } + \clist_if_empty:NF \l_@@_tmpa_clist + { + \seq_set_from_clist:NN \l_@@_tmpb_seq \l_@@_tmpa_clist % \end{macrocode} % we convert the names into pdf names with slash % \begin{macrocode} - \seq_set_map_x:NNn \l_@@_tmpa_seq \l_@@_tmpb_seq - { - \pdf_name_from_unicode_e:n {##1} - } - \tl_set:Nx \l_@@_attr_value_tl - { - \int_compare:nT { \seq_count:N \l_@@_tmpa_seq > 1 }{[}%] - } - \seq_map_inline:Nn \l_@@_tmpa_seq - { - \prop_if_in:NnF \g_@@_attr_entries_prop {##1} + \seq_set_map_x:NNn \l_@@_tmpa_seq \l_@@_tmpb_seq + { + \pdf_name_from_unicode_e:n {##1} + } + \tl_set:Nx \l_@@_attr_value_tl { - \msg_error:nnn { tag } { attr-unknown } { ##1 } + \int_compare:nT { \seq_count:N \l_@@_tmpa_seq > 1 }{[}%] } - \prop_if_in:NnF \g_@@_attr_objref_prop {##1} - {%\prop_show:N \g_@@_attr_entries_prop - \pdf_object_unnamed_write:nx - { dict } + \seq_map_inline:Nn \l_@@_tmpa_seq + { + \prop_if_in:NnF \g_@@_attr_entries_prop {##1} { - \prop_item:Nn\g_@@_attr_entries_prop {##1} + \msg_error:nnn { tag } { attr-unknown } { ##1 } } - \prop_gput:Nnx \g_@@_attr_objref_prop {##1} {\pdf_object_ref_last:} + \prop_if_in:NnF \g_@@_attr_objref_prop {##1} + {%\prop_show:N \g_@@_attr_entries_prop + \pdf_object_unnamed_write:nx + { dict } + { + \prop_item:Nn\g_@@_attr_entries_prop {##1} + } + \prop_gput:Nnx \g_@@_attr_objref_prop {##1} {\pdf_object_ref_last:} + } + \tl_put_right:Nx \l_@@_attr_value_tl + { + \c_space_tl + \prop_item:Nn \g_@@_attr_objref_prop {##1} + } + % \tl_show:N \l_@@_attr_value_tl } \tl_put_right:Nx \l_@@_attr_value_tl - { - \c_space_tl - \prop_item:Nn \g_@@_attr_objref_prop {##1} + { %[ + \int_compare:nT { \seq_count:N \l_@@_tmpa_seq > 1 }{]}% } - % \tl_show:N \l_@@_attr_value_tl - } - \tl_put_right:Nx \l_@@_attr_value_tl - { %[ - \int_compare:nT { \seq_count:N \l_@@_tmpa_seq > 1 }{]}% - } - % \tl_show:N \l_@@_attr_value_tl - \@@_prop_gput:cnx - { g_@@_struct_\int_eval:n {\c@g_@@_struct_abs_int}_prop } - { A } - { \l_@@_attr_value_tl } + % \tl_show:N \l_@@_attr_value_tl + \@@_prop_gput:cnx + { g_@@_struct_\int_eval:n {\c@g_@@_struct_abs_int}_prop } + { A } + { \l_@@_attr_value_tl } + } }, } %</package> diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx index 2a02a7c5df8..507681afa62 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-tree.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf-tree.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -47,13 +47,13 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{implementation} % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-tree-code} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-tree-code} {2023-01-30} {0.98c} {part of tagpdf - code related to writing trees and dictionaries to the pdf} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx index 309b62a6c1f..980641b6b70 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf-user.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf-user.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98b, released 2023-01-24} +% \date{Version 0.98c, released 2023-01-30} % \maketitle % \begin{documentation} % \section{Setup commands} @@ -246,7 +246,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-user} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-user} {2023-01-30} {0.98c} {tagpdf - user commands} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx b/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx index c264123ebc7..61222d151ab 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf.dtx @@ -2,7 +2,7 @@ % %% File: tagpdf.dtx % -% Copyright (C) 2019-2022 Ulrike Fischer +% Copyright (C) 2019-2023 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -92,7 +92,7 @@ % \begin{macrocode} %<@@=tag> %<*package> -\ProvidesExplPackage {tagpdf} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf} {2023-01-30} {0.98c} { A package to experiment with pdf tagging } \bool_if:nF @@ -118,7 +118,7 @@ % \end{macrocode} %<*debug> % \begin{macrocode} -\ProvidesExplPackage {tagpdf-debug} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-debug} {2023-01-30} {0.98c} { debug code for tagpdf } \@ifpackageloaded{tagpdf}{}{\PackageWarning{tagpdf-debug}{tagpdf~not~loaded,~quitting}\endinput} % \end{macrocode} @@ -159,7 +159,7 @@ % \end{macrocode} % \begin{macrocode} %<*base> -\ProvidesExplPackage {tagpdf-base} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-base} {2023-01-30} {0.98c} {part of tagpdf - provide base, no-op versions of the user commands } %</base> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/tagpdf/tagpdf.ins b/Master/texmf-dist/source/latex/tagpdf/tagpdf.ins index d4940188252..d17e709b25f 100644 --- a/Master/texmf-dist/source/latex/tagpdf/tagpdf.ins +++ b/Master/texmf-dist/source/latex/tagpdf/tagpdf.ins @@ -79,6 +79,7 @@ and all files in that bundle must be distributed together. \from{tagpdf-struct.dtx}{base} \from{tagpdf-checks.dtx}{base} \from{tagpdf-user.dtx}{base} + \from{tagpdf-roles.dtx}{base} } } diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty index e33868b0b0d..0e7220b7d51 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty @@ -10,6 +10,7 @@ %% tagpdf-struct.dtx (with options: `base') %% tagpdf-checks.dtx (with options: `base') %% tagpdf-user.dtx (with options: `base') +%% tagpdf-roles.dtx (with options: `base') %% %% Copyright (C) 2019-2022 Ulrike Fischer %% @@ -24,7 +25,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf.dtx -\ProvidesExplPackage {tagpdf-base} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-base} {2023-01-30} {0.98c} {part of tagpdf - provide base, no-op versions of the user commands } \AddToHook{begindocument} { @@ -107,6 +108,8 @@ } \newcommand\tagpdfparaOn {} \newcommand\tagpdfparaOff{} +%% File: tagpdf-roles.dtx +\prg_new_protected_conditional:Npnn \tag_check_child:nn #1 #2 {T,F,TF}{\prg_return_true:} %% %% %% End of file `tagpdf-base.sty'. diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty index 367a746c612..15df01d76e7 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-mc-generic.dtx -\ProvidesExplPackage {tagpdf-debug-generic} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-debug-generic} {2023-01-30} {0.98c} {part of tagpdf - debugging code related to marking chunks - generic mode} \cs_set_protected:Npn \tag_mc_begin:n #1 %#1 keyval { diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty index bac841f7404..fe27dc45683 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty @@ -26,7 +26,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf.dtx -\ProvidesExplPackage {tagpdf-debug} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-debug} {2023-01-30} {0.98c} { debug code for tagpdf } \@ifpackageloaded{tagpdf}{}{\PackageWarning{tagpdf-debug}{tagpdf~not~loaded,~quitting}\endinput} \prop_gput:Nnn \g_msg_module_type_prop { tag / debug} {} diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def index 021c829abb9..df0c825346c 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-backend.dtx -\ProvidesExplFile {tagpdf-luatex.def} {2023-01-24} {0.98b} +\ProvidesExplFile {tagpdf-luatex.def} {2023-01-30} {0.98c} {tagpdf~driver~for~luatex} { \fontencoding{TU}\fontfamily{lmr}\fontseries{m}\fontshape{n}\fontsize{10pt}{10pt}\selectfont diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty index 254b5c1c7fa..8de786b494d 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-mc-generic.dtx -\ProvidesExplPackage {tagpdf-mc-code-generic} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-mc-code-generic} {2023-01-30} {0.98c} {part of tagpdf - code related to marking chunks - generic mode} \__tag_prop_new:N \g__tag_MCID_byabspage_prop diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty index e7ec855ee54..15a1a0d024b 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-mc-luacode.dtx -\ProvidesExplPackage {tagpdf-mc-code-lua} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf-mc-code-lua} {2023-01-30} {0.98c} {tagpdf - mc code only for the luamode } \hook_gput_code:nnn{begindocument}{tagpdf/mc} { diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def index c73e98afa38..1bcd546b017 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-data.dtx -%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2023-01-30} {0.98c} %% {latex-book} {https://www.latex-project.org/ns/book/2022}{} chapter, H1,pdf2, section, H2,pdf2, diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-inline.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-inline.def index 05f27502519..5323306b4e4 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-inline.def +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-inline.def @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-data.dtx -%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2023-01-30} {0.98c} %% {latex-inline} {https://www.latex-project.org/ns/inline/2022}{} chapter, Span, pdf2, section, Span, pdf2, diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def index b6275cd847d..aa90f54f130 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-data.dtx -%% \ProvidesExplFile {tagpdf-ns-latex.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-latex.def} {2023-01-30} {0.98c} %% {latex} {https://www.latex-project.org/ns/dflt/2022}{} title, Title, pdf2, part, Title, pdf2, diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def index a3e97ada0ba..f9404e71730 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-data.dtx -%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2023-01-30} {0.98c} abs,,, and,,, annotation,,, diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def index b6bb6391cbe..2cfe3a9c4e9 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-data.dtx -%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2023-01-30} {0.98c} %% {pdf} {http://iso.org/pdf/ssn}{} StructTreeRoot,StructTreeRoot,pdf,D, Document,Document,pdf,D, diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def index 6c2c31df27c..d89a25be779 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-data.dtx -%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2023-01-30} {0.98c} %% {pdf2} {http://iso.org/pdf2/ssn}{} Document,Document,pdf2,D, Part,Part,pdf2,G, diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv index 96faf168ae9..e29387bfefc 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-data.dtx -%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2023-01-30} {0.98c} ,,,StructTreeRoot,Document,DocumentFragment,Art,Part,Div,Sect,Aside,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Title,Sub,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Em,Strong,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,FENote,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,math,mathml,Artifact,MC Document,both,document level,1,0..n,0..n,∅,‡,‡,∅,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅ DocumentFragment,2.0,document level,∅,0..n,0..n,0..n,‡,‡,0..n,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅*,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,0..n,∅ diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv index cd41098083d..fac6a9312d5 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf-data.dtx -%% \ProvidesExplFile {tagpdf-parent-child.csv} {2023-01-24} {0.98b} +%% \ProvidesExplFile {tagpdf-parent-child.csv} {2023-01-30} {0.98c} ,,,StructTreeRoot,Document,Art,Part,Div,Sect,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,MC Document,both,document level,1,0..n,∅,‡,‡,∅,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅ Art,1.7,grouping,∅,0..n,∅,‡,‡,0..n,0..n,‡,∅,∅,∅,0..n,∅,0..n,∅,∅,∅,0..1,0..1,∅,∅,∅,0..n,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅,∅,0..n,0..n,∅,∅,∅,0..n,0..n,∅,∅ diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua index b4accfdb906..d2ee6479afb 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua @@ -24,8 +24,8 @@ local ProvidesLuaModule = { name = "tagpdf", - version = "0.98b", --TAGVERSION - date = "2023-01-24", --TAGDATE + version = "0.98c", --TAGVERSION + date = "2023-01-30", --TAGDATE description = "tagpdf lua code", license = "The LATEX Project Public License 1.3c" } diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty index 8591ee5f978..38f35c6b2df 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty @@ -28,7 +28,7 @@ %% and all files in that bundle must be distributed together. %% %% File: tagpdf.dtx -\ProvidesExplPackage {tagpdf} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdf} {2023-01-30} {0.98c} { A package to experiment with pdf tagging } \bool_if:nF @@ -1709,6 +1709,22 @@ } \cs_generate_variant:Nn\__tag_check_parent_child:nnN {VVN} \cs_generate_variant:Nn\__tag_check_parent_child:nnnnN {VVVVN,nVnVN,VVnnN} +\prg_set_protected_conditional:Npnn \tag_check_child:nn #1 #2 {T,F,TF} + { + \seq_get:NN\g__tag_struct_stack_seq\l__tag_tmpa_tl + \__tag_struct_get_tag_info:eNN + {\l__tag_tmpa_tl} + \l__tag_get_parent_tmpa_tl + \l__tag_get_parent_tmpb_tl + \__tag_check_parent_child:VVnnN + \l__tag_get_parent_tmpa_tl + \l__tag_get_parent_tmpb_tl + {#1}{#2} + \l__tag_parent_child_check_tl + \int_compare:nNnTF { \l__tag_parent_child_check_tl } < {0} + {\prg_return_false:} + {\prg_return_true:} + } \tl_new:N \l__tag_role_remap_tag_tl \tl_new:N \l__tag_role_remap_NS_tl \cs_new_protected:Npn \__tag_role_remap: { } @@ -2626,7 +2642,7 @@ { attribute-class .code:n = { - \clist_set:No \l__tag_tmpa_clist { #1 } + \clist_set:Nx \l__tag_tmpa_clist { #1 } \seq_set_from_clist:NN \l__tag_tmpb_seq \l__tag_tmpa_clist \seq_set_map_x:NNn \l__tag_tmpa_seq \l__tag_tmpb_seq { @@ -2660,47 +2676,50 @@ { attribute .code:n = % A property (attribute, value currently a dictionary) { - \clist_set:No \l__tag_tmpa_clist { #1 } - \seq_set_from_clist:NN \l__tag_tmpb_seq \l__tag_tmpa_clist - \seq_set_map_x:NNn \l__tag_tmpa_seq \l__tag_tmpb_seq + \clist_set:Nx \l__tag_tmpa_clist { #1 } + \clist_if_empty:NF \l__tag_tmpa_clist { - \pdf_name_from_unicode_e:n {##1} - } - \tl_set:Nx \l__tag_attr_value_tl - { - \int_compare:nT { \seq_count:N \l__tag_tmpa_seq > 1 }{[}%] - } - \seq_map_inline:Nn \l__tag_tmpa_seq - { - \prop_if_in:NnF \g__tag_attr_entries_prop {##1} + \seq_set_from_clist:NN \l__tag_tmpb_seq \l__tag_tmpa_clist + \seq_set_map_x:NNn \l__tag_tmpa_seq \l__tag_tmpb_seq + { + \pdf_name_from_unicode_e:n {##1} + } + \tl_set:Nx \l__tag_attr_value_tl { - \msg_error:nnn { tag } { attr-unknown } { ##1 } + \int_compare:nT { \seq_count:N \l__tag_tmpa_seq > 1 }{[}%] } - \prop_if_in:NnF \g__tag_attr_objref_prop {##1} - {%\prop_show:N \g__tag_attr_entries_prop - \pdf_object_unnamed_write:nx - { dict } + \seq_map_inline:Nn \l__tag_tmpa_seq + { + \prop_if_in:NnF \g__tag_attr_entries_prop {##1} { - \prop_item:Nn\g__tag_attr_entries_prop {##1} + \msg_error:nnn { tag } { attr-unknown } { ##1 } } - \prop_gput:Nnx \g__tag_attr_objref_prop {##1} {\pdf_object_ref_last:} + \prop_if_in:NnF \g__tag_attr_objref_prop {##1} + {%\prop_show:N \g__tag_attr_entries_prop + \pdf_object_unnamed_write:nx + { dict } + { + \prop_item:Nn\g__tag_attr_entries_prop {##1} + } + \prop_gput:Nnx \g__tag_attr_objref_prop {##1} {\pdf_object_ref_last:} + } + \tl_put_right:Nx \l__tag_attr_value_tl + { + \c_space_tl + \prop_item:Nn \g__tag_attr_objref_prop {##1} + } + % \tl_show:N \l__tag_attr_value_tl } \tl_put_right:Nx \l__tag_attr_value_tl - { - \c_space_tl - \prop_item:Nn \g__tag_attr_objref_prop {##1} + { %[ + \int_compare:nT { \seq_count:N \l__tag_tmpa_seq > 1 }{]}% } - % \tl_show:N \l__tag_attr_value_tl - } - \tl_put_right:Nx \l__tag_attr_value_tl - { %[ - \int_compare:nT { \seq_count:N \l__tag_tmpa_seq > 1 }{]}% - } - % \tl_show:N \l__tag_attr_value_tl - \__tag_prop_gput:cnx - { g__tag_struct_\int_eval:n {\c@g__tag_struct_abs_int}_prop } - { A } - { \l__tag_attr_value_tl } + % \tl_show:N \l__tag_attr_value_tl + \__tag_prop_gput:cnx + { g__tag_struct_\int_eval:n {\c@g__tag_struct_abs_int}_prop } + { A } + { \l__tag_attr_value_tl } + } }, } %% File: tagpdf-space.dtx diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty index 3ad0e3de746..dc1c94b9114 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty @@ -1,5 +1,5 @@ %\RequirePackage[enable-debug]{expl3}[2018/06/14] -\ProvidesExplPackage {tagpdfdocu-patches} {2023-01-24} {0.98b} +\ProvidesExplPackage {tagpdfdocu-patches} {2023-01-30} {0.98c} {patches/commands for the tagpdf documentation} \RequirePackage{etoolbox,xpatch} |