diff options
author | Karl Berry <karl@freefriends.org> | 2024-12-04 21:12:17 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2024-12-04 21:12:17 +0000 |
commit | 552b54494f077dadca49f86bb646f699cd750545 (patch) | |
tree | a9a24bac130714d1faca2f4d76b6fbb641fa32ef /Master/texmf-dist/tex | |
parent | 738b86b389a5f5201762e4e5b2e3b6881761a766 (diff) |
postnotes (4dec24)
git-svn-id: svn://tug.org/texlive/trunk@73034 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r-- | Master/texmf-dist/tex/latex/postnotes/postnotes.sty | 340 |
1 files changed, 116 insertions, 224 deletions
diff --git a/Master/texmf-dist/tex/latex/postnotes/postnotes.sty b/Master/texmf-dist/tex/latex/postnotes/postnotes.sty index 671c9892361..dbe41cb0e4b 100644 --- a/Master/texmf-dist/tex/latex/postnotes/postnotes.sty +++ b/Master/texmf-dist/tex/latex/postnotes/postnotes.sty @@ -52,7 +52,7 @@ 'postnotes' requires a LaTeX kernel \postnotes@required@kernel\space or newer.% }% }% -\ProvidesExplPackage {postnotes} {2024-11-27} {0.4.2} +\ProvidesExplPackage {postnotes} {2024-12-03} {0.5.0} {Endnotes for LaTeX} \tl_new:N \l__postnotes_tmpa_tl \tl_new:N \l__postnotes_tmpb_tl @@ -129,15 +129,7 @@ \bool_new:N \g__postnotes_firstrun_bool \bool_gset_true:N \g__postnotes_firstrun_bool \cs_new_protected:Npn \__postnotes_store_labelseq:nn #1#2 - { - \bool_lazy_any:nT - { - { \str_if_eq_p:nn {#1} { mark } } - { \str_if_eq_p:nn {#1} { section } } - { \str_if_eq_p:nn {#1} { preprint } } - } - { \seq_gput_right:Nn \g__postnotes_labelseq_seq { {#1} {#2} } } - } + { \seq_gput_right:Nn \g__postnotes_labelseq_seq { {#1} {#2} } } \cs_new_protected:Npn \__postnotes_step_counteraux:nnn #1#2#3 { \bool_lazy_and:nnT @@ -202,27 +194,19 @@ { \legacy_if:nT { @filesw } { - \protected@write \@auxout - { \cs_set_eq:NN \c__postnotes_page_counter_tl \scan_stop: } + \protected@write \@auxout { } { \token_to_str:N \post@note { #1 } { #2 } { #3 } { #4 } } } } -\tl_const:Nn \c__postnotes_page_counter_tl { \int_use:N \c@page } \cs_new_protected:Npn \__postnotes_set_mark_page_label:nn #1#2 { \__postnotes_set_label:nnnn { mark } { #1 } { \thepage } { #2 } } \cs_generate_variant:Nn \__postnotes_set_mark_page_label:nn { ee } \cs_new_protected:Npn \__postnotes_set_section_page_label:n #1 { \__postnotes_set_label:nnnn { section } { #1 } { \thepage } { } } \cs_generate_variant:Nn \__postnotes_set_section_page_label:n { e } -\cs_new_protected:Npn \__postnotes_set_text_page_label:n #1 - { \__postnotes_set_label:nnnn { text } { #1 } { \c__postnotes_page_counter_tl } { } } -\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:nnnn { print } { #1 } { \c__postnotes_page_counter_tl } { } } -\cs_generate_variant:Nn \__postnotes_set_print_page_label:n { e } -\cs_new_protected:Npn \__postnotes_set_pre_print_label:n #1 - { \__postnotes_set_label:nnnn { preprint } { #1 } { } { } } -\cs_generate_variant:Nn \__postnotes_set_pre_print_label:n { e } +\cs_new_protected:Npn \__postnotes_set_print_label:n #1 + { \__postnotes_set_label:nnnn { print } { #1 } { } { } } +\cs_generate_variant:Nn \__postnotes_set_print_label:n { e } \cs_new_protected:Npn \__postnotes_get_pageref:Nn #1#2 { \cs_if_exist:cTF { \c__postnotes_ref_prefix_tl @ #2 } @@ -257,6 +241,19 @@ \@mkboth{\pnheaderdefault}{\pnheaderdefault} } } +\NewDocumentCommand \pnheaderdefault {} + { + \group_begin: + \protected@edef \l__postnotes_tmpa_tl { \FirstMark{postnotes/page} } + \protected@edef \l__postnotes_tmpb_tl { \LastMark{postnotes/page} } + \tl_if_eq:NNTF \l__postnotes_tmpa_tl \l__postnotes_tmpb_tl + { \pnhdnotes{}~\pnhdtopage{}~ \FirstMark{postnotes/page} } + { + \pnhdnotes{}~\pnhdtopages{}~ + \FirstMark{postnotes/page}--\LastMark{postnotes/page} + } + \group_end: + } \tl_new:N \l__postnotes_print_format_tl \keys_define:nn { postnotes/setup } { @@ -550,6 +547,7 @@ \NewDocumentCommand \postnote { O { } +m } { \__postnotes_note:nn {#1} {#2} } \NewHook { postnotes/note/begin } +\NewHook { postnotes/note/setlabels } \cs_new_protected:Npn \__postnotes_note:nn #1#2 { \group_begin: @@ -595,6 +593,7 @@ } \tl_set:Nn \l__postnotes_note_set_labels_tl { + \UseHook { postnotes/note/setlabels } \MakeLinkTarget* { postnote. \l_postnotes_note_id_tl .mark } \__postnotes_set_mark_page_label:ee { \l_postnotes_note_id_tl } { \int_use:N \l__postnotes_counteraux_step_int } @@ -850,9 +849,19 @@ \tl_new:N \l__postnotes_print_type_next_tl \tl_new:N \l__postnotes_print_type_prev_tl \tl_new:N \l__postnotes_print_content_tl +\tl_new:N \l__postnotes_print_page_tl +\tl_new:N \l__postnotes_print_chapter_tl +\tl_new:N \l__postnotes_print_section_tl +\tl_new:N \l__postnotes_print_sectname_tl \seq_new:N \l__postnotes_clear_queue_seq +\mark_new_class:n { postnotes/page } +\mark_new_class:n { postnotes/chapter } +\mark_new_class:n { postnotes/section } +\mark_new_class:n { postnotes/sectname } \NewHook { postnotes/print/begin } \NewHook { postnotes/print/note/begin } +\NewHook { postnotes/print/note/typesetmark } +\NewHook { postnotes/print/note/ltmarks } \newcounter { postnotetext } \newcounter { postnotesection } \setcounter { postnotesection } { 10000 } @@ -874,7 +883,7 @@ } \seq_set_eq:NN \l__postnotes_clear_queue_seq \g__postnotes_print_queue_seq \seq_gclear:N \g__postnotes_queue_seq - \__postnotes_set_pre_print_label:e + \__postnotes_set_print_label:e { \int_use:N \g__postnotes_print_postnotes_int } \seq_if_empty:NTF \g__postnotes_print_queue_seq { \msg_warning:nn { postnotes } { empty-printpostnotes } } @@ -886,7 +895,6 @@ \__postnotes_sort_queue:N \g__postnotes_print_queue_seq \__postnotes_check_floats:N \g__postnotes_print_queue_seq \bool_gset_true:N \g__postnotes_header_vars_next_bool - \__postnotes_get_headers_data:N \g__postnotes_print_queue_seq \__postnotes_set_headers_vars_first: \bool_if:NF \l__postnotes_print_as_list_bool { @@ -963,8 +971,15 @@ } \group_begin: \UseHook { postnotes/print/note/begin } - \__postnotes_get_pageref:Ne \pnthepage + \__postnotes_get_pageref:Ne \l__postnotes_print_page_tl { mark@ \l_postnotes_print_note_id_tl } + \__postnotes_prop_get:nnN { \l_postnotes_print_note_id_tl } + { thechapter } \l__postnotes_print_chapter_tl + \__postnotes_prop_get:nnN { \l_postnotes_print_note_id_tl } + { thesection } \l__postnotes_print_section_tl + \__postnotes_prop_get:nnN { \l_postnotes_print_note_id_tl } + { pnsectname } \l__postnotes_print_sectname_tl + \tl_set_eq:NN \pnthepage \l__postnotes_print_page_tl \__postnotes_prop_get:nnN { \l_postnotes_print_note_id_tl } { mark } \l__postnotes_print_mark_tl @@ -982,10 +997,9 @@ \tl_set:Nn \l__postnotes_print_typeset_mark_tl { \tag_socket_use:n { postnotes/printmark/begin } + \UseHook { postnotes/print/note/typesetmark } \MakeLinkTarget* { postnote. \l_postnotes_print_note_id_tl .text } - \__postnotes_set_text_page_label:e - { \l_postnotes_print_note_id_tl } \l__postnotes_pre_textmark_tl \__postnotes_typeset_text_mark:eV { \l_postnotes_print_note_id_tl } @@ -1007,6 +1021,15 @@ \tag_socket_use:n { postnotes/printnote/begin } \l__postnotes_print_typeset_mark_tl } + \UseHook { postnotes/print/note/ltmarks } + \mark_insert:nn { postnotes/page } + { \l__postnotes_print_page_tl } + \mark_insert:nn { postnotes/chapter } + { \l__postnotes_print_chapter_tl } + \mark_insert:nn { postnotes/section } + { \l__postnotes_print_section_tl } + \mark_insert:nn { postnotes/sectname } + { \l__postnotes_print_sectname_tl } \tag_socket_use:n { postnotes/printtext/begin } \l__postnotes_print_content_tl \tag_socket_use:n { postnotes/printtext/end } @@ -1061,7 +1084,7 @@ \bool_if:NTF \g__postnotes_counteraux_bool { \tl_set:Ne \l__postnotes_tmpa_tl - { { preprint } { \int_use:N \g__postnotes_print_postnotes_int } } + { { print } { \int_use:N \g__postnotes_print_postnotes_int } } \seq_if_in:NVF \g__postnotes_labelseq_seq \l__postnotes_tmpa_tl { \seq_gput_right:NV \g__postnotes_labelseq_seq \l__postnotes_tmpa_tl } \bool_do_until:nn @@ -1245,218 +1268,87 @@ \tl_new:N \pnhdsectlast \tl_new:N \pnhdnamefirst \tl_new:N \pnhdnamelast -\prop_new:N \g__postnotes_header_page_first_prop -\prop_new:N \g__postnotes_header_page_last_prop -\prop_new:N \g__postnotes_header_chap_first_prop -\prop_new:N \g__postnotes_header_chap_last_prop -\prop_new:N \g__postnotes_header_sect_first_prop -\prop_new:N \g__postnotes_header_sect_last_prop -\prop_new:N \g__postnotes_header_name_first_prop -\prop_new:N \g__postnotes_header_name_last_prop -\tl_new:N \g__postnotes_header_prev_last_page_tl -\tl_new:N \g__postnotes_header_prev_last_chap_tl -\tl_new:N \g__postnotes_header_prev_last_sect_tl -\tl_new:N \g__postnotes_header_prev_last_name_tl -\tl_new:N \l__postnotes_prev_text_page_tl -\tl_new:N \l__postnotes_curr_text_page_tl -\tl_new:N \l__postnotes_prev_mark_page_tl -\tl_new:N \l__postnotes_prev_mark_chap_tl -\tl_new:N \l__postnotes_prev_mark_sect_tl -\tl_new:N \l__postnotes_prev_mark_name_tl -\cs_new_protected:Npn \__postnotes_get_headers_data:N #1 - { - \group_begin: - \tl_gclear:N \pnhdpagefirst - \tl_gclear:N \pnhdpagelast - \tl_gclear:N \pnhdchapfirst - \tl_gclear:N \pnhdchaplast - \tl_gclear:N \pnhdsectfirst - \tl_gclear:N \pnhdsectlast - \tl_gclear:N \pnhdnamefirst - \tl_gclear:N \pnhdnamelast - \prop_gclear:N \g__postnotes_header_page_first_prop - \prop_gclear:N \g__postnotes_header_page_last_prop - \prop_gclear:N \g__postnotes_header_chap_first_prop - \prop_gclear:N \g__postnotes_header_chap_last_prop - \prop_gclear:N \g__postnotes_header_sect_first_prop - \prop_gclear:N \g__postnotes_header_sect_last_prop - \prop_gclear:N \g__postnotes_header_name_first_prop - \prop_gclear:N \g__postnotes_header_name_last_prop - \tl_gclear:N \g__postnotes_header_prev_last_page_tl - \tl_gclear:N \g__postnotes_header_prev_last_chap_tl - \tl_gclear:N \g__postnotes_header_prev_last_sect_tl - \tl_gclear:N \g__postnotes_header_prev_last_name_tl - \tl_clear:N \l__postnotes_prev_text_page_tl - \tl_clear:N \l__postnotes_curr_text_page_tl - \tl_clear:N \l__postnotes_prev_mark_page_tl - \tl_clear:N \l__postnotes_prev_mark_chap_tl - \tl_clear:N \l__postnotes_prev_mark_sect_tl - \tl_clear:N \l__postnotes_prev_mark_name_tl - \seq_map_inline:Nn #1 - { - \exp_args:Ne \tl_if_eq:nnT - { \__postnotes_prop_item:nn {##1} { type } } - { note } - { - \__postnotes_get_pageref:Nn - \l__postnotes_curr_text_page_tl { text@ ##1 } - \tl_if_empty:NF \l__postnotes_curr_text_page_tl - { - \tl_if_eq:NNTF - \l__postnotes_prev_text_page_tl - \l__postnotes_curr_text_page_tl - { - \__postnotes_get_pageref:Nn - \l__postnotes_prev_mark_page_tl { mark@ ##1 } - \__postnotes_prop_get:nnN {##1} { thechapter } - \l__postnotes_prev_mark_chap_tl - \__postnotes_prop_get:nnN {##1} { thesection } - \l__postnotes_prev_mark_sect_tl - \__postnotes_prop_get:nnN {##1} { pnsectname } - \l__postnotes_prev_mark_name_tl - } - { - \tl_if_empty:NF \l__postnotes_prev_text_page_tl - { - \prop_gput:NVV \g__postnotes_header_page_last_prop - \l__postnotes_prev_text_page_tl - \l__postnotes_prev_mark_page_tl - \prop_gput:NVV \g__postnotes_header_chap_last_prop - \l__postnotes_prev_text_page_tl - \l__postnotes_prev_mark_chap_tl - \prop_gput:NVV \g__postnotes_header_sect_last_prop - \l__postnotes_prev_text_page_tl - \l__postnotes_prev_mark_sect_tl - \prop_gput:NVV \g__postnotes_header_name_last_prop - \l__postnotes_prev_text_page_tl - \l__postnotes_prev_mark_name_tl - } - \prop_gput:NVe \g__postnotes_header_page_first_prop - \l__postnotes_curr_text_page_tl - { \__postnotes_extract_pageref:n { mark@ ##1 } } - \__postnotes_prop_get:nnN {##1} { thechapter } - \l__postnotes_tmpa_tl - \prop_gput:NVV \g__postnotes_header_chap_first_prop - \l__postnotes_curr_text_page_tl - \l__postnotes_tmpa_tl - \__postnotes_prop_get:nnN {##1} { thesection } - \l__postnotes_tmpa_tl - \prop_gput:NVV \g__postnotes_header_sect_first_prop - \l__postnotes_curr_text_page_tl - \l__postnotes_tmpa_tl - \__postnotes_prop_get:nnN {##1} { pnsectname } - \l__postnotes_tmpa_tl - \prop_gput:NVV \g__postnotes_header_name_first_prop - \l__postnotes_curr_text_page_tl - \l__postnotes_tmpa_tl - \__postnotes_get_pageref:Nn - \l__postnotes_prev_mark_page_tl { mark@ ##1 } - \__postnotes_prop_get:nnN {##1} { thechapter } - \l__postnotes_prev_mark_chap_tl - \__postnotes_prop_get:nnN {##1} { thesection } - \l__postnotes_prev_mark_sect_tl - \__postnotes_prop_get:nnN {##1} { pnsectname } - \l__postnotes_prev_mark_name_tl - \tl_set:NV \l__postnotes_prev_text_page_tl - \l__postnotes_curr_text_page_tl - } - } - } - } - \tl_if_empty:NF \l__postnotes_prev_text_page_tl - { - \prop_gput:NVV \g__postnotes_header_page_last_prop - \l__postnotes_prev_text_page_tl - \l__postnotes_prev_mark_page_tl - \prop_gput:NVV \g__postnotes_header_chap_last_prop - \l__postnotes_prev_text_page_tl - \l__postnotes_prev_mark_chap_tl - \prop_gput:NVV \g__postnotes_header_sect_last_prop - \l__postnotes_prev_text_page_tl - \l__postnotes_prev_mark_sect_tl - \prop_gput:NVV \g__postnotes_header_name_last_prop - \l__postnotes_prev_text_page_tl - \l__postnotes_prev_mark_name_tl - } - \group_end: - } \cs_new_protected:Npn \__postnotes_set_headers_vars:n #1 { \group_begin: - \prop_get:NnNTF \g__postnotes_header_page_first_prop - {#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__postnotes_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__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__postnotes_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__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__postnotes_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__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__postnotes_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 } + \protected@xdef \pnhdpagefirst + { \property_ref:nn { #1 } { postnotes/page/first } } + \protected@xdef \pnhdpagelast + { \property_ref:nn { #1 } { postnotes/page/last } } + \protected@xdef \pnhdchapfirst + { \property_ref:nn { #1 } { postnotes/chapter/first } } + \protected@xdef \pnhdchaplast + { \property_ref:nn { #1 } { postnotes/chapter/last } } + \protected@xdef \pnhdsectfirst + { \property_ref:nn { #1 } { postnotes/section/first } } + \protected@xdef \pnhdsectlast + { \property_ref:nn { #1 } { postnotes/section/last } } + \protected@xdef \pnhdnamefirst + { \property_ref:nn { #1 } { postnotes/sectname/first } } + \protected@xdef \pnhdnamelast + { \property_ref:nn { #1 } { postnotes/sectname/last } } \group_end: } \cs_generate_variant:Nn \__postnotes_set_headers_vars:n { e } +\property_new:nnnn { postnotes/page/first } { shipout } { } + { \FirstMark { postnotes/page } } +\property_new:nnnn { postnotes/page/last } { shipout } { } + { \LastMark { postnotes/page } } +\property_new:nnnn { postnotes/chapter/first } { shipout } { } + { \FirstMark { postnotes/chapter } } +\property_new:nnnn { postnotes/chapter/last } { shipout } { } + { \LastMark { postnotes/chapter } } +\property_new:nnnn { postnotes/section/first } { shipout } { } + { \FirstMark { postnotes/section } } +\property_new:nnnn { postnotes/section/last } { shipout } { } + { \LastMark { postnotes/section } } +\property_new:nnnn { postnotes/sectname/first } { shipout } { } + { \FirstMark { postnotes/sectname } } +\property_new:nnnn { postnotes/sectname/last } { shipout } { } + { \LastMark { postnotes/sectname } } +\clist_const:Nn \c__postnotes_header_marks_clist + { + postnotes/page/first , + postnotes/page/last , + postnotes/chapter/first , + postnotes/chapter/last , + postnotes/section/first , + postnotes/section/last , + postnotes/sectname/first , + postnotes/sectname/last , + } \AddToHook { shipout/before } [ ./header ] { \__postnotes_set_headers_vars_next: } \bool_new:N \g__postnotes_header_vars_next_bool +\int_new:N \g__postnotes_print_header_vars_int \cs_new_protected:Npn \__postnotes_set_headers_vars_next: { \bool_if:NT \g__postnotes_header_vars_next_bool - { \__postnotes_set_headers_vars:e { \int_eval:n { \c@page + 1 } } } - } -\cs_new_protected:Npn \__postnotes_set_headers_vars_first: - { - \__postnotes_set_print_page_label:e - { \int_use:N \g__postnotes_print_postnotes_int } - \__postnotes_set_headers_vars:e { - \__postnotes_extract_pageref:e - { print@ \int_use:N \g__postnotes_print_postnotes_int } + \int_gincr:N \g__postnotes_print_header_vars_int + \exp_args:Ne \property_record:nN + { __postnotes_header_ \int_use:N \g__postnotes_print_header_vars_int } + \c__postnotes_header_marks_clist + \__postnotes_set_headers_vars:e + { __postnotes_header_ \int_use:N \g__postnotes_print_header_vars_int } } } -\NewDocumentCommand \pnheaderdefault {} +\cs_new_protected:Npn \__postnotes_set_headers_vars_first: { - \tl_if_eq:NNTF \pnhdpagefirst \pnhdpagelast - { \pnhdnotes{} ~ \pnhdtopage{} ~ \pnhdpagefirst } - { \pnhdnotes{} ~ \pnhdtopages{} ~ \pnhdpagefirst -- \pnhdpagelast } + \tl_gset:Nn \pnhdpagefirst { \FirstMark{postnotes/page} } + \tl_gset:Nn \pnhdpagelast { \LastMark{postnotes/page} } + \tl_gset:Nn \pnhdchapfirst { \FirstMark{postnotes/chapter} } + \tl_gset:Nn \pnhdchaplast { \LastMark{postnotes/chapter} } + \tl_gset:Nn \pnhdsectfirst { \FirstMark{postnotes/section} } + \tl_gset:Nn \pnhdsectlast { \LastMark{postnotes/section} } + \tl_gset:Nn \pnhdnamefirst { \FirstMark{postnotes/sectname} } + \tl_gset:Nn \pnhdnamelast { \LastMark{postnotes/sectname} } + \int_gincr:N \g__postnotes_print_header_vars_int + \exp_args:Ne \property_record:nN + { __postnotes_header_ \int_use:N \g__postnotes_print_header_vars_int } + \c__postnotes_header_marks_clist + \__postnotes_set_headers_vars:e + { __postnotes_header_ \int_use:N \g__postnotes_print_header_vars_int } } \tl_new:N \l__postnotes_restore_tmp_tl \AddToHook { postnotes/note/begin } [ ./compat/caption ] |