summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/zref-check
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-02-08 21:51:11 +0000
committerKarl Berry <karl@freefriends.org>2022-02-08 21:51:11 +0000
commit35e83165817085cc1bdbbf9d5b7ba8e05a1bb8da (patch)
tree67709266a70af4ec44022470381e8a8651164d2d /Master/texmf-dist/tex/latex/zref-check
parent8b07e19420203613f0ed72a9ec1f7e6585cf8886 (diff)
zref-check (8feb22)
git-svn-id: svn://tug.org/texlive/trunk@61950 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/zref-check')
-rw-r--r--Master/texmf-dist/tex/latex/zref-check/zref-check.sty123
1 files changed, 64 insertions, 59 deletions
diff --git a/Master/texmf-dist/tex/latex/zref-check/zref-check.sty b/Master/texmf-dist/tex/latex/zref-check/zref-check.sty
index 4fc4cf20659..b510378bd2b 100644
--- a/Master/texmf-dist/tex/latex/zref-check/zref-check.sty
+++ b/Master/texmf-dist/tex/latex/zref-check/zref-check.sty
@@ -8,7 +8,7 @@
%%
%% This file was generated from file(s) of the LaTeX package "zref-check".
%%
-%% Copyright (C) 2021 Gustavo Barros
+%% Copyright (C) 2021-2022 Gustavo Barros
%%
%% It may be distributed and/or modified under the conditions of the
%% LaTeX Project Public License (LPPL), either version 1.3c of this
@@ -53,7 +53,7 @@
}%
\endinput
}%
-\ProvidesExplPackage {zref-check} {2021-12-20} {0.2.3}
+\ProvidesExplPackage {zref-check} {2022-02-08} {0.2.4}
{Flexible cross-references with contextual checks based on zref}
\RequirePackage { zref-user }
\RequirePackage { zref-abspage }
@@ -86,6 +86,12 @@
zc@abschap ,
zc@abssec
}
+\zref@newlist { zrefcheck-zrefvario }
+\zref@addprops { zrefcheck-zrefvario }
+ {
+ page , % for messages
+ abspage ,
+ }
\cs_new_protected:Npn \__zrefcheck_message:nnnn #1#2#3#4
{
\use:c { msg_ \l__zrefcheck_msglevel_tl :nnnnn }
@@ -128,11 +134,13 @@
Control~sequence~named~'#1'~used~in~option~'labelcmd'~is~not~defined.~
Using~default~value.
}
-\msg_new:nnn { zref-check } { option-deprecated }
+\msg_new:nnn { zref-check } { option-deprecated-with-alternative }
{
- Option~'#1'~has~been~deprecated.\iow_newline:
- Use~'#2'~as~a~replacement.
+ Option~'#1'~has~been~deprecated~\msg_line_context:.\iow_newline:
+ Use~'#2'~instead.
}
+\msg_new:nnn { zref-check } { option-deprecated }
+ { Option~'#1'~has~been~deprecated~\msg_line_context:. }
\cs_new_eq:NN \__zrefcheck_int_to_roman:w \__int_to_roman:w
\prg_new_conditional:Npnn \__zrefcheck_is_integer:n #1 { p, T , F , TF }
{
@@ -216,13 +224,13 @@
msglevel / obeydraft .code:n =
{
% NOTE Option value deprecated in 2021-12-07 for v0.2.2.
- \msg_warning:nnnn { zref-check }{ option-deprecated }
+ \msg_warning:nnnn { zref-check }{ option-deprecated-with-alternative }
{ msglevel=obeydraft } { msglevel=infoifdraft }
} ,
msglevel / obeyfinal .code:n =
{
% NOTE Option value deprecated in 2021-12-07 for v0.2.2.
- \msg_warning:nnnn { zref-check }{ option-deprecated }
+ \msg_warning:nnnn { zref-check }{ option-deprecated-with-alternative }
{ msglevel=obeyfinal } { msglevel=warniffinal }
} ,
msglevel .value_required:n = true ,
@@ -263,13 +271,13 @@
onpage / obeydraft .code:n =
{
% NOTE Option value deprecated in 2021-12-07 for v0.2.2.
- \msg_warning:nnnn { zref-check }{ option-deprecated }
+ \msg_warning:nnnn { zref-check }{ option-deprecated-with-alternative }
{ onpage=obeydraft } { onpage=labelseqifdraft }
} ,
onpage / obeyfinal .code:n =
{
% NOTE Option value deprecated in 2021-12-07 for v0.2.2.
- \msg_warning:nnnn { zref-check }{ option-deprecated }
+ \msg_warning:nnnn { zref-check }{ option-deprecated-with-alternative }
{ onpage=obeyfinal } { onpage=msgiffinal }
} ,
onpage .value_required:n = true ,
@@ -290,47 +298,14 @@
closerange .value_required:n = true ,
closerange .initial:n = 5
}
-\tl_new:N \l__zrefcheck_target_label_tl
-\bool_new:N \l__zrefcheck_target_label_bool
\keys_define:nn { zref-check }
{
labelcmd .code:n =
{
- \tl_set:Nn \l__zrefcheck_target_label_tl {#1}
- \bool_set_true:N \l__zrefcheck_target_label_bool
+ % NOTE Option value deprecated in 2022-02-08 for v0.2.4.
+ \msg_warning:nnn { zref-check }{ option-deprecated }
+ { labelcmd }
} ,
- labelcmd .value_required:n = true ,
- }
-\cs_new_protected:Npn \__zrefcheck_target_label:n #1
- { \zref@label {#1} }
-\AddToHook { begindocument }
- {
- \bool_if:NT \l__zrefcheck_target_label_bool
- {
- \tl_if_blank:VT \l__zrefcheck_target_label_tl
- { \tl_clear:N \l__zrefcheck_target_label_tl }
- \cs_if_exist:cTF { \l__zrefcheck_target_label_tl }
- {
- \cs_set_protected:Npx \__zrefcheck_target_label:n #1
- {
- \exp_not:o
- { \cs:w \l__zrefcheck_target_label_tl \cs_end: }
- {#1}
- }
- }
- {
- \exp_args:Nnno \msg_warning:nnn { zref-check }
- { labelcmd-undefined } { \l__zrefcheck_target_label_tl }
- }
- }
- \keys_define:nn { zref-check }
- {
- labelcmd .code:n =
- {
- \msg_warning:nnn { zref-check }
- { option-preamble-only } { labelcmd }
- }
- }
}
\RequirePackage { l3keys2e }
\ProcessKeysOptions { zref-check }
@@ -478,7 +453,7 @@
{
\group_begin:
\refstepcounter { zrefcheck }
- \zref@wrapper@babel \__zrefcheck_target_label:n {#1}
+ \zref@wrapper@babel \zref@label {#1}
#2
\tl_if_empty:nF {#2}
{
@@ -490,7 +465,7 @@
\NewDocumentEnvironment {zcregion} { m }
{
\refstepcounter { zrefcheck }
- \zref@wrapper@babel \__zrefcheck_target_label:n {#1}
+ \zref@wrapper@babel \zref@label {#1}
}
{
\zref@wrapper@babel
@@ -519,6 +494,7 @@
prevpage ,
nextpage ,
facing ,
+ otherpage ,
pagegap ,
above ,
below ,
@@ -627,19 +603,31 @@
\__zrefcheck_check_thispage:nnT
{#2} {#3}
{ \bool_set_true:N \l__zrefcheck_onpage_bool }
- \__zrefcheck_check_thispage:nnT
- {#2} { \__zrefcheck_end_lblfmt:n {#3} }
- { \bool_set_true:N \l__zrefcheck_onpage_bool }
- \zref@ifrefundefined { \__zrefcheck_end_lblfmt:n {#2} }
- {}
+ \zref@ifrefundefined { \__zrefcheck_end_lblfmt:n {#3} }
+ {
+ \zref@ifrefundefined { \__zrefcheck_end_lblfmt:n {#2} }
+ {}
+ {
+ \__zrefcheck_check_thispage:nnT
+ { \__zrefcheck_end_lblfmt:n {#2} } {#3}
+ { \bool_set_true:N \l__zrefcheck_onpage_bool }
+ }
+ }
{
\__zrefcheck_check_thispage:nnT
- { \__zrefcheck_end_lblfmt:n {#2} } {#3}
- { \bool_set_true:N \l__zrefcheck_onpage_bool }
- \__zrefcheck_check_thispage:nnT
- { \__zrefcheck_end_lblfmt:n {#2} }
- { \__zrefcheck_end_lblfmt:n {#3} }
+ {#2} { \__zrefcheck_end_lblfmt:n {#3} }
{ \bool_set_true:N \l__zrefcheck_onpage_bool }
+ \zref@ifrefundefined { \__zrefcheck_end_lblfmt:n {#2} }
+ {}
+ {
+ \__zrefcheck_check_thispage:nnT
+ { \__zrefcheck_end_lblfmt:n {#2} } {#3}
+ { \bool_set_true:N \l__zrefcheck_onpage_bool }
+ \__zrefcheck_check_thispage:nnT
+ { \__zrefcheck_end_lblfmt:n {#2} }
+ { \__zrefcheck_end_lblfmt:n {#3} }
+ { \bool_set_true:N \l__zrefcheck_onpage_bool }
+ }
}
}
\bool_if:NTF \l__zrefcheck_passedcheck_bool
@@ -664,6 +652,7 @@
}
\group_end:
}
+\cs_generate_variant:Nn \__zrefcheck_do_check:nnn { nnV }
\int_new:N \l__zrefcheck_lbl_int
\int_new:N \l__zrefcheck_ref_int
\int_new:N \l__zrefcheck_lbl_b_int
@@ -679,13 +668,19 @@
{
\int_compare_p:nNn
{ \l__zrefcheck_lbl_int } = { \l__zrefcheck_ref_int } &&
- ! \int_compare_p:nNn { \l__zrefcheck_lbl_int } = { 0 } &&
- ! \int_compare_p:nNn { \l__zrefcheck_ref_int } = { 0 }
+ ! \int_compare_p:nNn { \l__zrefcheck_lbl_int } = { 0 } &&
+ ! \int_compare_p:nNn { \l__zrefcheck_ref_int } = { 0 }
}
{ \group_insert_after:N \prg_return_true: }
{ \group_insert_after:N \prg_return_false: }
\group_end:
}
+\prg_new_protected_conditional:Npnn \__zrefcheck_check_otherpage:nn #1#2 { T , F , TF }
+ {
+ \__zrefcheck_check_thispage:nnTF {#1} {#2}
+ { \prg_return_false: }
+ { \prg_return_true: }
+ }
\prg_new_protected_conditional:Npnn \__zrefcheck_check_above:nn #1#2 { F , TF }
{
\group_begin:
@@ -1102,6 +1097,16 @@
\__zrefcheck_run_checks:nnx
{ \l__zrefcheck_zcheck_checks_seq } {#1} { \l__zrefcheck_checkbeg_tl }
}
+\cs_new_protected:Npn \zrefcheck_zrefvario_label:
+ {
+ \int_gincr:N \g__zrefcheck_id_int
+ \tl_set:Nx \l__zrefcheck_checkbeg_tl
+ { \__zrefcheck_check_lblfmt:n { \g__zrefcheck_id_int } }
+ \zref@labelbylist { \l__zrefcheck_checkbeg_tl } { zrefcheck-zrefvario }
+ }
+\cs_new_protected:Npn \zrefcheck_zrefvario_run_check_on_label:nn #1#2
+ { \__zrefcheck_do_check:nnV {#1} {#2} \l__zrefcheck_checkbeg_tl }
+\cs_generate_variant:Nn \zrefcheck_zrefvario_run_check_on_label:nn { Vn }
%%
%%
%% End of file `zref-check.sty'.