texlive[68840] Master/texmf-dist: postnotes (14nov23)

commits+karl at tug.org commits+karl at tug.org
Tue Nov 14 22:03:38 CET 2023


Revision: 68840
          https://tug.org/svn/texlive?view=revision&revision=68840
Author:   karl
Date:     2023-11-14 22:03:38 +0100 (Tue, 14 Nov 2023)
Log Message:
-----------
postnotes (14nov23)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/postnotes/CHANGELOG.md
    trunk/Master/texmf-dist/doc/latex/postnotes/README.md
    trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-code.pdf
    trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-code.tex
    trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-doc.pdf
    trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-doc.tex
    trunk/Master/texmf-dist/source/latex/postnotes/postnotes.dtx
    trunk/Master/texmf-dist/source/latex/postnotes/postnotes.ins
    trunk/Master/texmf-dist/tex/latex/postnotes/postnotes.sty

Modified: trunk/Master/texmf-dist/doc/latex/postnotes/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/postnotes/CHANGELOG.md	2023-11-14 21:03:28 UTC (rev 68839)
+++ trunk/Master/texmf-dist/doc/latex/postnotes/CHANGELOG.md	2023-11-14 21:03:38 UTC (rev 68840)
@@ -1,7 +1,18 @@
 # Changelog
 
-## [Unreleased](https://github.com/gusbrs/postnotes/compare/v0.2.6...HEAD)
+## [Unreleased](https://github.com/gusbrs/postnotes/compare/v0.2.7...HEAD)
 
+## [v0.2.7](https://github.com/gusbrs/postnotes/compare/v0.2.6...v0.2.7) (2023-11-14)
+
+### Added
+- Provide `\pnidnextnote`, with usage example in the manual.
+- User manual example for section splitting using section redefinition.
+
+### Changed
+- Don't use `expl3` public scratch temporary variables.
+- Prefer `e-type` expansion.
+- Require 2023-11-01 LaTeX kernel.
+
 ## [v0.2.6](https://github.com/gusbrs/postnotes/compare/v0.2.5...v0.2.6) (2023-08-21)
 
 ### Fixed

Modified: trunk/Master/texmf-dist/doc/latex/postnotes/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/postnotes/README.md	2023-11-14 21:03:28 UTC (rev 68839)
+++ trunk/Master/texmf-dist/doc/latex/postnotes/README.md	2023-11-14 21:03:38 UTC (rev 68840)
@@ -2,8 +2,8 @@
 
 **Endnotes for LaTeX**
 
-Author: Gustavo Barros
-Maintainer: Gustavo Barros
+Author: gusbrs
+Maintainer: gusbrs
 
 `postnotes` is an endnotes package for LaTeX.  Its user interface provides
 means to print multiple sections of notes along the document, and to subdivide

Modified: trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-code.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-code.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-code.tex	2023-11-14 21:03:28 UTC (rev 68839)
+++ trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-code.tex	2023-11-14 21:03:38 UTC (rev 68840)
@@ -4,7 +4,7 @@
 %
 % This file is part of the LaTeX package "postnotes".
 %
-% Copyright (C) 2022-2023  Gustavo Barros
+% Copyright (C) 2022-2023  gusbrs
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -17,8 +17,7 @@
 % version 2005/12/01 or later.
 %
 %
-% This work is "maintained" (as per LPPL maintenance status) by
-% Gustavo Barros.
+% This work is "maintained" (as per LPPL maintenance status) by gusbrs.
 %
 % This work consists of the files postnotes.dtx,
 %                                 postnotes.ins,

Modified: trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-doc.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-doc.tex	2023-11-14 21:03:28 UTC (rev 68839)
+++ trunk/Master/texmf-dist/doc/latex/postnotes/postnotes-doc.tex	2023-11-14 21:03:38 UTC (rev 68840)
@@ -4,7 +4,7 @@
 %
 % This file is part of the LaTeX package "postnotes".
 %
-% Copyright (C) 2022-2023  Gustavo Barros
+% Copyright (C) 2022-2023  gusbrs
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -17,8 +17,7 @@
 % version 2005/12/01 or later.
 %
 %
-% This work is "maintained" (as per LPPL maintenance status) by
-% Gustavo Barros.
+% This work is "maintained" (as per LPPL maintenance status) by gusbrs.
 %
 % This work consists of the files postnotes.dtx,
 %                                 postnotes.ins,
@@ -64,10 +63,7 @@
 \hypersetup{hidelinks}
 
 \usepackage{zref-clever}
-\zcsetup{
-  cap,
-  countertype = { pnexample = example } ,
-}
+\zcsetup{cap}
 \usepackage{zref-titleref}
 \usepackage{zref-check}
 
@@ -79,13 +75,24 @@
     \chapter ,
     \@mkboth ,
     \@textsuperscript ,
+    \thechapter ,
     \AddToHook ,
+    \AddToHookNext ,
     \counterwithin ,
     \tableofcontents ,
     \ExplSyntaxOn ,
     \ExplSyntaxOff ,
     \NewDocumentCommand ,
+    \RenewDocumentCommand ,
+    \NewCommandCopy ,
+    \IfBooleanTF ,
+    \IfNoValueTF ,
     \tl_if_eq:NNTF ,
+    \tl_new:N ,
+    \tl_gset:Nv ,
+    \prop_new:N ,
+    \prop_gput:NeV ,
+    \prop_item:NV ,
     \bool_case:nF ,
     \str_if_eq_p:ee ,
     \prg_replicate:nn ,
@@ -113,6 +120,7 @@
     \pnthesection ,
     \pnthechapternextnote ,
     \pnthesectionnextnote ,
+    \pnidnextnote ,
     \pnhdpagefirst ,
     \pnhdpagelast ,
     \pnhdchapfirst ,
@@ -123,6 +131,10 @@
     \pnhdnamelast ,
     \mypnheader ,
     \demochapter ,
+    \origlatexchapter ,
+    \l_postnotes_note_id_tl ,
+    \g_my_currentname_tl ,
+    \g_my_names_prop ,
   }
 }
 \lstset{
@@ -139,7 +151,9 @@
 \lstnewenvironment{pnexample}[1][]{%
   \renewcommand{\lstlistingname}{Example}%
   \renewcommand*\theHlstlisting{ht.\thelstlisting}%
+  \zcsetup{countertype={lstlisting=example}}%
   \lstset{#1}%
+  \stepcounter{pnexample}%
   \setcounter{lstlisting}{\value{pnexample}}%
 }{}
 \lstnewenvironment{pnsnippet}[1][]{%
@@ -146,15 +160,6 @@
   \renewcommand{\lstlistingname}{Example}%
   \lstset{#1}%
 }{}
-\ExplSyntaxOn
-\makeatletter
-\lst at AddToHook { PreInit }
-  {
-    \cs_if_exist:cT { c@ \lstenv at name }
-      { \exp_args:Nx \refstepcounter { \lstenv at name } }
-  }
-\makeatother
-\ExplSyntaxOff
 
 \setlength{\marginparsep}{2\labelsep}
 
@@ -168,7 +173,6 @@
 
 \title{%
   The \pkg{postnotes} package%
-  \thanks{This file describes \fileversion, released \filedate.}%
   \texorpdfstring{\\{}\medskip{}}{ - }%
   User manual%
   \texorpdfstring{\medskip{}}{}%
@@ -175,11 +179,11 @@
 }
 
 \author{%
-  Gustavo Barros%
-  \thanks{\url{https://github.com/gusbrs/postnotes}}%
-}
+  \texorpdfstring{\texttt{gusbrs}\\[0.8em]
+  \url{https://github.com/gusbrs/postnotes}\\
+  \url{https://www.ctan.org/pkg/postnotes}}{gusbrs}}
 
-\date{\filedate}
+\date{Version \fileversion\ -- \filedate}
 
 \maketitle
 
@@ -505,7 +509,7 @@
 \DescribeOption{exp} %
 By default, \cs{postnotesection} stores its \meta{text} argument with ``no
 manipulation''.  The \opt{exp} option allows one to fully expand
-(\texttt{x}-type expansion) \meta{text} in place before storing it.  It is a
+(\texttt{e}-type expansion) \meta{text} in place before storing it.  It is a
 boolean option, and the option given with no value is equivalent to
 \texttt{exp=true}.
 
@@ -536,6 +540,7 @@
 \DescribeMacro{\pnthesection} %
 \DescribeMacro{\pnthechapternextnote} %
 \DescribeMacro{\pnthesectionnextnote} %
+\DescribeMacro{\pnidnextnote} %
 Just like with \cs{postnote}, the contents of \cs{postnotesection} are not
 expanded in place, but rather stored with ``no manipulation'' to be typeset
 later at \cs{printpostnotes}.  For this reason, some contextual information is
@@ -560,6 +565,7 @@
 \cs{postnote}, that is), the first in the chapter, and already inside it, thus
 with an expected value of the \texttt{chapter} counter.  Similarly,
 \cs{pnthesectionnextnote} contains the value of \cs{thesection} for the ``next
+note''.  \cs{pnidnextnote}, in turn, stores the Id number of the ``next
 note''.  Of course, the ``next note'' variables are \emph{proxies}, but they
 are meant to support the automation of the subdivision of the notes through
 the use of \texttt{before} hooks to the document's sectioning commands, in
@@ -622,10 +628,14 @@
 \cs{tableofcontents} does not generate a spurious notes section at
 \cs{printpostnotes} (as long as you don't place a note in a sectioning command
 with no short argument, which you shouldn't do anyway).  But what if we have,
-among mostly numbered chapters, an ocasional unnumbered one?
-\cs{pnthechapternextnote} wouldn't possibly work in this case.  Since
-immediately successive calls to \cs{postnotesection} override the previous
-ones, it is straightforward to just manually adjust the exception:
+among mostly numbered chapters, an ocasional unnumbered one?\footnote{The
+  example here counts on the lucky circumstance of having only a single
+  initial unnumbered section.  But, in general, if that's not the case,
+  \cs{counterwithin*} is insufficient and the resetting of the
+  \texttt{postnote} counter at unnumbered sections most be handled somehow
+  else.}  \cs{pnthechapternextnote} wouldn't possibly work in this case.
+Since immediately successive calls to \cs{postnotesection} override the
+previous ones, it is straightforward to just manually adjust the exception:
 
 \begin{pnexample}[caption={Fine-tuning automation},label={ex:sect:fine-auto}]
 \documentclass{book}
@@ -649,6 +659,108 @@
 \end{document}
 \end{pnexample}
 
+If one wants to use section names/titles, the technique above (of using
+something similar to \cs{pnthechapternextnote}) is less useful, since if the
+first note in the section occurs within a subsection we would lose the
+information of interest.  So we have a little more work to do in this case.
+\zcref{ex:sect:names} uses the \texttt{cmd/chapter/before} hook to store the
+value of \cs{@currentlabelname} in a dedicated variable after the next call to
+\cs{NR at gettitle} (presuming the use of \pkg{nameref}, through \pkg{hyperref}).
+We then store the value of this variable for each note using the
+\texttt{postnotes/note/store} hook and the note's Id number
+\cs{l_postnotes_note_id_tl}.  Finally we can retrieve this stored value using
+\cs{pnidnextnote} inside \cs{postnotesection}.  Indeed, this example is also
+meant to illustrate the general technique for storing/restoring variables of
+interest for this purpose.
+
+\begin{pnexample}[caption={Section names},label={ex:sect:names}]
+\documentclass{book}
+\usepackage{postnotes}
+\ExplSyntaxOn
+\tl_new:N \g_my_currentname_tl
+\prop_new:N \g_my_names_prop
+\AddToHook{cmd/chapter/before}{
+  \AddToHookNext{cmd/NR at gettitle/after}{
+    \tl_gset:Nv \g_my_currentname_tl { @currentlabelname } } }
+\AddToHook{postnotes/note/store}{
+  \prop_gput:NeV \g_my_names_prop
+    { \l_postnotes_note_id_tl } \g_my_currentname_tl }
+\AddToHook{cmd/chapter/before}{
+  \postnotesection{
+    \section*{Notes~to~\prop_item:NV \g_my_names_prop \pnidnextnote}}}
+\ExplSyntaxOff
+\counterwithin*{postnote}{chapter}
+\usepackage{hyperref}
+\begin{document}
+\chapter*{Introduction}
+Intro.\postnote{Intro note.}
+\chapter{First chapter}
+Foo.\postnote{Foo note.}
+Bar.\postnote{Bar note.}
+\chapter{Second chapter}
+Baz.\postnote{Baz note.}
+Boo.\postnote{Boo note.}
+\printpostnotes
+\end{document}
+\end{pnexample}
+
+While \pkg{postnotes} goes through great lengths to avoid tampering with
+sectioning commands, the fact that in general we cannot use \texttt{cmd} hooks
+after \cs{chapter} or \cs{section} does complicate things.  And
+\zcref{ex:sect:names} is indeed a good illustration of how a supposedly simple
+task can become quite convoluted if we are not allowed to observe the
+variables of interest \emph{after} the sectioning commands.  However, things
+are quite different from the perspective of a user, considering the problem at
+the document level.  In this case, the definition of the sectioning commands
+is known, and unique, so that it may make sense to use of the traditional
+technique of storing the definition of the sectioning command, and then
+redefining it to do what it used to, plus something
+else.\footnote{\username{egreg} commonly applies the technique for the same
+  purpose in answers using \pkg{endnotes} at TeX.SX.  For example:
+  \url{https://tex.stackexchange.com/a/62425},
+\url{https://tex.stackexchange.com/a/109566}, and
+\url{https://tex.stackexchange.com/a/85001}.  But things are somewhat simpler
+with \pkg{postnotes}, since there's no need to handle the case of sections
+with no notes, given that empty \cs{postnotesection}s are already skipped.}
+In which case, we can set \cs{postnotesection}s with full generality and
+flexibility.
+
+\begin{pnexample}[caption={Redefining sections},label={ex:sect:redefined}]
+\documentclass{book}
+\usepackage{postnotes}
+\counterwithin*{postnote}{chapter}
+\NewCommandCopy\origlatexchapter\chapter
+\RenewDocumentCommand{\chapter}{som}{%
+  \IfBooleanTF{#1}{%
+    \origlatexchapter*{#3}%
+    \setcounter{postnote}{0}%
+    \postnotesection{\section*{Notes to ``#3''}}%
+  }{%
+    \IfNoValueTF{#2}{%
+      \origlatexchapter{#3}%
+    }{%
+      \origlatexchapter[#2]{#3}%
+    }%
+    \postnotesection{\section*{Notes to chapter \pnthechapter}}%
+  }%
+}
+\usepackage{hyperref}
+\begin{document}
+\chapter*{Introduction}
+Intro.\postnote{Intro note.}
+\chapter{First chapter}
+Foo.\postnote{Foo note.}
+Bar.\postnote{Bar note.}
+\chapter{Second chapter}
+Baz.\postnote{Baz note.}
+Boo.\postnote{Boo note.}
+\printpostnotes
+\end{document}
+\end{pnexample}
+
+Things could easily get fancier, of course.  But that's the basic structure.
+
+
 \section{Headers}
 \zlabel{sec:headers}
 

Modified: trunk/Master/texmf-dist/source/latex/postnotes/postnotes.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/postnotes/postnotes.dtx	2023-11-14 21:03:28 UTC (rev 68839)
+++ trunk/Master/texmf-dist/source/latex/postnotes/postnotes.dtx	2023-11-14 21:03:38 UTC (rev 68840)
@@ -4,7 +4,7 @@
 %
 % This file is part of the LaTeX package "postnotes".
 %
-% Copyright (C) 2022-2023  Gustavo Barros
+% Copyright (C) 2022-2023  gusbrs
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -17,8 +17,7 @@
 % version 2005/12/01 or later.
 %
 %
-% This work is "maintained" (as per LPPL maintenance status) by
-% Gustavo Barros.
+% This work is "maintained" (as per LPPL maintenance status) by gusbrs.
 %
 % This work consists of the files postnotes.dtx,
 %                                 postnotes.ins,
@@ -95,7 +94,6 @@
 %
 % \title{^^A
 %   The \pkg{postnotes} package^^A
-%   \thanks{This file describes \fileversion, released \filedate.}^^A
 %   \texorpdfstring{\\{}\medskip{}}{ - }^^A
 %   Code documentation^^A
 %   \texorpdfstring{\medskip{}}{}^^A
@@ -102,11 +100,11 @@
 % }
 %
 % \author{^^A
-%   Gustavo Barros^^A
-%   \thanks{\url{https://github.com/gusbrs/postnotes}}^^A
-% }
+%   \texorpdfstring{\texttt{gusbrs}\\[0.8em]
+%   \url{https://github.com/gusbrs/postnotes}\\
+%   \url{https://www.ctan.org/pkg/postnotes}}{gusbrs}}
 %
-% \date{\filedate}
+% \date{Version \fileversion\ -- \filedate}
 %
 % \maketitle
 %
@@ -134,11 +132,12 @@
 % simplifies the relation with \pkg{hyperref} (\texttt{ltnews35},
 % \texttt{hyperref-linktarget}): the provision of \cs{MakeLinkTarget} and the
 % definition by the kernel of the starred version of \cs{ref}, which we can
-% use regardless of \pkg{hyperref} being loaded.  So we require the 2022-06-01
-% kernel or newer.
+% use regardless of \pkg{hyperref} being loaded.  Finally, since we followed
+% the move to \texttt{e}-type expansion, to play safe we require the
+% 2023-11-01 kernel or newer.
 %
 %    \begin{macrocode}
-\def\postnotes at required@kernel{2022-06-01}
+\def\postnotes at required@kernel{2023-11-01}
 \NeedsTeXFormat{LaTeX2e}[\postnotes at required@kernel]
 \providecommand\IfFormatAtLeastTF{\@ifl at t@r\fmtversion}
 \IfFormatAtLeastTF{\postnotes at required@kernel}
@@ -153,11 +152,28 @@
 %
 %
 %    \begin{macrocode}
-\ProvidesExplPackage {postnotes} {2023-08-21} {0.2.6}
+\ProvidesExplPackage {postnotes} {2023-11-14} {0.2.7}
   {Endnotes for LaTeX}
 %    \end{macrocode}
 %
 %
+% \begin{macro}
+%   {
+%      \l_@@_tmpa_tl ,
+%      \l_@@_tmpb_tl ,
+%      \l_@@_tmpa_seq ,
+%      \l_@@_tmpa_box ,
+%   }
+%   Temporary scratch variables.
+%    \begin{macrocode}
+\tl_new:N \l_@@_tmpa_tl
+\tl_new:N \l_@@_tmpb_tl
+\seq_new:N \l_@@_tmpa_seq
+\box_new:N \l_@@_tmpa_box
+%    \end{macrocode}
+% \end{macro}
+%
+%
 % \section{Data}
 %
 %
@@ -196,11 +212,11 @@
   {
     \prop_new:c { \@@_data_name:e {#1} }
     \prop_gput:cnn { \@@_data_name:e {#1} } { type } { note }
-    \prop_gput:cnx { \@@_data_name:e {#1} } { mark }
+    \prop_gput:cne { \@@_data_name:e {#1} } { mark }
       { \l_@@_mark_tl }
-    \prop_gput:cnx { \@@_data_name:e {#1} } { counter }
+    \prop_gput:cne { \@@_data_name:e {#1} } { counter }
       { \int_use:N \c at postnote }
-    \prop_gput:cnx { \@@_data_name:e {#1} } { sortnum }
+    \prop_gput:cne { \@@_data_name:e {#1} } { sortnum }
       {
         \bool_if:NTF \l_@@_manual_sortnum_bool
           { \fp_use:N \l_@@_sort_num_fp }
@@ -208,16 +224,16 @@
       }
     \cs_if_exist:cT { chapter }
       {
-        \prop_gput:cnx { \@@_data_name:e {#1} }
+        \prop_gput:cne { \@@_data_name:e {#1} }
           { thechapter } { \thechapter }
       }
-    \prop_gput:cnx { \@@_data_name:e {#1} } { thesection }
+    \prop_gput:cne { \@@_data_name:e {#1} } { thesection }
       { \thesection }
-    \prop_gput:cnx { \@@_data_name:e {#1} } { pnsectname }
+    \prop_gput:cne { \@@_data_name:e {#1} } { pnsectname }
       { \g_@@_section_name_tl }
-    \prop_gput:cnx { \@@_data_name:e {#1} } { pnsectid }
+    \prop_gput:cne { \@@_data_name:e {#1} } { pnsectid }
       { \int_use:N \g_@@_sectid_int }
-    \prop_gput:cnx { \@@_data_name:e {#1} } { multibool }
+    \prop_gput:cne { \@@_data_name:e {#1} } { multibool }
       { \bool_to_str:N \l_@@_maybe_multi_bool }
     \prop_gput:cnn { \@@_data_name:e {#1} } { content } {#2}
     \UseHook { postnotes/note/store }
@@ -239,14 +255,14 @@
     \prop_gput:cnn { \@@_data_name:e {#1} } { type } { section }
     \cs_if_exist:cT { chapter }
       {
-        \prop_gput:cnx { \@@_data_name:e {#1} }
+        \prop_gput:cne { \@@_data_name:e {#1} }
           { thechapter } { \thechapter }
       }
-    \prop_gput:cnx { \@@_data_name:e {#1} } { thesection }
+    \prop_gput:cne { \@@_data_name:e {#1} } { thesection }
       { \thesection }
     \prop_gput:cnn { \@@_data_name:e {#1} } { content } {#2}
   }
-\cs_generate_variant:Nn \@@_store_section:nn { nx }
+\cs_generate_variant:Nn \@@_store_section:nn { ne }
 %    \end{macrocode}
 % \end{macro}
 %
@@ -290,7 +306,7 @@
 %     \end{syntax}
 %    \begin{macrocode}
 \tl_const:Nn \c_@@_ref_prefix_tl { postnote at r }
-\cs_new_protected:Npx \post at note #1#2
+\cs_new_protected:Npe \post at note #1#2
   { \exp_not:N \@newl at bel { \c_@@_ref_prefix_tl } {#1} {#2} }
 %    \end{macrocode}
 % \end{macro}
@@ -303,7 +319,7 @@
   {
     \legacy_if:nT { @filesw }
       {
-        \iow_now:Nx \@mainaux
+        \iow_now:Ne \@mainaux
           { \token_to_str:N \providecommand \token_to_str:N \post at note [2]{} }
       }
   }
@@ -311,7 +327,7 @@
   {
     \legacy_if:nT { @filesw }
       {
-        \iow_now:Nx \@partaux
+        \iow_now:Ne \@partaux
           { \token_to_str:N \providecommand \token_to_str:N \post at note [2]{} }
       }
   }
@@ -345,13 +361,13 @@
   }
 \cs_new_protected:Npn \@@_set_mark_page_label:n #1
   { \@@_set_label:nn { mark@ #1 } { \thepage } }
-\cs_generate_variant:Nn \@@_set_mark_page_label:n { x }
+\cs_generate_variant:Nn \@@_set_mark_page_label:n { e }
 \cs_new_protected:Npn \@@_set_text_page_label:n #1
   { \@@_set_label:nn { text@ #1 } { \int_use:N \c at page } }
-\cs_generate_variant:Nn \@@_set_text_page_label:n { x }
+\cs_generate_variant:Nn \@@_set_text_page_label:n { e }
 \cs_new_protected:Npn \@@_set_print_page_label:n #1
   { \@@_set_label:nn { print@ #1 } { \int_use:N \c at page } }
-\cs_generate_variant:Nn \@@_set_print_page_label:n { x }
+\cs_generate_variant:Nn \@@_set_print_page_label:n { e }
 %    \end{macrocode}
 % \end{macro}
 %
@@ -373,7 +389,7 @@
       { \tl_set:Nv #1 { \c_@@_ref_prefix_tl @ #2 } }
       { \tl_clear:N #1 }
   }
-\cs_generate_variant:Nn \@@_get_pageref:Nn { Nx }
+\cs_generate_variant:Nn \@@_get_pageref:Nn { Ne }
 \cs_new:Npn \@@_extract_pageref:n #1
   {
     \cs_if_exist:cTF { \c_@@_ref_prefix_tl @ #1 }
@@ -646,9 +662,10 @@
 %    \begin{macrocode}
         maketextmark =
          {
-           \hbox_set:Nn \l_tmpa_box { \@textsuperscript { \normalfont ##1 } }
-           \skip_horizontal:n { - \box_wd:N \l_tmpa_box }
-           ##2 \box_use:N \l_tmpa_box ##3
+           \hbox_set:Nn \l_@@_tmpa_box
+             { \@textsuperscript { \normalfont ##1 } }
+           \skip_horizontal:n { - \box_wd:N \l_@@_tmpa_box }
+           ##2 \box_use:N \l_@@_tmpa_box ##3
          } ,
       } ,
     style / pagenote .meta:n =
@@ -893,19 +910,19 @@
         \tl_if_empty:NT \l_@@_mark_tl
           {
             \stepcounter { postnote }
-            \tl_set:Nx \l_@@_mark_tl { \thepostnote }
+            \tl_set:Ne \l_@@_mark_tl { \thepostnote }
           }
-        \seq_gput_right:Nx \g_@@_queue_seq
+        \seq_gput_right:Ne \g_@@_queue_seq
           { \l_postnotes_note_id_tl }
         \UseHook { postnotes/note/begin }
         \cs_set:Npn \@currentcounter { postnote }
-        \cs_set:Npx \@currentlabel { \p at postnote \l_@@_mark_tl }
+        \cs_set:Npe \@currentlabel { \p at postnote \l_@@_mark_tl }
         \MakeLinkTarget* { postnote. \l_postnotes_note_id_tl .mark }
-        \@@_set_mark_page_label:x { \l_postnotes_note_id_tl }
+        \@@_set_mark_page_label:e { \l_postnotes_note_id_tl }
         \@@_set_user_labels:
         \bool_if:NF \l_@@_nomark_bool
           {
-            \@@_typeset_mark:xV
+            \@@_typeset_mark:eV
               { \l_postnotes_note_id_tl } \l_@@_mark_tl
           }
         \@@_store:nn { \l_postnotes_note_id_tl } {#2}
@@ -990,12 +1007,12 @@
             \bool_if:NTF \l_@@_print_plain_mark_stepcounter_bool
               {
                 \stepcounter { postnote }
-                \tl_set:Nx \l_@@_mark_tl { \thepostnote }
+                \tl_set:Ne \l_@@_mark_tl { \thepostnote }
               }
               {
                 \group_begin:
                 \int_incr:N \c at postnote
-                \exp_args:NNNx
+                \exp_args:NNNe
                   \group_end:
                   \tl_set:Nn \l_@@_mark_tl { \thepostnote }
               }
@@ -1037,7 +1054,7 @@
           { \@@_make_mark:nnn {#2} { } { } }
       }
   }
-\cs_generate_variant:Nn \@@_typeset_mark:nn { xV }
+\cs_generate_variant:Nn \@@_typeset_mark:nn { eV }
 \tl_new:N \l_@@_saved_spacefactor_tl
 \cs_new_protected:Npn \@@_typeset_mark_wrapper:n #1
   {
@@ -1044,7 +1061,7 @@
     \mode_leave_vertical:
     \mode_if_horizontal:T
       {
-        \tl_set:Nx \l_@@_saved_spacefactor_tl { \the\spacefactor }
+        \tl_set:Ne \l_@@_saved_spacefactor_tl { \the\spacefactor }
         \nobreak
       }
     #1
@@ -1151,11 +1168,11 @@
     \group_begin:
     \int_gincr:N \g_@@_sectid_int
     \int_gincr:N \g_@@_note_id_int
-    \seq_gput_right:Nx \g_@@_queue_seq { \l_postnotes_note_id_tl }
+    \seq_gput_right:Ne \g_@@_queue_seq { \l_postnotes_note_id_tl }
     \tl_gclear:N \g_@@_section_name_tl
     \keys_set:nn { postnotes/section } {#1}
     \bool_if:NTF \l_@@_section_exp_bool
-      { \@@_store_section:nx { \l_postnotes_note_id_tl } {#2} }
+      { \@@_store_section:ne { \l_postnotes_note_id_tl } {#2} }
       { \@@_store_section:nn { \l_postnotes_note_id_tl } {#2} }
     \group_end:
   }
@@ -1202,6 +1219,7 @@
 %     \pnthechapternextnote ,
 %     \pnthesectionnextnote ,
 %     \pnthepage ,
+%     \pnidnextnote ,
 %   }
 %   User facing variables, aimed at making available some of the notes' and
 %   sections' metadata for the user at specific contexts.
@@ -1208,6 +1226,7 @@
 %    \begin{macrocode}
 \tl_new:N \pnthechapter
 \tl_new:N \pnthesection
+\tl_new:N \pnidnextnote
 \tl_new:N \pnthechapternextnote
 \tl_new:N \pnthesectionnextnote
 \tl_new:N \pnthepage
@@ -1360,6 +1379,7 @@
                     \@@_prop_get:nnN
                       { \l_postnotes_print_note_id_tl }
                       { thesection } \pnthesection
+                    \tl_set:NV \pnidnextnote \l_@@_print_note_id_next_tl
                     \@@_prop_get:nnN
                       { \l_@@_print_note_id_next_tl }
                       { thechapter } \pnthechapternextnote
@@ -1382,13 +1402,13 @@
                 \tl_if_eq:NnF \l_@@_print_type_prev_tl { note }
                   {
                     \bool_if:NTF \l_@@_print_as_list_bool
-                      { \exp_args:Nx \begin { \l_@@_print_env_tl } }
+                      { \exp_args:Ne \begin { \l_@@_print_env_tl } }
                       { \group_begin: }
                     \l_@@_print_format_tl
                   }
                 \group_begin:
                 \UseHook { postnotes/print/note/begin }
-                \@@_get_pageref:Nx \pnthepage
+                \@@_get_pageref:Ne \pnthepage
                   { mark@ \l_postnotes_print_note_id_tl }
                 \@@_prop_get:nnN
                   { \l_postnotes_print_note_id_tl }
@@ -1402,13 +1422,13 @@
                 \cs_set:Npn \@currentcounter { postnotetext }
                 \int_set:Nn \c at postnotetext
                   { \l_@@_print_counter_tl }
-                \cs_set:Npx \@currentlabel
+                \cs_set:Npe \@currentlabel
                   { \p at postnote \l_@@_print_mark_tl }
                 \@@_text_mark_wrapper:n
                   {
                     \MakeLinkTarget*
                       { postnote. \l_postnotes_print_note_id_tl .text }
-                    \@@_set_text_page_label:x
+                    \@@_set_text_page_label:e
                       { \l_postnotes_print_note_id_tl }
                     \@@_typeset_text_mark:eV
                       { \l_postnotes_print_note_id_tl }
@@ -1438,7 +1458,7 @@
                 \tl_if_eq:NnF \l_@@_print_type_next_tl { note }
                   {
                     \bool_if:NTF \l_@@_print_as_list_bool
-                      { \exp_args:Nx \end { \l_@@_print_env_tl } }
+                      { \exp_args:Ne \end { \l_@@_print_env_tl } }
                       { \group_end: }
 %    \end{macrocode}
 % Ensure \cs{par} at the end of \cs{printopostnotes} (see
@@ -1548,19 +1568,19 @@
 \cs_new_protected:Npn \@@_verify_multipass:N #1
   {
     \group_begin:
-    \seq_clear:N \l_tmpa_seq
+    \seq_clear:N \l_@@_tmpa_seq
     \seq_map_inline:Nn #1
       {
-        \@@_prop_get:nnN {##1} { multibool } \l_tmpa_tl
-        \tl_if_eq:NnTF \l_tmpa_tl { true }
+        \@@_prop_get:nnN {##1} { multibool } \l_@@_tmpa_tl
+        \tl_if_eq:NnTF \l_@@_tmpa_tl { true }
           {
             \cs_if_exist:cT
               { \c_@@_ref_prefix_tl @ mark@ ##1 }
-              { \seq_put_right:Nn \l_tmpa_seq {##1} }
+              { \seq_put_right:Nn \l_@@_tmpa_seq {##1} }
           }
-          { \seq_put_right:Nn \l_tmpa_seq {##1} }
+          { \seq_put_right:Nn \l_@@_tmpa_seq {##1} }
       }
-    \seq_gset_eq:NN #1 \l_tmpa_seq
+    \seq_gset_eq:NN #1 \l_@@_tmpa_seq
     \group_end:
   }
 %    \end{macrocode}
@@ -1578,19 +1598,20 @@
     \group_begin:
     \seq_gsort:Nn #1
       {
-        \@@_prop_get:nnN {##1} { pnsectid } \l_tmpa_tl
-        \@@_prop_get:nnN {##2} { pnsectid } \l_tmpb_tl
-        \tl_if_eq:NNTF \l_tmpa_tl \l_tmpb_tl
+        \@@_prop_get:nnN {##1} { pnsectid } \l_@@_tmpa_tl
+        \@@_prop_get:nnN {##2} { pnsectid } \l_@@_tmpb_tl
+        \tl_if_eq:NNTF \l_@@_tmpa_tl \l_@@_tmpb_tl
           {
-            \@@_prop_get:nnN {##1} { type } \l_tmpa_tl
-            \@@_prop_get:nnN {##2} { type } \l_tmpb_tl
+            \@@_prop_get:nnN {##1} { type } \l_@@_tmpa_tl
+            \@@_prop_get:nnN {##2} { type } \l_@@_tmpb_tl
             \bool_lazy_and:nnTF
-              { \str_if_eq_p:Vn \l_tmpa_tl { note } }
-              { \str_if_eq_p:Vn \l_tmpb_tl { note } }
+              { \str_if_eq_p:Vn \l_@@_tmpa_tl { note } }
+              { \str_if_eq_p:Vn \l_@@_tmpb_tl { note } }
               {
-                \@@_prop_get:nnN {##1} { sortnum } \l_tmpa_tl
-                \@@_prop_get:nnN {##2} { sortnum } \l_tmpb_tl
-                \fp_compare:nNnTF { \l_tmpa_tl } > { \l_tmpb_tl }
+                \@@_prop_get:nnN {##1} { sortnum } \l_@@_tmpa_tl
+                \@@_prop_get:nnN {##2} { sortnum } \l_@@_tmpb_tl
+                \fp_compare:nNnTF
+                  { \l_@@_tmpa_tl } > { \l_@@_tmpb_tl }
                   { \sort_return_swapped: }
                   { \sort_return_same:    }
               }
@@ -1763,7 +1784,7 @@
     \tl_clear:N \l_@@_prev_mark_name_tl
     \seq_map_inline:Nn #1
       {
-        \exp_args:Nx \tl_if_eq:nnT
+        \exp_args:Ne \tl_if_eq:nnT
           { \@@_prop_item:nn {##1} { type } }
           { note }
           {
@@ -1802,16 +1823,16 @@
 %    \begin{macrocode}
                     \tl_if_empty:NF \l_@@_prev_text_page_tl
                       {
-                        \prop_gput:Nxx \g_@@_header_page_last_prop
+                        \prop_gput:Nee \g_@@_header_page_last_prop
                           { \l_@@_prev_text_page_tl }
                           { \l_@@_prev_mark_page_tl }
-                        \prop_gput:Nxx \g_@@_header_chap_last_prop
+                        \prop_gput:Nee \g_@@_header_chap_last_prop
                           { \l_@@_prev_text_page_tl }
                           { \l_@@_prev_mark_chap_tl }
-                        \prop_gput:Nxx \g_@@_header_sect_last_prop
+                        \prop_gput:Nee \g_@@_header_sect_last_prop
                           { \l_@@_prev_text_page_tl }
                           { \l_@@_prev_mark_sect_tl }
-                        \prop_gput:Nxx \g_@@_header_name_last_prop
+                        \prop_gput:Nee \g_@@_header_name_last_prop
                           { \l_@@_prev_text_page_tl }
                           { \l_@@_prev_mark_name_tl }
                       }
@@ -1819,16 +1840,16 @@
 %
 % Set `first' values for current page, based on the current note ID.
 %    \begin{macrocode}
-                    \prop_gput:Nxx \g_@@_header_page_first_prop
+                    \prop_gput:Nee \g_@@_header_page_first_prop
                       { \l_@@_curr_text_page_tl }
                       { \@@_extract_pageref:n { mark@ ##1 } }
-                    \prop_gput:Nxx \g_@@_header_chap_first_prop
+                    \prop_gput:Nee \g_@@_header_chap_first_prop
                       { \l_@@_curr_text_page_tl }
                       { \@@_prop_item:nn {##1} { thechapter } }
-                    \prop_gput:Nxx \g_@@_header_sect_first_prop
+                    \prop_gput:Nee \g_@@_header_sect_first_prop
                       { \l_@@_curr_text_page_tl }
                       { \@@_prop_item:nn {##1} { thesection } }
-                    \prop_gput:Nxx \g_@@_header_name_first_prop
+                    \prop_gput:Nee \g_@@_header_name_first_prop
                       { \l_@@_curr_text_page_tl }
                       { \@@_prop_item:nn {##1} { pnsectname } }
 %    \end{macrocode}
@@ -1863,16 +1884,16 @@
 %    \begin{macrocode}
     \tl_if_empty:NF \l_@@_prev_text_page_tl
       {
-        \prop_gput:Nxx \g_@@_header_page_last_prop
+        \prop_gput:Nee \g_@@_header_page_last_prop
           { \l_@@_prev_text_page_tl }
           { \l_@@_prev_mark_page_tl }
-        \prop_gput:Nxx \g_@@_header_chap_last_prop
+        \prop_gput:Nee \g_@@_header_chap_last_prop
           { \l_@@_prev_text_page_tl }
           { \l_@@_prev_mark_chap_tl }
-        \prop_gput:Nxx \g_@@_header_sect_last_prop
+        \prop_gput:Nee \g_@@_header_sect_last_prop
           { \l_@@_prev_text_page_tl }
           { \l_@@_prev_mark_sect_tl }
-        \prop_gput:Nxx \g_@@_header_name_last_prop
+        \prop_gput:Nee \g_@@_header_name_last_prop
           { \l_@@_prev_text_page_tl }
           { \l_@@_prev_mark_name_tl }
       }
@@ -1905,52 +1926,56 @@
   {
     \group_begin:
     \prop_get:NnNTF \g_@@_header_page_first_prop
-      {#1} \l_tmpa_tl
-      { \tl_gset:NV \pnhdpagefirst \l_tmpa_tl }
+      {#1} \l_@@_tmpa_tl
+      { \tl_gset:NV \pnhdpagefirst \l_@@_tmpa_tl }
       { \tl_gset:NV \pnhdpagefirst \g_@@_header_prev_last_page_tl }
     \prop_get:NnNTF \g_@@_header_page_last_prop
-      {#1} \l_tmpa_tl
+      {#1} \l_@@_tmpa_tl
       {
-        \tl_gset:NV \pnhdpagelast \l_tmpa_tl
-        \tl_gset:NV \g_@@_header_prev_last_page_tl \l_tmpa_tl
+        \tl_gset:NV \pnhdpagelast \l_@@_tmpa_tl
+        \tl_gset:NV \g_@@_header_prev_last_page_tl
+          \l_@@_tmpa_tl
       }
       { \tl_gset:NV \pnhdpagelast \g_@@_header_prev_last_page_tl }
     \prop_get:NnNTF \g_@@_header_chap_first_prop
-      {#1} \l_tmpa_tl
-      { \tl_gset:NV \pnhdchapfirst \l_tmpa_tl }
+      {#1} \l_@@_tmpa_tl
+      { \tl_gset:NV \pnhdchapfirst \l_@@_tmpa_tl }
       { \tl_gset:NV \pnhdchapfirst \g_@@_header_prev_last_chap_tl }
     \prop_get:NnNTF \g_@@_header_chap_last_prop
-      {#1} \l_tmpa_tl
+      {#1} \l_@@_tmpa_tl
       {
-        \tl_gset:NV \pnhdchaplast \l_tmpa_tl
-        \tl_gset:NV \g_@@_header_prev_last_chap_tl \l_tmpa_tl
+        \tl_gset:NV \pnhdchaplast \l_@@_tmpa_tl
+        \tl_gset:NV \g_@@_header_prev_last_chap_tl
+          \l_@@_tmpa_tl
       }
       { \tl_gset:NV \pnhdchaplast \g_@@_header_prev_last_chap_tl }
     \prop_get:NnNTF \g_@@_header_sect_first_prop
-      {#1} \l_tmpa_tl
-      { \tl_gset:NV \pnhdsectfirst \l_tmpa_tl }
+      {#1} \l_@@_tmpa_tl
+      { \tl_gset:NV \pnhdsectfirst \l_@@_tmpa_tl }
       { \tl_gset:NV \pnhdsectfirst \g_@@_header_prev_last_sect_tl }
     \prop_get:NnNTF \g_@@_header_sect_last_prop
-      {#1} \l_tmpa_tl
+      {#1} \l_@@_tmpa_tl
       {
-        \tl_gset:NV \pnhdsectlast \l_tmpa_tl
-        \tl_gset:NV \g_@@_header_prev_last_sect_tl \l_tmpa_tl
+        \tl_gset:NV \pnhdsectlast \l_@@_tmpa_tl
+        \tl_gset:NV \g_@@_header_prev_last_sect_tl
+          \l_@@_tmpa_tl
       }
       { \tl_gset:NV \pnhdsectlast \g_@@_header_prev_last_sect_tl }
     \prop_get:NnNTF \g_@@_header_name_first_prop
-      {#1} \l_tmpa_tl
-      { \tl_gset:NV \pnhdnamefirst \l_tmpa_tl }
+      {#1} \l_@@_tmpa_tl
+      { \tl_gset:NV \pnhdnamefirst \l_@@_tmpa_tl }
       { \tl_gset:NV \pnhdnamefirst \g_@@_header_prev_last_name_tl }
     \prop_get:NnNTF \g_@@_header_name_last_prop
-      {#1} \l_tmpa_tl
+      {#1} \l_@@_tmpa_tl
       {
-        \tl_gset:NV \pnhdnamelast \l_tmpa_tl
-        \tl_gset:NV \g_@@_header_prev_last_name_tl \l_tmpa_tl
+        \tl_gset:NV \pnhdnamelast \l_@@_tmpa_tl
+        \tl_gset:NV \g_@@_header_prev_last_name_tl
+          \l_@@_tmpa_tl
       }
       { \tl_gset:NV \pnhdnamelast \g_@@_header_prev_last_name_tl }
     \group_end:
   }
-\cs_generate_variant:Nn \@@_set_headers_vars:n { x }
+\cs_generate_variant:Nn \@@_set_headers_vars:n { e }
 %    \end{macrocode}
 % \end{macro}
 %
@@ -1974,13 +1999,13 @@
 \cs_new_protected:Npn \@@_set_headers_vars_next:
   {
     \bool_if:NT \g_@@_header_vars_next_bool
-      { \@@_set_headers_vars:x { \int_eval:n { \c at page + 1 } } }
+      { \@@_set_headers_vars:e { \int_eval:n { \c at page + 1 } } }
   }
 \cs_new_protected:Npn \@@_set_headers_vars_first:
   {
-    \@@_set_print_page_label:x
+    \@@_set_print_page_label:e
       { \int_use:N \g_@@_print_postnotes_int }
-    \@@_set_headers_vars:x
+    \@@_set_headers_vars:e
       {
         \@@_extract_pageref:e
           { print@ \int_use:N \g_@@_print_postnotes_int }
@@ -2101,11 +2126,11 @@
 %    \begin{macrocode}
     \AddToHook { postnotes/note/store } [ postnotes ]
       {
-        \prop_gput:cnx { \@@_data_name:e { \l_postnotes_note_id_tl } }
+        \prop_gput:cne { \@@_data_name:e { \l_postnotes_note_id_tl } }
           { biblatex at refsection } { \int_use:N \c at refsection }
-        \prop_gput:cnx { \@@_data_name:e { \l_postnotes_note_id_tl } }
+        \prop_gput:cne { \@@_data_name:e { \l_postnotes_note_id_tl } }
           { biblatex at refsegment } { \int_use:N \c at refsegment }
-        \prop_gput:cnx { \@@_data_name:e { \l_postnotes_note_id_tl } }
+        \prop_gput:cne { \@@_data_name:e { \l_postnotes_note_id_tl } }
           { biblatex at refcontextbool }
           { \iftoggle { blx at refcontext } { true } { false } }
         \prop_gput:cnV { \@@_data_name:e { \l_postnotes_note_id_tl } }
@@ -2149,7 +2174,7 @@
         \togglefalse { blx at refcontext }
         \tl_clear:N \blx at refcontext@labelprefix
         \tl_clear:N \blx at refcontext@labelprefix at real
-        \tl_set:Nx \blx at refcontext@sortingtemplatename { \blx at sorting }
+        \tl_set:Ne \blx at refcontext@sortingtemplatename { \blx at sorting }
         \tl_set:Nn \blx at refcontext@sortingnamekeytemplatename { global }
         \tl_set:Nn \blx at refcontext@uniquenametemplatename { global }
         \tl_set:Nn \blx at refcontext@labelalphanametemplatename { global }
@@ -2246,10 +2271,10 @@
     \tl_new:N \g_@@_biblatex_prev_refsection_tl
     \AddToHook { postnotes/print/begin } [ postnotes ]
       {
-        \tl_set:Nx \l_@@_biblatex_orig_refsection_tl
+        \tl_set:Ne \l_@@_biblatex_orig_refsection_tl
           { \int_use:N \c at refsection }
-        \tl_gset:Nx \g_@@_biblatex_prev_refsection_tl
-          \l_@@_biblatex_orig_refsection_tl
+        \tl_gset:Ne \g_@@_biblatex_prev_refsection_tl
+          { \l_@@_biblatex_orig_refsection_tl }
      }
     \AddToHook { postnotes/print/note/begin } [ postnotes ]
       {
@@ -2379,9 +2404,9 @@
       {
         \AddToHook { postnotes/note/store } [ postnotes ]
           {
-            \prop_gput:cnx { \@@_data_name:e { \l_postnotes_note_id_tl } }
+            \prop_gput:cne { \@@_data_name:e { \l_postnotes_note_id_tl } }
               { zref-check at abschap } { \int_use:N \c at zc@abschap }
-            \prop_gput:cnx { \@@_data_name:e { \l_postnotes_note_id_tl } }
+            \prop_gput:cne { \@@_data_name:e { \l_postnotes_note_id_tl } }
               { zref-check at abssec } { \int_use:N \c at zc@abssec }
           }
         \AddToHook { postnotes/print/note/begin } [ postnotes ]

Modified: trunk/Master/texmf-dist/source/latex/postnotes/postnotes.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/postnotes/postnotes.ins	2023-11-14 21:03:28 UTC (rev 68839)
+++ trunk/Master/texmf-dist/source/latex/postnotes/postnotes.ins	2023-11-14 21:03:38 UTC (rev 68840)
@@ -4,7 +4,7 @@
 %
 % This file is part of the LaTeX package "postnotes".
 %
-% Copyright (C) 2022-2023  Gustavo Barros
+% Copyright (C) 2022-2023  gusbrs
 %
 % It may be distributed and/or modified under the conditions of the
 % LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -17,8 +17,7 @@
 % version 2005/12/01 or later.
 %
 %
-% This work is "maintained" (as per LPPL maintenance status) by
-% Gustavo Barros.
+% This work is "maintained" (as per LPPL maintenance status) by gusbrs.
 %
 % This work consists of the files postnotes.dtx,
 %                                 postnotes.ins,
@@ -50,7 +49,7 @@
 
 This file was generated from file(s) of the LaTeX package "postnotes".
 
-Copyright (C) 2022-2023  Gustavo Barros
+Copyright (C) 2022-2023  gusbrs
 
 It may be distributed and/or modified under the conditions of the
 LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -63,8 +62,7 @@
 version 2005/12/01 or later.
 
 
-This work is "maintained" (as per LPPL maintenance status) by
-  Gustavo Barros.
+This work is "maintained" (as per LPPL maintenance status) by gusbrs.
 
 This work consists of the files postnotes.dtx,
                                 postnotes.ins,

Modified: trunk/Master/texmf-dist/tex/latex/postnotes/postnotes.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/postnotes/postnotes.sty	2023-11-14 21:03:28 UTC (rev 68839)
+++ trunk/Master/texmf-dist/tex/latex/postnotes/postnotes.sty	2023-11-14 21:03:38 UTC (rev 68840)
@@ -8,7 +8,7 @@
 %% 
 %% This file was generated from file(s) of the LaTeX package "postnotes".
 %% 
-%% Copyright (C) 2022-2023  Gustavo Barros
+%% Copyright (C) 2022-2023  gusbrs
 %% 
 %% It may be distributed and/or modified under the conditions of the
 %% LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -21,8 +21,7 @@
 %% version 2005/12/01 or later.
 %% 
 %% 
-%% This work is "maintained" (as per LPPL maintenance status) by
-%%   Gustavo Barros.
+%% This work is "maintained" (as per LPPL maintenance status) by gusbrs.
 %% 
 %% This work consists of the files postnotes.dtx,
 %%                                 postnotes.ins,
@@ -42,7 +41,7 @@
 %% 
 %% -----------------------------------------------------------------------
 %% 
-\def\postnotes at required@kernel{2022-06-01}
+\def\postnotes at required@kernel{2023-11-01}
 \NeedsTeXFormat{LaTeX2e}[\postnotes at required@kernel]
 \providecommand\IfFormatAtLeastTF{\@ifl at t@r\fmtversion}
 \IfFormatAtLeastTF{\postnotes at required@kernel}
@@ -53,8 +52,12 @@
         'postnotes' requires a LaTeX kernel \postnotes at required@kernel\space or newer.%
       }%
   }%
-\ProvidesExplPackage {postnotes} {2023-08-21} {0.2.6}
+\ProvidesExplPackage {postnotes} {2023-11-14} {0.2.7}
   {Endnotes for LaTeX}
+\tl_new:N \l__postnotes_tmpa_tl
+\tl_new:N \l__postnotes_tmpb_tl
+\seq_new:N \l__postnotes_tmpa_seq
+\box_new:N \l__postnotes_tmpa_box
 \cs_new:Npn \__postnotes_data_name:n #1
   { g__postnotes_ #1 _data_prop }
 \cs_generate_variant:Nn \__postnotes_data_name:n { e }
@@ -63,11 +66,11 @@
   {
     \prop_new:c { \__postnotes_data_name:e {#1} }
     \prop_gput:cnn { \__postnotes_data_name:e {#1} } { type } { note }
-    \prop_gput:cnx { \__postnotes_data_name:e {#1} } { mark }
+    \prop_gput:cne { \__postnotes_data_name:e {#1} } { mark }
       { \l__postnotes_mark_tl }
-    \prop_gput:cnx { \__postnotes_data_name:e {#1} } { counter }
+    \prop_gput:cne { \__postnotes_data_name:e {#1} } { counter }
       { \int_use:N \c at postnote }
-    \prop_gput:cnx { \__postnotes_data_name:e {#1} } { sortnum }
+    \prop_gput:cne { \__postnotes_data_name:e {#1} } { sortnum }
       {
         \bool_if:NTF \l__postnotes_manual_sortnum_bool
           { \fp_use:N \l__postnotes_sort_num_fp }
@@ -75,16 +78,16 @@
       }
     \cs_if_exist:cT { chapter }
       {
-        \prop_gput:cnx { \__postnotes_data_name:e {#1} }
+        \prop_gput:cne { \__postnotes_data_name:e {#1} }
           { thechapter } { \thechapter }
       }
-    \prop_gput:cnx { \__postnotes_data_name:e {#1} } { thesection }
+    \prop_gput:cne { \__postnotes_data_name:e {#1} } { thesection }
       { \thesection }
-    \prop_gput:cnx { \__postnotes_data_name:e {#1} } { pnsectname }
+    \prop_gput:cne { \__postnotes_data_name:e {#1} } { pnsectname }
       { \g__postnotes_section_name_tl }
-    \prop_gput:cnx { \__postnotes_data_name:e {#1} } { pnsectid }
+    \prop_gput:cne { \__postnotes_data_name:e {#1} } { pnsectid }
       { \int_use:N \g__postnotes_sectid_int }
-    \prop_gput:cnx { \__postnotes_data_name:e {#1} } { multibool }
+    \prop_gput:cne { \__postnotes_data_name:e {#1} } { multibool }
       { \bool_to_str:N \l__postnotes_maybe_multi_bool }
     \prop_gput:cnn { \__postnotes_data_name:e {#1} } { content } {#2}
     \UseHook { postnotes/note/store }
@@ -95,14 +98,14 @@
     \prop_gput:cnn { \__postnotes_data_name:e {#1} } { type } { section }
     \cs_if_exist:cT { chapter }
       {
-        \prop_gput:cnx { \__postnotes_data_name:e {#1} }
+        \prop_gput:cne { \__postnotes_data_name:e {#1} }
           { thechapter } { \thechapter }
       }
-    \prop_gput:cnx { \__postnotes_data_name:e {#1} } { thesection }
+    \prop_gput:cne { \__postnotes_data_name:e {#1} } { thesection }
       { \thesection }
     \prop_gput:cnn { \__postnotes_data_name:e {#1} } { content } {#2}
   }
-\cs_generate_variant:Nn \__postnotes_store_section:nn { nx }
+\cs_generate_variant:Nn \__postnotes_store_section:nn { ne }
 \cs_new_protected:Npn \__postnotes_prop_get:nnN #1#2#3
   {
     \prop_get:cnNF { \__postnotes_data_name:e {#1} } {#2} #3
@@ -113,13 +116,13 @@
 \cs_new_protected:Npn \__postnotes_prop_gclear:n #1
   { \prop_gclear:c { \__postnotes_data_name:e {#1} } }
 \tl_const:Nn \c__postnotes_ref_prefix_tl { postnote at r }
-\cs_new_protected:Npx \post at note #1#2
+\cs_new_protected:Npe \post at note #1#2
   { \exp_not:N \@newl at bel { \c__postnotes_ref_prefix_tl } {#1} {#2} }
 \AddToHook { begindocument }
   {
     \legacy_if:nT { @filesw }
       {
-        \iow_now:Nx \@mainaux
+        \iow_now:Ne \@mainaux
           { \token_to_str:N \providecommand \token_to_str:N \post at note [2]{} }
       }
   }
@@ -127,7 +130,7 @@
   {
     \legacy_if:nT { @filesw }
       {
-        \iow_now:Nx \@partaux
+        \iow_now:Ne \@partaux
           { \token_to_str:N \providecommand \token_to_str:N \post at note [2]{} }
       }
   }
@@ -141,13 +144,13 @@
   }
 \cs_new_protected:Npn \__postnotes_set_mark_page_label:n #1
   { \__postnotes_set_label:nn { mark@ #1 } { \thepage } }
-\cs_generate_variant:Nn \__postnotes_set_mark_page_label:n { x }
+\cs_generate_variant:Nn \__postnotes_set_mark_page_label:n { e }
 \cs_new_protected:Npn \__postnotes_set_text_page_label:n #1
   { \__postnotes_set_label:nn { text@ #1 } { \int_use:N \c at page } }
-\cs_generate_variant:Nn \__postnotes_set_text_page_label:n { x }
+\cs_generate_variant:Nn \__postnotes_set_text_page_label:n { e }
 \cs_new_protected:Npn \__postnotes_set_print_page_label:n #1
   { \__postnotes_set_label:nn { print@ #1 } { \int_use:N \c at page } }
-\cs_generate_variant:Nn \__postnotes_set_print_page_label:n { x }
+\cs_generate_variant:Nn \__postnotes_set_print_page_label:n { e }
 \cs_new_protected:Npn \__postnotes_get_pageref:Nn #1#2
   {
     \cs_if_exist:cTF { \c__postnotes_ref_prefix_tl @ #2 }
@@ -154,7 +157,7 @@
       { \tl_set:Nv #1 { \c__postnotes_ref_prefix_tl @ #2 } }
       { \tl_clear:N #1 }
   }
-\cs_generate_variant:Nn \__postnotes_get_pageref:Nn { Nx }
+\cs_generate_variant:Nn \__postnotes_get_pageref:Nn { Ne }
 \cs_new:Npn \__postnotes_extract_pageref:n #1
   {
     \cs_if_exist:cTF { \c__postnotes_ref_prefix_tl @ #1 }
@@ -344,9 +347,10 @@
         pretextmark = { \par } ,
         maketextmark =
          {
-           \hbox_set:Nn \l_tmpa_box { \@textsuperscript { \normalfont ##1 } }
-           \skip_horizontal:n { - \box_wd:N \l_tmpa_box }
-           ##2 \box_use:N \l_tmpa_box ##3
+           \hbox_set:Nn \l__postnotes_tmpa_box
+             { \@textsuperscript { \normalfont ##1 } }
+           \skip_horizontal:n { - \box_wd:N \l__postnotes_tmpa_box }
+           ##2 \box_use:N \l__postnotes_tmpa_box ##3
          } ,
       } ,
     style / pagenote .meta:n =
@@ -378,19 +382,19 @@
         \tl_if_empty:NT \l__postnotes_mark_tl
           {
             \stepcounter { postnote }
-            \tl_set:Nx \l__postnotes_mark_tl { \thepostnote }
+            \tl_set:Ne \l__postnotes_mark_tl { \thepostnote }
           }
-        \seq_gput_right:Nx \g__postnotes_queue_seq
+        \seq_gput_right:Ne \g__postnotes_queue_seq
           { \l_postnotes_note_id_tl }
         \UseHook { postnotes/note/begin }
         \cs_set:Npn \@currentcounter { postnote }
-        \cs_set:Npx \@currentlabel { \p at postnote \l__postnotes_mark_tl }
+        \cs_set:Npe \@currentlabel { \p at postnote \l__postnotes_mark_tl }
         \MakeLinkTarget* { postnote. \l_postnotes_note_id_tl .mark }
-        \__postnotes_set_mark_page_label:x { \l_postnotes_note_id_tl }
+        \__postnotes_set_mark_page_label:e { \l_postnotes_note_id_tl }
         \__postnotes_set_user_labels:
         \bool_if:NF \l__postnotes_nomark_bool
           {
-            \__postnotes_typeset_mark:xV
+            \__postnotes_typeset_mark:eV
               { \l_postnotes_note_id_tl } \l__postnotes_mark_tl
           }
         \__postnotes_store:nn { \l_postnotes_note_id_tl } {#2}
@@ -441,12 +445,12 @@
             \bool_if:NTF \l__postnotes_print_plain_mark_stepcounter_bool
               {
                 \stepcounter { postnote }
-                \tl_set:Nx \l__postnotes_mark_tl { \thepostnote }
+                \tl_set:Ne \l__postnotes_mark_tl { \thepostnote }
               }
               {
                 \group_begin:
                 \int_incr:N \c at postnote
-                \exp_args:NNNx
+                \exp_args:NNNe
                   \group_end:
                   \tl_set:Nn \l__postnotes_mark_tl { \thepostnote }
               }
@@ -471,7 +475,7 @@
           { \__postnotes_make_mark:nnn {#2} { } { } }
       }
   }
-\cs_generate_variant:Nn \__postnotes_typeset_mark:nn { xV }
+\cs_generate_variant:Nn \__postnotes_typeset_mark:nn { eV }
 \tl_new:N \l__postnotes_saved_spacefactor_tl
 \cs_new_protected:Npn \__postnotes_typeset_mark_wrapper:n #1
   {
@@ -478,7 +482,7 @@
     \mode_leave_vertical:
     \mode_if_horizontal:T
       {
-        \tl_set:Nx \l__postnotes_saved_spacefactor_tl { \the\spacefactor }
+        \tl_set:Ne \l__postnotes_saved_spacefactor_tl { \the\spacefactor }
         \nobreak
       }
     #1
@@ -530,11 +534,11 @@
     \group_begin:
     \int_gincr:N \g__postnotes_sectid_int
     \int_gincr:N \g__postnotes_note_id_int
-    \seq_gput_right:Nx \g__postnotes_queue_seq { \l_postnotes_note_id_tl }
+    \seq_gput_right:Ne \g__postnotes_queue_seq { \l_postnotes_note_id_tl }
     \tl_gclear:N \g__postnotes_section_name_tl
     \keys_set:nn { postnotes/section } {#1}
     \bool_if:NTF \l__postnotes_section_exp_bool
-      { \__postnotes_store_section:nx { \l_postnotes_note_id_tl } {#2} }
+      { \__postnotes_store_section:ne { \l_postnotes_note_id_tl } {#2} }
       { \__postnotes_store_section:nn { \l_postnotes_note_id_tl } {#2} }
     \group_end:
   }
@@ -552,6 +556,7 @@
   { \__postnotes_print_notes: }
 \tl_new:N \pnthechapter
 \tl_new:N \pnthesection
+\tl_new:N \pnidnextnote
 \tl_new:N \pnthechapternextnote
 \tl_new:N \pnthesectionnextnote
 \tl_new:N \pnthepage
@@ -622,6 +627,7 @@
                     \__postnotes_prop_get:nnN
                       { \l_postnotes_print_note_id_tl }
                       { thesection } \pnthesection
+                    \tl_set:NV \pnidnextnote \l__postnotes_print_note_id_next_tl
                     \__postnotes_prop_get:nnN
                       { \l__postnotes_print_note_id_next_tl }
                       { thechapter } \pnthechapternextnote
@@ -641,13 +647,13 @@
                 \tl_if_eq:NnF \l__postnotes_print_type_prev_tl { note }
                   {
                     \bool_if:NTF \l__postnotes_print_as_list_bool
-                      { \exp_args:Nx \begin { \l__postnotes_print_env_tl } }
+                      { \exp_args:Ne \begin { \l__postnotes_print_env_tl } }
                       { \group_begin: }
                     \l__postnotes_print_format_tl
                   }
                 \group_begin:
                 \UseHook { postnotes/print/note/begin }
-                \__postnotes_get_pageref:Nx \pnthepage
+                \__postnotes_get_pageref:Ne \pnthepage
                   { mark@ \l_postnotes_print_note_id_tl }
                 \__postnotes_prop_get:nnN
                   { \l_postnotes_print_note_id_tl }
@@ -661,13 +667,13 @@
                 \cs_set:Npn \@currentcounter { postnotetext }
                 \int_set:Nn \c at postnotetext
                   { \l__postnotes_print_counter_tl }
-                \cs_set:Npx \@currentlabel
+                \cs_set:Npe \@currentlabel
                   { \p at postnote \l__postnotes_print_mark_tl }
                 \__postnotes_text_mark_wrapper:n
                   {
                     \MakeLinkTarget*
                       { postnote. \l_postnotes_print_note_id_tl .text }
-                    \__postnotes_set_text_page_label:x
+                    \__postnotes_set_text_page_label:e
                       { \l_postnotes_print_note_id_tl }
                     \__postnotes_typeset_text_mark:eV
                       { \l_postnotes_print_note_id_tl }
@@ -691,7 +697,7 @@
                 \tl_if_eq:NnF \l__postnotes_print_type_next_tl { note }
                   {
                     \bool_if:NTF \l__postnotes_print_as_list_bool
-                      { \exp_args:Nx \end { \l__postnotes_print_env_tl } }
+                      { \exp_args:Ne \end { \l__postnotes_print_env_tl } }
                       { \group_end: }
                     \par
                   }
@@ -733,19 +739,19 @@
 \cs_new_protected:Npn \__postnotes_verify_multipass:N #1
   {
     \group_begin:
-    \seq_clear:N \l_tmpa_seq
+    \seq_clear:N \l__postnotes_tmpa_seq
     \seq_map_inline:Nn #1
       {
-        \__postnotes_prop_get:nnN {##1} { multibool } \l_tmpa_tl
-        \tl_if_eq:NnTF \l_tmpa_tl { true }
+        \__postnotes_prop_get:nnN {##1} { multibool } \l__postnotes_tmpa_tl
+        \tl_if_eq:NnTF \l__postnotes_tmpa_tl { true }
           {
             \cs_if_exist:cT
               { \c__postnotes_ref_prefix_tl @ mark@ ##1 }
-              { \seq_put_right:Nn \l_tmpa_seq {##1} }
+              { \seq_put_right:Nn \l__postnotes_tmpa_seq {##1} }
           }
-          { \seq_put_right:Nn \l_tmpa_seq {##1} }
+          { \seq_put_right:Nn \l__postnotes_tmpa_seq {##1} }
       }
-    \seq_gset_eq:NN #1 \l_tmpa_seq
+    \seq_gset_eq:NN #1 \l__postnotes_tmpa_seq
     \group_end:
   }
 \cs_new_protected:Npn \__postnotes_sort_queue:N #1
@@ -753,19 +759,20 @@
     \group_begin:
     \seq_gsort:Nn #1
       {
-        \__postnotes_prop_get:nnN {##1} { pnsectid } \l_tmpa_tl
-        \__postnotes_prop_get:nnN {##2} { pnsectid } \l_tmpb_tl
-        \tl_if_eq:NNTF \l_tmpa_tl \l_tmpb_tl
+        \__postnotes_prop_get:nnN {##1} { pnsectid } \l__postnotes_tmpa_tl
+        \__postnotes_prop_get:nnN {##2} { pnsectid } \l__postnotes_tmpb_tl
+        \tl_if_eq:NNTF \l__postnotes_tmpa_tl \l__postnotes_tmpb_tl
           {
-            \__postnotes_prop_get:nnN {##1} { type } \l_tmpa_tl
-            \__postnotes_prop_get:nnN {##2} { type } \l_tmpb_tl
+            \__postnotes_prop_get:nnN {##1} { type } \l__postnotes_tmpa_tl
+            \__postnotes_prop_get:nnN {##2} { type } \l__postnotes_tmpb_tl
             \bool_lazy_and:nnTF
-              { \str_if_eq_p:Vn \l_tmpa_tl { note } }
-              { \str_if_eq_p:Vn \l_tmpb_tl { note } }
+              { \str_if_eq_p:Vn \l__postnotes_tmpa_tl { note } }
+              { \str_if_eq_p:Vn \l__postnotes_tmpb_tl { note } }
               {
-                \__postnotes_prop_get:nnN {##1} { sortnum } \l_tmpa_tl
-                \__postnotes_prop_get:nnN {##2} { sortnum } \l_tmpb_tl
-                \fp_compare:nNnTF { \l_tmpa_tl } > { \l_tmpb_tl }
+                \__postnotes_prop_get:nnN {##1} { sortnum } \l__postnotes_tmpa_tl
+                \__postnotes_prop_get:nnN {##2} { sortnum } \l__postnotes_tmpb_tl
+                \fp_compare:nNnTF
+                  { \l__postnotes_tmpa_tl } > { \l__postnotes_tmpb_tl }
                   { \sort_return_swapped: }
                   { \sort_return_same:    }
               }
@@ -832,7 +839,7 @@
     \tl_clear:N \l__postnotes_prev_mark_name_tl
     \seq_map_inline:Nn #1
       {
-        \exp_args:Nx \tl_if_eq:nnT
+        \exp_args:Ne \tl_if_eq:nnT
           { \__postnotes_prop_item:nn {##1} { type } }
           { note }
           {
@@ -856,29 +863,29 @@
                   {
                     \tl_if_empty:NF \l__postnotes_prev_text_page_tl
                       {
-                        \prop_gput:Nxx \g__postnotes_header_page_last_prop
+                        \prop_gput:Nee \g__postnotes_header_page_last_prop
                           { \l__postnotes_prev_text_page_tl }
                           { \l__postnotes_prev_mark_page_tl }
-                        \prop_gput:Nxx \g__postnotes_header_chap_last_prop
+                        \prop_gput:Nee \g__postnotes_header_chap_last_prop
                           { \l__postnotes_prev_text_page_tl }
                           { \l__postnotes_prev_mark_chap_tl }
-                        \prop_gput:Nxx \g__postnotes_header_sect_last_prop
+                        \prop_gput:Nee \g__postnotes_header_sect_last_prop
                           { \l__postnotes_prev_text_page_tl }
                           { \l__postnotes_prev_mark_sect_tl }
-                        \prop_gput:Nxx \g__postnotes_header_name_last_prop
+                        \prop_gput:Nee \g__postnotes_header_name_last_prop
                           { \l__postnotes_prev_text_page_tl }
                           { \l__postnotes_prev_mark_name_tl }
                       }
-                    \prop_gput:Nxx \g__postnotes_header_page_first_prop
+                    \prop_gput:Nee \g__postnotes_header_page_first_prop
                       { \l__postnotes_curr_text_page_tl }
                       { \__postnotes_extract_pageref:n { mark@ ##1 } }
-                    \prop_gput:Nxx \g__postnotes_header_chap_first_prop
+                    \prop_gput:Nee \g__postnotes_header_chap_first_prop
                       { \l__postnotes_curr_text_page_tl }
                       { \__postnotes_prop_item:nn {##1} { thechapter } }
-                    \prop_gput:Nxx \g__postnotes_header_sect_first_prop
+                    \prop_gput:Nee \g__postnotes_header_sect_first_prop
                       { \l__postnotes_curr_text_page_tl }
                       { \__postnotes_prop_item:nn {##1} { thesection } }
-                    \prop_gput:Nxx \g__postnotes_header_name_first_prop
+                    \prop_gput:Nee \g__postnotes_header_name_first_prop
                       { \l__postnotes_curr_text_page_tl }
                       { \__postnotes_prop_item:nn {##1} { pnsectname } }
                     \__postnotes_get_pageref:Nn
@@ -897,16 +904,16 @@
       }
     \tl_if_empty:NF \l__postnotes_prev_text_page_tl
       {
-        \prop_gput:Nxx \g__postnotes_header_page_last_prop
+        \prop_gput:Nee \g__postnotes_header_page_last_prop
           { \l__postnotes_prev_text_page_tl }
           { \l__postnotes_prev_mark_page_tl }
-        \prop_gput:Nxx \g__postnotes_header_chap_last_prop
+        \prop_gput:Nee \g__postnotes_header_chap_last_prop
           { \l__postnotes_prev_text_page_tl }
           { \l__postnotes_prev_mark_chap_tl }
-        \prop_gput:Nxx \g__postnotes_header_sect_last_prop
+        \prop_gput:Nee \g__postnotes_header_sect_last_prop
           { \l__postnotes_prev_text_page_tl }
           { \l__postnotes_prev_mark_sect_tl }
-        \prop_gput:Nxx \g__postnotes_header_name_last_prop
+        \prop_gput:Nee \g__postnotes_header_name_last_prop
           { \l__postnotes_prev_text_page_tl }
           { \l__postnotes_prev_mark_name_tl }
       }
@@ -916,52 +923,56 @@
   {
     \group_begin:
     \prop_get:NnNTF \g__postnotes_header_page_first_prop
-      {#1} \l_tmpa_tl
-      { \tl_gset:NV \pnhdpagefirst \l_tmpa_tl }
+      {#1} \l__postnotes_tmpa_tl
+      { \tl_gset:NV \pnhdpagefirst \l__postnotes_tmpa_tl }
       { \tl_gset:NV \pnhdpagefirst \g__postnotes_header_prev_last_page_tl }
     \prop_get:NnNTF \g__postnotes_header_page_last_prop
-      {#1} \l_tmpa_tl
+      {#1} \l__postnotes_tmpa_tl
       {
-        \tl_gset:NV \pnhdpagelast \l_tmpa_tl
-        \tl_gset:NV \g__postnotes_header_prev_last_page_tl \l_tmpa_tl
+        \tl_gset:NV \pnhdpagelast \l__postnotes_tmpa_tl
+        \tl_gset:NV \g__postnotes_header_prev_last_page_tl
+          \l__postnotes_tmpa_tl
       }
       { \tl_gset:NV \pnhdpagelast \g__postnotes_header_prev_last_page_tl }
     \prop_get:NnNTF \g__postnotes_header_chap_first_prop
-      {#1} \l_tmpa_tl
-      { \tl_gset:NV \pnhdchapfirst \l_tmpa_tl }
+      {#1} \l__postnotes_tmpa_tl
+      { \tl_gset:NV \pnhdchapfirst \l__postnotes_tmpa_tl }
       { \tl_gset:NV \pnhdchapfirst \g__postnotes_header_prev_last_chap_tl }
     \prop_get:NnNTF \g__postnotes_header_chap_last_prop
-      {#1} \l_tmpa_tl
+      {#1} \l__postnotes_tmpa_tl
       {
-        \tl_gset:NV \pnhdchaplast \l_tmpa_tl
-        \tl_gset:NV \g__postnotes_header_prev_last_chap_tl \l_tmpa_tl
+        \tl_gset:NV \pnhdchaplast \l__postnotes_tmpa_tl
+        \tl_gset:NV \g__postnotes_header_prev_last_chap_tl
+          \l__postnotes_tmpa_tl
       }
       { \tl_gset:NV \pnhdchaplast \g__postnotes_header_prev_last_chap_tl }
     \prop_get:NnNTF \g__postnotes_header_sect_first_prop
-      {#1} \l_tmpa_tl
-      { \tl_gset:NV \pnhdsectfirst \l_tmpa_tl }
+      {#1} \l__postnotes_tmpa_tl
+      { \tl_gset:NV \pnhdsectfirst \l__postnotes_tmpa_tl }
       { \tl_gset:NV \pnhdsectfirst \g__postnotes_header_prev_last_sect_tl }
     \prop_get:NnNTF \g__postnotes_header_sect_last_prop
-      {#1} \l_tmpa_tl
+      {#1} \l__postnotes_tmpa_tl
       {
-        \tl_gset:NV \pnhdsectlast \l_tmpa_tl
-        \tl_gset:NV \g__postnotes_header_prev_last_sect_tl \l_tmpa_tl
+        \tl_gset:NV \pnhdsectlast \l__postnotes_tmpa_tl
+        \tl_gset:NV \g__postnotes_header_prev_last_sect_tl
+          \l__postnotes_tmpa_tl
       }
       { \tl_gset:NV \pnhdsectlast \g__postnotes_header_prev_last_sect_tl }
     \prop_get:NnNTF \g__postnotes_header_name_first_prop
-      {#1} \l_tmpa_tl
-      { \tl_gset:NV \pnhdnamefirst \l_tmpa_tl }
+      {#1} \l__postnotes_tmpa_tl
+      { \tl_gset:NV \pnhdnamefirst \l__postnotes_tmpa_tl }
       { \tl_gset:NV \pnhdnamefirst \g__postnotes_header_prev_last_name_tl }
     \prop_get:NnNTF \g__postnotes_header_name_last_prop
-      {#1} \l_tmpa_tl
+      {#1} \l__postnotes_tmpa_tl
       {
-        \tl_gset:NV \pnhdnamelast \l_tmpa_tl
-        \tl_gset:NV \g__postnotes_header_prev_last_name_tl \l_tmpa_tl
+        \tl_gset:NV \pnhdnamelast \l__postnotes_tmpa_tl
+        \tl_gset:NV \g__postnotes_header_prev_last_name_tl
+          \l__postnotes_tmpa_tl
       }
       { \tl_gset:NV \pnhdnamelast \g__postnotes_header_prev_last_name_tl }
     \group_end:
   }
-\cs_generate_variant:Nn \__postnotes_set_headers_vars:n { x }
+\cs_generate_variant:Nn \__postnotes_set_headers_vars:n { e }
 \AddToHook { shipout/before } [ postnotes/header ]
   { \__postnotes_set_headers_vars_next: }
 \bool_new:N \g__postnotes_header_vars_next_bool
@@ -968,13 +979,13 @@
 \cs_new_protected:Npn \__postnotes_set_headers_vars_next:
   {
     \bool_if:NT \g__postnotes_header_vars_next_bool
-      { \__postnotes_set_headers_vars:x { \int_eval:n { \c at page + 1 } } }
+      { \__postnotes_set_headers_vars:e { \int_eval:n { \c at page + 1 } } }
   }
 \cs_new_protected:Npn \__postnotes_set_headers_vars_first:
   {
-    \__postnotes_set_print_page_label:x
+    \__postnotes_set_print_page_label:e
       { \int_use:N \g__postnotes_print_postnotes_int }
-    \__postnotes_set_headers_vars:x
+    \__postnotes_set_headers_vars:e
       {
         \__postnotes_extract_pageref:e
           { print@ \int_use:N \g__postnotes_print_postnotes_int }
@@ -1053,9 +1064,9 @@
       {
         \AddToHook { postnotes/note/store } [ postnotes ]
           {
-            \prop_gput:cnx { \__postnotes_data_name:e { \l_postnotes_note_id_tl } }
+            \prop_gput:cne { \__postnotes_data_name:e { \l_postnotes_note_id_tl } }
               { zref-check at abschap } { \int_use:N \c at zc@abschap }
-            \prop_gput:cnx { \__postnotes_data_name:e { \l_postnotes_note_id_tl } }
+            \prop_gput:cne { \__postnotes_data_name:e { \l_postnotes_note_id_tl } }
               { zref-check at abssec } { \int_use:N \c at zc@abssec }
           }
         \AddToHook { postnotes/print/note/begin } [ postnotes ]



More information about the tex-live-commits mailing list.