diff options
author | Karl Berry <karl@freefriends.org> | 2022-11-04 19:58:53 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2022-11-04 19:58:53 +0000 |
commit | ec15621ba0703851d4eb60c85e0ebe016192ed03 (patch) | |
tree | 494cfc499bfcd6f029b7130110e8c2df11735069 /Master/texmf-dist/source/latex | |
parent | c688d8a9a01696b4f39e65fa8e834c59d49436a0 (diff) |
pdfmanagement-testphase (4nov22)
git-svn-id: svn://tug.org/texlive/trunk@64931 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
20 files changed, 289 insertions, 406 deletions
diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx index c8f8812c45b..f8f939c1d14 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx @@ -82,7 +82,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -969,7 +969,7 @@ %<@@=hyp> % \end{macrocode} % \begin{macrocode} -\ProvidesFile{hgeneric-testphase.def}[2022-09-26 v0.95s % +\ProvidesFile{hgeneric-testphase.def}[2022-11-03 v0.95t % generic Hyperref driver for the LaTeX PDF management testphase bundle] \RequirePackage{etoolbox} %why? diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx index e556f3575c1..f1d4085ac24 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx @@ -45,7 +45,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % @@ -56,27 +56,27 @@ % \begin{macrocode} %<drivers>\ProvidesExplFile %<*dvipdfmx> - {l3backend-testphase-dvipdfmx.def}{2022-09-26}{} + {l3backend-testphase-dvipdfmx.def}{2022-11-03}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvipdfmx} %</dvipdfmx> %<*dvips> - {l3backend-testphase-dvips.def}{2022-09-26}{} + {l3backend-testphase-dvips.def}{2022-11-03}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvips} %</dvips> %<*dvisvgm> - {l3backend-testphase-dvisvgm.def}{2022-09-26}{} + {l3backend-testphase-dvisvgm.def}{2022-11-03}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvisvgm} %</dvisvgm> %<*luatex> - {l3backend-testphase-luatex.def}{2022-09-26}{} + {l3backend-testphase-luatex.def}{2022-11-03}{} {LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (LuaTeX)} %</luatex> %<*pdftex> - {l3backend-testphase-pdftex.def}{2022-09-26}{} + {l3backend-testphase-pdftex.def}{2022-11-03}{} {LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (pdfTeX)} %</pdftex> %<*xdvipdfmx> - {l3backend-testphase-xetex.def}{2022-09-26}{} + {l3backend-testphase-xetex.def}{2022-11-03}{} {LaTeX~PDF~management~testphase~bundle~backend~support: XeTeX} %</xdvipdfmx> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx index afc1eebb5d6..c42ad3d6dc5 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -432,7 +432,7 @@ % \begin{macrocode} %<@@=pdfannot> %<*header> -\ProvidesExplPackage{l3pdfannot}{2022-09-26}{0.95s} +\ProvidesExplPackage{l3pdfannot}{2022-11-03}{0.95t} {PDF-annotations} \RequirePackage{l3pdfdict} %</header> diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx index ceba32f4fdb..a5c56819450 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -208,7 +208,7 @@ % \begin{macrocode} %<@@=pdfdict> %<*header> -\ProvidesExplPackage{l3pdfdict}{2022-09-26}{0.95s} +\ProvidesExplPackage{l3pdfdict}{2022-11-03}{0.95t} {Tools for PDF dictionaries (LaTeX PDF management testphase bundle)} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx index c0c574c2a64..f7d13de933a 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx index 3b3d37f6cc1..f348aba947d 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx @@ -64,7 +64,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx index de498078c69..4fa78b0a708 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx index 3dab822d449..f8f8b7ef123 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx @@ -55,7 +55,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx index f0f46ed31b8..a698c52cc4f 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx @@ -83,7 +83,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx index cd9c7da10e9..350a263a812 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx index effe1ff41ee..6737658cb8c 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx @@ -69,7 +69,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -973,7 +973,7 @@ %<*package> %<@@=pdffield> \NeedsTeXFormat{LaTeX2e} -\ProvidesExplPackage{l3pdffield-testphase}{2022-09-26}{0.95s}% +\ProvidesExplPackage{l3pdffield-testphase}{2022-11-03}{0.95t}% {form fields} % \end{macrocode} % \subsection{hyperref specific command} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx index 257ed6a6f23..54d84d08b51 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -396,7 +396,7 @@ % % \begin{macrocode} %<*header> -\ProvidesExplPackage{l3pdffile}{2022-09-26}{0.95s} +\ProvidesExplPackage{l3pdffile}{2022-11-03}{0.95t} {embedding and referencing files in PDF---LaTeX PDF management testphase bundle} \RequirePackage{l3pdftools} %temporarly!! %</header> diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx index a2ece6cbcdf..f391e0fd98d 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx @@ -57,7 +57,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -632,7 +632,7 @@ %<@@=pdfmanagement> %<*header> % -\ProvidesExplPackage{l3pdfmanagement}{2022-09-26}{0.95s} +\ProvidesExplPackage{l3pdfmanagement}{2022-11-03}{0.95t} {Management of core PDF dictionaries (LaTeX PDF management testphase bundle)} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx index 8e83708d886..32cfb038db1 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -59,27 +59,6 @@ % for PDF standards in general. % The goal is to collect the requirements and to provide code to check and fulfill them. % -% In future is will probably also contain -% code to setup XMP-metadata. -% Until then XMP-metadata can be added by one of two mutual incompatible packages: -% \pkg{hyperxmp} and \pkg{pdfx}. Both -% packages aren't yet compatible with the new PDF management, -% but for \pkg{hyperxmp} some patches are provided, so the basic functions works. -% -% \begin{NOTE}{UF} -% This module should not replace both packages. -% Regarding XMP-metadata its goal -% is to create a skeleton metadata stream, add some core default values -% and to define interfaces that allows other packages -% to add data to this metadata and so to extend them. -% The problems to solve here are -% \begin{itemize} -% \item which tree structure is sensible -% \item how to escape if needed the input (or which tools are needed to allow -% the users to correctly escape their input) -% \item how interface to input data should look -% \end{itemize} -% \end{NOTE} % % \subsection{Verifying requirements of PDF standards} % @@ -408,6 +387,22 @@ % with for example the code needed for ZUGferd, % they will be added in a second step. % +% \subsection{Debug option} +% +% The resulting XMP-packet can be written to an external file by activating a debug +% option +% +% \begin{verbatim} +% \DocumentMetadata{debug={xmp-export}} +% %or +% \DocumentMetadata{debug={xmp-export=true}} +% %or +% \DocumentMetadata{debug={xmp-export=filename}} +% \end{verbatim} +% +% By default the data are written to \verb+\jobname.xmpi+, if a \texttt{filename} is +% given, then \verb+filename.xmpi+ is used instead. \verb+xmp-export=false+ deactivates +% the export. % % \subsection{Encoding and escaping} % @@ -567,7 +562,7 @@ % \begin{macrocode} %<@@=pdfmeta> %<*header> -\ProvidesExplPackage{l3pdfmeta}{2022-09-26}{0.95s} +\ProvidesExplPackage{l3pdfmeta}{2022-11-03}{0.95t} {PDF-Standards---LaTeX PDF management testphase bundle} %</header> % \end{macrocode} @@ -1215,6 +1210,31 @@ xmp .bool_gset:N = \g_@@_xmp_bool } % \end{macrocode} +% XMP debugging option +% \begin{macrocode} +\bool_new:N \g_@@_xmp_export_bool +\str_new:N \g_@@_xmp_export_str + +\keys_define:nn { document / metadata } + { + ,debug / xmp-export .choice: + ,debug / xmp-export / true .code:n= + { + \bool_gset_true:N \g_@@_xmp_export_bool + \str_gset_eq:NN \g_@@_xmp_export_str \c_sys_jobname_str + } + ,debug / xmp-export / false .code:n = + { + \bool_gset_false:N \g_@@_xmp_export_bool + } + ,debug / xmp-export /unknown .code:n = + { + \bool_gset_true:N \g_@@_xmp_export_bool + \str_gset:Nn \g_@@_xmp_export_str { #1 } + } + ,debug / xmp-export .default:n = true + } +% \end{macrocode} % \subsection{Messages} % \begin{macrocode} \msg_new:nnn{pdfmeta}{namespace-defined}{The~xmlns~namespace~`#1`~is~already~declared} @@ -1598,6 +1618,26 @@ % \end{macrocode} % \end{macro} % Some data are stored as unordered (Bag) or ordered lists (Seq) or (Alt). +% The first variant are for simple text without language support: +% \begin{macrocode} +\cs_new_protected:Npn \@@_xmp_add_packet_list_simple:nnnn #1 #2 #3 #4 + %#1 prefix, #2 name, #3 type (Seq/Bag/Alt) #4 a clist + { + \clist_if_empty:nF { #4 } + { + \@@_xmp_add_packet_open:nn {#1}{#2} + \@@_xmp_add_packet_open:nn {rdf}{#3} + \clist_map_inline:nn {#4} + { + \@@_xmp_add_packet_line:nnn + {rdf}{li}{##1} + } + \@@_xmp_add_packet_close:nn{rdf}{#3} + \@@_xmp_add_packet_close:nn {#1}{#2} + } + } +\cs_generate_variant:Nn \@@_xmp_add_packet_list_simple:nnnn {nnnV,nnne} +% \end{macrocode} % Here we check also for the language. % \begin{macrocode} \cs_new_protected:Npn \@@_xmp_add_packet_list:nnnn #1 #2 #3 #4 @@ -2270,14 +2310,13 @@ % \end{macrocode} % pdftype/dc:type % \begin{macrocode} - \tl_if_blank:eTF { \GetDocumentProperties{hyperref/pdftype} } - { - \@@_xmp_add_packet_list:nnne {dc}{type}{Bag}{Text} - } - { - \@@_xmp_add_packet_list:nnne {dc}{type}{Bag} - { { \GetDocumentProperties{hyperref/pdftype} }} - } + \pdfmanagement_get_documentproperties:nNTF { hyperref/pdftype } \l_@@_tmpa_tl + { + \@@_xmp_add_packet_list_simple:nnnV {dc}{type}{Bag}\l_@@_tmpa_tl + } + { + \@@_xmp_add_packet_list_simple:nnnn {dc}{type}{Bag}{Text} + } % \end{macrocode} % pdfpublisher/dc:publisher % \begin{macrocode} @@ -2292,8 +2331,8 @@ % \end{macrocode} % lang/pdflang/dc:language % \begin{macrocode} - \@@_xmp_add_packet_list:nnne {dc}{language}{Bag} - { \l_@@_xmp_doclang_tl } + \@@_xmp_add_packet_list_simple:nnnV + {dc}{language}{Bag}\l_@@_xmp_doclang_tl % \end{macrocode} % pdfidentifier/dc:identifier % \begin{macrocode} @@ -2303,8 +2342,8 @@ % pdfdate/dc:date % \begin{macrocode} \@@_xmp_date_get:nNN {hyperref/pdfdate}\l_@@_tmpa_tl\l_@@_tmpa_seq - \@@_xmp_add_packet_list:nnne {dc}{date}{Seq} - {\@@_xmp_print_date:N\l_@@_tmpa_seq} + \@@_xmp_add_packet_list_simple:nnne + {dc}{date}{Seq}{\@@_xmp_print_date:N\l_@@_tmpa_seq} % \end{macrocode} % The file format % \begin{macrocode} @@ -2515,6 +2554,12 @@ \exp_args:No \__pdf_backend_metadata_stream:n {\g_@@_xmp_packet_tl} \pdfmanagement_add:nnx {Catalog} {Metadata}{\pdf_object_ref_last:} + \bool_if:NT \g_@@_xmp_export_bool + { + \iow_open:Nn\g_tmpa_iow{\g_@@_xmp_export_str.xmpi} + \exp_args:NNo\iow_now:Nn\g_tmpa_iow{\g_@@_xmp_packet_tl} + \iow_close:N\g_tmpa_iow + } } } % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx index c936d36933f..0cce54f81b6 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -211,7 +211,7 @@ % % \begin{macrocode} %<*header> -\ProvidesExplPackage{l3pdftools}{2022-09-26}{0.95s} +\ProvidesExplPackage{l3pdftools}{2022-11-03}{0.95t} {candidate commands for l3pdf---LaTeX PDF management testphase bundle} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx index 609ab32e7a4..1da25fb12f2 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -132,7 +132,7 @@ % \begin{macrocode} %<@@=pdf> %<*header> -\ProvidesExplPackage{l3pdfxform}{2022-09-26}{0.95s} +\ProvidesExplPackage{l3pdfxform}{2022-11-03}{0.95t} {command to create xforms (beta)---LaTeX PDF management testphase bundle} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx index 0142b337b6c..8456882f178 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx @@ -47,49 +47,15 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} % % \section{\pkg{ltdocinit} documentation} -% This small module defines \cs{DocumentMetadata} and the older alias -% \cs{DeclareDocumentMetadata} and the related keys. -% It also defines commands to store document properties in a global container. -% -% When the kernel will provide \cs{DocumentMetadata} directly -% this module will slowly disappear. -% -% \subsection{\cs{DocumentMetadata}/\cs{DeclareDocumentMetadata}} -% -% \begin{function}{\DocumentMetadata,\DeclareDocumentMetadata} -% \begin{syntax} -% \cs{DocumentMetadata}\Arg{key-value list}\\ -% \cs{DeclareDocumentMetadata}\Arg{key-value list} (deprecated) -% \end{syntax} -% \end{function} -% -% Currently there is no dedicated location to declare settings concerning -% a document as a whole. Settings are placed somewhere in the preamble or -% with the class options or even with some package options. -% For some settings this can be too late, -% for example the pdf version can no longer be changed if a -% package has used code which already opened the PDF. -% -% \cs{DocumentMetadata} as a new command -% should unify such settings in one place. -% It should be used before \cs{documentclass}. -% \cs{DocumentMetadata} can be used more than once. -% -% With a \LaTeX{} 2022-06-01 or newer (currently provided as |latex-dev|) the command -% is provided by the kernel and will load the pdfmanagement, -% with older \LaTeX{} the pdfmanagement must be loaded -% first manually with |\RequirePackage{pdfmanagement-testphase}|. -% -% The keys defined for \cs{DocumentMetadata} -% currently allows to set the PDF version, to set the PDF \texttt{/Lang}, -% to uncompress a pdf, to set the language and to declare a few PDF standards -% and to load some colorprofiles. +% This small module defined \cs{DocumentMetadata} but the definition +% has been moved to latex-lab. The documentation can be found in +% \texttt{documentmetadata-support-doc-.pdf} % % \cs{DocumentMetadata} is also used to % activate the new PDF management code and it loads @@ -98,56 +64,68 @@ % which can't be detected automatically like |dvipdfmx|, % must be set in the first \cs{DocumentMetadata}. % -% Currently the following keys are implemented +% +% Here only a few newer keys are defined and the older \cs{DeclareDocumentMetadata} +% is provided. % -% \begin{description} -% \item[\texttt{backend}] Passes the backend name to expl3. This is -% needed only if the needed backend can't be automatically -% determined or if the workflow used requires a special backend. +% The module also defines commands to store document properties in a global container. % -%^^A This will probably be extended to pass the value also to -%^^A packages. +% This module will slowly disappear. +% +% \subsection{\cs{DocumentMetadata}/\cs{DeclareDocumentMetadata}} % -% \item[\texttt{pdfversion}] Sets the PDF version explicitly, e.g., \texttt{pdfversion=1.7} -% \item[\texttt{uncompress}] (no value) Forces an uncompressed pdf -% --- mainly for debugging purposes. +% \begin{function}{\DeclareDocumentMetadata} +% \begin{syntax} +% \cs{DeclareDocumentMetadata}\Arg{key-value list} (deprecated) +% \end{syntax} +% This is an older alias for \cs{DocumentMetadata} +% \end{function} % -% \item[\texttt{lang}] Explicitly sets the Lang entry in the Catalog, -% e.g., \texttt{lang=de-DE}. If not given the default value used is |en-US|. +% Additionally to the keys described in \texttt{documentmetadata-support-doc-.pdf} +% the following keys/values are implemented +% +% \begin{description} % % \item[\texttt{pdfstandard}] Choice key to set the pdf standard. -% Currently |A-1b|, |A-2a|, |A-2b|, |A-2u|, |A-3a|, |A-3b|, |A-3u| and |A-4| -% are accepted as -% values. The casing is irrelevant, |a-1b| works too. -% The underlying code to ensure the requirements (as far as they -% can be ensured) is still incomplete, but a color profile is included and the -% \texttt{/OutputIntent} is set. The |u| variants for example do not force unicode, -% but they will pass the information to hyperref and hyperxmp. The |a| variants +% +% Starting with version 0.95s it is also possible to use the values +% |X-4|, |X-4p|, |X-5g|, |X-5n|, |X-5pg|, |X-6|, |X-6n|, |X-6p|, |UA-1| for +% a PDF/X and PDF/UA standard. These keys set \emph{only} the relevant +% XMP-metadata. +% +% Beside this |A-1b|, |A-2a|, |A-2b|, |A-2u|, |A-3a|, |A-3b|, |A-3u| and |A-4| +% are accepted as values for A-standards. The casing is irrelevant, |a-1b| works too. +% Note that using these +% key doesn't mean that the document actually follows the standard. \LaTeX{} +% can neither ensure nor check all requirements of a standard, and not everything +% it can do theoretically has already been implemented. +% For A-standard a color profile is included and the +% \texttt{/OutputIntent} is set and javascript action in hyperref are suppressed. +% The |u| variants do not force unicode, +% but they will pass the information to hyperref. The |a| variants % do \emph{not} enforce (or even test) a tagged pdf yet. % More information can be found in the documentation % of \pkg{l3pdfmeta}. % -% \item[\texttt{colorprofiles}] This allows to load icc-colorprofiles. Details -% are described in the documentation of \pkg{l3pdfmeta}. +% |pdfstandard| can be used more than once to set overlapping standards, e.g:\\ +% |pdfstandard=A-2b,pdfstandard=X-4,pdfstandard=UA-1| % % \item[\texttt{xmp}] A boolean, if set to false no XMP metadata are added to the PDF. % The default is true. Details are described in the documentation of \pkg{l3pdfmeta}. % % \item[\texttt{testphase}] This key is used to load testphase code. The values it accepts % and their effect will change over time, when testphase packages are added or -% removed or when the code is moved into the kernel. +% removed or when the code is moved into the kernel. New value here are % \begin{description} -% \item[\texttt{phase-I}] -% This value loads code implementing the first phase of the project~\cite{blueprint}, i.e., it -% will load the tagpdf package. It will also activate tagging by issuing -% |\tagpdfsetup{activate,interwordspace}|. This phase -% is frozen. -% \item[\texttt{phase-II}] -% This is the current development phase. -% Currently it differs from \texttt{phase-I} only in one point: It will -% additionally activate tagging of paragraphs with -% |\tagpdfsetup{paratagging}|. In the upcoming months it will -% also enable automatic tagging of other basic document elements. +% \item[\texttt{new-or-1}] This patches a few commands related +% to the output routing. They are needed for the tagging +% of paragraphs, for the tagging of header and footer and +% to allow the PDF management to insert code which avoids that +% links happening at page breaks spills into the header and footer. +% This code is also loaded be the following values. +% \item[\texttt{new-or}] This loads more changes to the output routine required for the +% tagging. It is not compatible with every class! The code is also loaded by the +% \texttt{phase-II} value. % \end{description} % The |testphase| key can only be used in the first \cs{DocumentMetadata}. % @@ -159,6 +137,7 @@ % \item[\texttt{log}] with the values as described in the documentation \pkg{tagpdf}, % \item[\texttt{uncompress}] which does the same as |uncompress| as main key % \item[\texttt{pdfmanagement}] a boolean which allows to deactivate the pdfmanagement. +% This should only be done for debugging! % \item[\texttt{firstaidoff}] This accepts a comma lists of keywords and disables the patches % related to them. More information can be found in the documentation of % \pkg{pdfmanagement-firstaid}. @@ -184,9 +163,10 @@ % using the container. The label |document| is reserved. % \end{function} % -% \begin{function}{\GetDocumentProperties} +% \begin{function}[updated=2022-10-09]{\GetDocumentProperties,\pdfmanagement_get_documentproperties:n} % \begin{syntax} -% \cs{GetDocumentProperties}\Arg{label/property} +% \cs{GetDocumentProperties}\Arg{label/property}\\ +% \cs{pdfmanagement_get_documentproperties:n}\Arg{label/property} % \end{syntax} % Expands to the \meta{value} corresponding to \meta{label/property} % in the container. If \meta{label/property} is missing, @@ -196,6 +176,22 @@ % when appearing in an x-type argument expansion. % \end{function} % +% \begin{function}[added=2022-10-09,TF]{\pdfmanagement_get_documentproperties:nN} +% \begin{syntax} +% \cs{pdfmanagement_get_documentproperties:nNTF}\Arg{label/property} \meta{token list variable}\\ +% ~~~~ \Arg{true code} \Arg{false code} +% \end{syntax} +% If the \meta{label/property} is not present in the document properties +% container, leaves the \meta{false code} in the input stream. +% The value of the +% \meta{token list variable} is not defined in this case and should +% not be relied upon. If the \meta{label/property} is present in the +% container, stores the corresponding \meta{value} in the +% \meta{token list variable} without removing it from the +% container, then leaves the \meta{true code} in the input +% stream. The \meta{token list variable} is assigned locally. +% \end{function} +% % \begin{function}{\ShowDocumentProperties} % \begin{syntax} % \cs{ShowDocumentProperties} @@ -219,7 +215,7 @@ % \begin{macrocode} %<@@=pdfmanagement> %<*header> -\ProvidesExplPackage{ltdocinit}{2022-09-26}{0.95s} +\ProvidesExplPackage{ltdocinit}{2022-11-03}{0.95t} {Initialize document metadata} %</header> % \end{macrocode} @@ -244,248 +240,27 @@ % \end{macrocode} % \end{variable} % \begin{macrocode} -\cs_if_free:NT \DocumentMetadata +\keys_define:nn { document / metadata } { - \keys_define:nn { document / metadata } + ,testphase / new-or-1 .code:n = { - backend .choices:nn = - { dvipdfmx , dvips , dvisvgm , luatex , pdftex , pdfmode , xdvipdfmx , xetex } - { - \sys_load_backend:n {#1} - }, - backend .groups:n = { init } , - } - - \keys_define:nn { document / metadata } - { - ,pdfversion .code:n = - { - \pdf_version_gset:n { #1 } - \AddToDocumentProperties[document]{pdfversion}{#1} - } - ,uncompress .code:n = - { - \pdf_uncompress: - } - ,uncompress .value_forbidden:n = true - ,lang .code:n = - { - \pdfmanagement_add:nnn {Catalog} {Lang}{(#1)} - \AddToDocumentProperties[document]{lang}{#1} - } - %,xmpmeta .bool_gset:N = \g_pdfmeta_xmp_bool %see pdfmeta unused and undefined for now! - % this uses internal command from pdfmeta, it should probably move there ... - ,pdfstandard .code:n = - { - \exp_args:Nnx - \keys_set:nn {document / metadata} {_pdfstandard=\str_uppercase:n{#1}} - } - ,_pdfstandard .choices:nn = - {A-1B,A-2A,A-2B,A-2U,A-3A,A-3B,A-3U,A-4} - { - \prop_if_exist:cT { g__pdfmeta_standard_pdf/#1_prop } - { - \prop_gset_eq:Nc \g__pdfmeta_standard_prop { g__pdfmeta_standard_pdf/#1 _prop } - } - \AddToDocumentProperties [document]{pdfstandard}{#1} - } - ,_pdfstandard / unknown .code:n = - { - \msg_warning:nnn{pdf}{unknown-standard}{#1} - } - ,testphase .multichoice: - ,testphase / tagpdf .code:n = - { - \tl_gput_right:Nn\g_@@_testphase_tl - { - \file_if_exist_input:nF {tagpdf-latex-lab-testphase.ltx} - { - \RequirePackage{tagpdf} - \AddToDocumentProperties [document]{testphase/tagpdf}{loaded} - \tagpdfsetup{activate,paratagging,interwordspace} - \AddToDocumentProperties [document]{tagging}{active} - \AddToDocumentProperties [document]{tagging/para}{active} - \AddToDocumentProperties [document]{tagging/interwordspace}{active} - } - } - } - ,testphase / unknown .code:n = - { - \tl_gput_right:Nn\g_@@_testphase_tl + \tl_gput_right:Nn\g_@@_testphase_tl + { + \file_if_exist_input:nF {new-or-1-latex-lab-testphase.ltx} { - \AddToDocumentProperties [document]{testphase/#1}{loaded} - \file_if_exist_input:nF {#1-latex-lab-testphase.ltx} - { - \msg_warning:nnn{document}{latex-lab-pkg-missing}{#1} - \AddToDocumentProperties [document]{testphase/#1}{missing} - } + \RequirePackage{output-patches-tmp-ltx} } - } - ,activate .multichoice: - ,activate / tagging .code:n = - { - \PackageWarning{pdfmanagement-testphase} - {The~activate~key~is~deprecated.\MessageBreak - Tagging~is~activated~with~'testphase=tagpdf'~directly}{} - } - ,debug .code:n = - { - \keys_set:nn { document / metadata / debug } {#1} - } - ,debug / para .code:n = - { - \AddToHook - { - package/tagpdf/after - } - { - \tagpdfsetup{paratagging-show} - } - } - ,debug / log .code:n = - { - \AddToHook - { - package/tagpdf/after - } - { - \tagpdfsetup{log=#1} - } - } - ,debug / uncompress .code:n = - { - \pdf_uncompress: - } - ,debug / pdfmanagement .bool_gset:N = \g_@@_active_bool - ,debug / firstaidoff .clist_gset:N = \g_@@_firstaidoff_clist + } } - } + } % \end{macrocode} % -% \subsection{\cs{DocumentMetadata}/\cs{DeclareDocumentMetadata}} -% At first we have to define the older alias \cs{DeclareDocumentMetadata} if -% \cs{DocumentMetadata} is already defined in a newer LaTeX version. Here -% we load the latex-lab support (if it hasn't been loaded -% before) and redefine then \cs{DeclareDocumentMetadata} -% to \cs{DocumentMetadata} +% \subsection{\cs{DeclareDocumentMetadata}} +% We define the older alias \cs{DeclareDocumentMetadata} % +% \begin{macro}{\DeclareDocumentMetadata} % \begin{macrocode} -\cs_if_exist:NT \DocumentMetadata - { - \cs_new_protected:Npn \DeclareDocumentMetadata - { - \cs_if_free:NT \DocumentMetadata - { - \file_if_exist_input:nF {documentmetadata-support.ltx}% - { - \@latex@error - {No~support~files~for~\noexpand\DeclareDocumentMetadata~found} - { - Is~the~'LaTeX-lab'~bundle~installed? - \MessageBreak - Without~it,~the~declaration~is~ignored. - } - \let\DeclareDocumentMetadata\@gobble - } - } - \RenewDocumentCommand \DeclareDocumentMetadata {} - { \DocumentMetadata } - \DocumentMetadata - } - } -% \end{macrocode} -% Now we provide a definition for \cs{DocumentMetadata} if it doesn't exist yet. -% \begin{macrocode} -\cs_if_free:NT \DocumentMetadata - { -% \end{macrocode} -% \cs{DocumentMetadata} should for now not be used after -% \cs{documentclass} so we error in this case. It can be used more than once -% but follow-up calls should not do the initialization code. -% \begin{macrocode} - \prop_gput:Nnn \g_msg_module_type_prop { document } { LaTeX } - \prop_gput:Nnn \g_msg_module_name_prop { document } { DocumentMetadata } - \msg_new:nnn - { document } { setup-after-documentclass } - { - \token_to_str:N \DocumentMetadata \c_space_tl - should~be~used~only~before~\token_to_str:N\documentclass - } - \msg_new:nnn - { document } { latex-lab-pkg-missing } - { - LaTeX-lab~package~'#1'~not~found. - } -% \end{macrocode} -% \begin{macro}{\DocumentMetadata} -% \begin{macrocode} - \NewDocumentCommand\DocumentMetadata { m } - { - \cs_if_eq:NNTF \documentclass \@twoclasseserror - { \msg_error:nn { document }{ setup-after-documentclass } } - { -% \end{macrocode} -% The wanted backend must be detected first, we read the init key and then -% force the loading by loading expl3. -% The backend can contains management commands, so the boolean should be set to true first. -% \begin{macrocode} - \bool_gset_true:N \g_@@_active_bool - \keys_set_groups:nnn { document / metadata} {init}{ #1 } - %if no backend has been loaded force it now: - \str_if_exist:NF \c_sys_backend_str - { - \sys_load_backend:n {} - } -% \end{macrocode} -% Now we load the extra backend code -% \begin{macrocode} - \ExplSyntaxOn\makeatletter - \file_input:n {l3backend-testphase-\c_sys_backend_str.def} - \ExplSyntaxOff\makeatother -% \end{macrocode} -% set the default language, process the rest of the keys, -% and setup the generic driver -% \begin{macrocode} - \keys_set_filter:nnn { document / metadata } { init } { lang=en-US, #1 } - \bool_if:NT \g_@@_active_bool - { - \PassOptionsToPackage{customdriver=hgeneric-testphase}{hyperref} - } -% \end{macrocode} -% \cs{pdfmanagement_add:nnn} has collected values in this hook. -% \begin{macrocode} - \hook_use_once:n {pdfmanagement/add} -% \end{macrocode} -% Redefine \cs{DocumentMetadata} so that it only process the keys. -% We need to update the hyperref option if the active status changes. -% \begin{macrocode} - \RenewDocumentCommand\DocumentMetadata { m } - { - \keys_set_filter:nnn { document / metadata } { init } { ##1 } - \bool_if:NTF \g_@@_active_bool - { - \str_remove_all:cn - {opt@hyperref.sty}{customdriver=hgeneric-testphase} - \PassOptionsToPackage - {customdriver=hgeneric-testphase}{hyperref} - } - { - \str_remove_all:cn - {opt@hyperref.sty}{customdriver=hgeneric-testphase} - } - } -% \end{macrocode} -% Load more modules, the testphase code and the firstaid code. -% \begin{macrocode} - \g_@@_testphase_tl - \RequirePackage{pdfmanagement-firstaid} - } - } -% \end{macrocode} -% At last we need to provide the older alias here too -% \begin{macrocode} - \NewDocumentCommand\DeclareDocumentMetadata{}{\DocumentMetadata} - } +\NewCommandCopy\DeclareDocumentMetadata\DocumentMetadata % \end{macrocode} % \end{macro} % @@ -517,6 +292,33 @@ } % \end{macrocode} % \end{macro} +% For uses in modules (e.g. l3pdfmeta) +% we provide an expl3 version without the xparse overhead: +% +% \begin{macro}[EXP]{\pdfmanagement_get_documentproperties:n} +% \begin{macrocode} +\cs_new:Npn\pdfmanagement_get_documentproperties:n #1 + { + \prop_item:Nn \g_@@_documentproperties_prop {#1} + } +% \end{macrocode} +% \end{macro} +% The following allows to retrieve the values with branching. +% \begin{macro}[added=2022-10-09]{\pdfmanagement_get_documentproperties:nNTF} +% \begin{macrocode} +\prg_new_protected_conditional:Npnn + \pdfmanagement_get_documentproperties:nN #1#2 { T , F , TF } + { + \prop_get:NnNTF \g_@@_documentproperties_prop {#1} #2 + { + \prg_return_true: + } + { + \prg_return_false: + } + } +% \end{macrocode} +% \end{macro} % \begin{macro}{\ShowDocumentProperties} % \begin{macrocode} \msg_new:nnn { pdfmanagement } { show-properties } diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/output-patches-tmp-ltx.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/output-patches-tmp-ltx.dtx index 341bc1f7672..38f0f38641c 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/output-patches-tmp-ltx.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/output-patches-tmp-ltx.dtx @@ -52,7 +52,7 @@ % % \begin{macrocode} \ProvidesPackage{output-patches-tmp-ltx} - [2021-08-20 v0.95 Temporary patches of output commands] + [2022-10-29 v0.96 Temporary output patches for tagging and better link support] \RequirePackage{etoolbox} % \end{macrocode} % @@ -144,7 +144,7 @@ % % \subsection{Interrupt hooks} % This requires the l3pdfannot module! -% We add the code here an not in hyperref, as it should also work with links +% We add the code here and not in hyperref, as it should also work with links % created directly with the l3pdfannot commands. The file is only % loaded by the pdfmanagement, so no need to test if the commands exist. % \begin{macrocode} @@ -157,9 +157,15 @@ % \end{macrocode} % % \begin{macrocode} -\endinput %</package> % \end{macrocode} -% + +% \begin{macrocode} +%<*latex-lab> +\ProvidesFile{new-or-1-latex-lab-testphase.ltx} + [2022-10-26 v0.8 Temporary output patches for tagging and better link support] +\RequirePackage{latex-lab-testphase-new-or-1} +%</latex-lab> +% \end{macrocode} % \Finale % diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx index e7d445088c3..45174deaae7 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -63,7 +63,7 @@ % |debug={firstaidoff={name1,name2,...},...}|. % \begin{macrocode} %<*package> -\ProvidesExplPackage{pdfmanagement-firstaid}{2022-09-26}{0.95s} +\ProvidesExplPackage{pdfmanagement-firstaid}{2022-11-03}{0.95t} {LaTeX PDF management testphase bundle / firstaid-patches} %<@@=pdfmanagement> @@ -86,6 +86,9 @@ \msg_new:nnn { pdfmanagement } { firstaid-disabled } { The~loading~of~package~#1~is~disabled.\\ It~is~not~compatible~with~the~PDF~management. } +\msg_new:nnn { pdfmanagement } { firstaid-too-old } + { Package~#1~is~too~old~and~not~compatible.\\ + Get~at~least~version~#2.} % \end{macrocode} % \subsection{Fontspec} @@ -124,24 +127,35 @@ } % \end{macrocode} % \subsection{Output routine} -% This load as few patches for the LaTeX output routine commands. They add -% hooks for the interruption of links and for paragraph tagging. +% The patches for the LaTeX output routine commands for the tagging +% of the header/footer, the suppressing of links +% and the patch to multicol for the para tagging +% by default, but must be requested with the key \texttt{testphase=new-or-1}. +% But until latex-lab has been updated we must ensure that they are loaded with +% the various phases. % \begin{macrocode} \bool_if:NT \g_@@_firstaid_output_bool { - \RequirePackage{output-patches-tmp-ltx} - } % \end{macrocode} - -% \subsection{\pkg{beamer}} -% \pkg{beamer} makes use of the now unsupported syntax |linkbordercolor={.5 .5 .5}|. -% To avoid an error we define this color as a name. +% This catches also phase-II and tagpdf. % \begin{macrocode} -\bool_if:NT \g_@@_firstaid_beamer_bool - { - \color_set:nnn{.5~.5~.5}{rgb}{0.5,0.5,0.5} + \file_if_exist:nF {new-or-1-latex-lab-testphase.ltx} + { + \AddToHook{package/latex-lab-testphase-new-or/after} + {\RequirePackage{output-patches-tmp-ltx}} +% \end{macrocode} +% This is for phase-I +% \begin{macrocode} + \AddToHook{package/tagpdf/after} + {\RequirePackage{output-patches-tmp-ltx}} + } } % \end{macrocode} + +% \subsection{\pkg{beamer}} +% \pkg{beamer} made use of the now unsupported syntax |linkbordercolor={.5 .5 .5}|. +% This has been changed so the patch has been removed. +% % \subsection{\pkg{color}} % % \pkg{color} is not incompatible, but the new \pkg{hyperref} driver makes use of @@ -296,19 +310,35 @@ % \end{macrocode} % \subsection{\pkg{transparent}} -% We simply replace by the new version. +% We check if the new version is used and issue a warning otherwise % \begin{macrocode} \bool_if:NT \g_@@_firstaid_transparent_bool { - \declare@file@substitution{transparent.sty}{transparent-ltx.sty} + \AddToHook{package/transparent/after} + { + \@ifpackagelater{transparent}{2022-10-27}{} + { + \msg_warning:nnnn{pdfmanagement}{firstaid-too-old} + {transparent} + {1.5~from~2022-10-27} + } + } } % \end{macrocode} % \subsection{\pkg{pdflscape}} -% We simply replace by the new version. +% We check if the new version is used and issue a warning otherwise % \begin{macrocode} \bool_if:NT \g_@@_firstaid_pdflscape_bool { - \declare@file@substitution{pdflscape.sty}{pdflscape-ltx.sty} + \AddToHook{package/pdflscape/after} + { + \@ifpackagelater{pdflscape}{2022-10-27}{} + { + \msg_warning:nnnn{pdfmanagement}{firstaid-too-old} + {pdflscape} + {0.13~from~2022-10-27} + } + } } % \end{macrocode} % @@ -319,17 +349,17 @@ { \disable@package@load{hyperxmp}{\msg_warning:nnn{pdfmanagement}{firstaid-disabled}{hyperxmp}} \disable@package@load{pdfx} {\msg_warning:nnn{pdfmanagement}{firstaid-disabled}{pdfx}} - \AddToHook - { - file/doclicense.sty/after - } - { - \hypersetup - { - pdfcopyright = {\doclicenseLongTextForHyperref}, - pdflicenseurl = {\doclicenseURL}, - } - } + \AddToHook{package/doclicense/after} + { + \AtBeginDocument + { + \hypersetup + { + pdfcopyright = {\doclicenseLongTextForHyperref}, + pdflicenseurl = {\doclicenseURL}, + } + } + } } %</package> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx index ffc2dca20c9..e9b145d964f 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.95s, released 2022-09-26} +% \date{Version 0.95t, released 2022-11-03} % % \maketitle % \begin{documentation} @@ -386,7 +386,7 @@ % \begin{macrocode} %<@@=pdf> %<*package> -\ProvidesExplPackage{pdfmanagement-testphase}{2022-09-26}{0.95s} +\ProvidesExplPackage{pdfmanagement-testphase}{2022-11-03}{0.95t} {LaTeX PDF management testphase bundle} \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} \IfFormatAtLeastTF{2020-10-01}{}{ @@ -414,7 +414,7 @@ % to allow to set it in the document. % \begin{macrocode} %<*header> -\ProvidesExplFile{pdfmanagement-testphase.ltx}{2022-09-26}{0.95s} +\ProvidesExplFile{pdfmanagement-testphase.ltx}{2022-11-03}{0.95t} {PDF~management~code~(testphase)} %</header> %<*package> |