[latex3-commits] [latex3/latex2e] ltmarks-multicol: improve error message and docu (cee2a6079)
github at latex-project.org
github at latex-project.org
Thu Nov 14 16:25:27 CET 2024
Repository : https://github.com/latex3/latex2e
On branch : ltmarks-multicol
Link : https://github.com/latex3/latex2e/commit/cee2a6079da672cdcbb897878ed34220afc25aab
>---------------------------------------------------------------
commit cee2a6079da672cdcbb897878ed34220afc25aab
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date: Thu Nov 14 16:25:27 2024 +0100
improve error message and docu
>---------------------------------------------------------------
cee2a6079da672cdcbb897878ed34220afc25aab
base/changes.txt | 5 +++
base/ltmarks.dtx | 37 ++++++++++--------
base/testfiles-ltmarks/xmarks-001.tlg | 4 +-
base/testfiles-ltmarks/xmarks-003.tlg | 24 ++++++------
base/testfiles-ltmarks/xmarks-004.tlg | 32 +++++++--------
required/tools/testfiles/tlb-multicol-marks.lvt | 8 +++-
required/tools/testfiles/tlb-multicol-marks.tlg | 52 +++++++++++++++++--------
7 files changed, 99 insertions(+), 63 deletions(-)
diff --git a/base/changes.txt b/base/changes.txt
index 407fd373e..94d3dc3b0 100644
--- a/base/changes.txt
+++ b/base/changes.txt
@@ -6,6 +6,11 @@ to completeness or accuracy and it contains some references to files that are
not part of the distribution.
================================================================================
+2024-11-14 Frank Mittelbach <Frank.Mittelbach at latex-project.org>
+
+ * ltmarks.dtx (subsection{Placing and retrieving marks}):
+ Improve error message if mark region or class is unknown
+
2024-11-12 Frank Mittelbach <Frank.Mittelbach at latex-project.org>
* lttagging.dtx (subsection{Tagging support for output routines}):
diff --git a/base/ltmarks.dtx b/base/ltmarks.dtx
index f77df396b..08a4ad3a7 100644
--- a/base/ltmarks.dtx
+++ b/base/ltmarks.dtx
@@ -17,7 +17,7 @@
%<*driver>
% \fi
\ProvidesFile{ltmarks.dtx}
- [2024/11/09 v1.1a LaTeX Kernel (Marks)]
+ [2024/11/14 v1.1a LaTeX Kernel (Marks)]
% \iffalse
%
\documentclass{l3doc}
@@ -1565,9 +1565,9 @@
\cs_new_protected:Npn \@@_set_structure_to_err:n #1 {
\seq_map_inline:Nn \g_@@_classes_seq
{
- \tl_gset:ce { g_@@_ #1 _top_ ##1 _tl } { \@@_value:nn{?}{\@@_error:n {#1}} }
- \tl_gset:ce { g_@@_ #1 _first_ ##1 _tl } { \@@_value:nn{?}{\@@_error:n {#1} }}
- \tl_gset:ce { g_@@_ #1 _last_ ##1 _tl } { \@@_value:nn{?}{\@@_error:n {#1} }}
+ \tl_gset:ce { g_@@_ #1 _top_ ##1 _tl } { \@@_value:nn{?}{\@@_error:nn {#1}{?} }}
+ \tl_gset:ce { g_@@_ #1 _first_ ##1 _tl } { \@@_value:nn{?}{\@@_error:nn {#1}{?} }}
+ \tl_gset:ce { g_@@_ #1 _last_ ##1 _tl } { \@@_value:nn{?}{\@@_error:nn {#1}{?} }}
}
}
% \end{macrocode}
@@ -1579,8 +1579,8 @@
% This is not protected so that it expands, for example in a
% \cs{typeout} to the next level.
% \begin{macrocode}
-\cs_new_protected:Npn \@@_error:n #1 {
- \msg_error:nnn { mark } { invalid-use } {#1}
+\cs_new_protected:Npn \@@_error:nn #1#2 {
+ \msg_error:nnnn { mark } { invalid-use } {#1} {#2}
}
% \end{macrocode}
% \end{macro}
@@ -1725,21 +1725,26 @@
% otherwise their value will be wrong.
%
% \begin{macrocode}
-\cs_new:Npn \mark_use_first:nn #1#2 { \@@_use_check:nn { g_@@_#1_first_#2_tl } { #1 } }
-\cs_new:Npn \mark_use_last:nn #1#2 { \@@_use_check:nn { g_@@_#1_last_#2_tl } { #1 } }
-\cs_new:Npn \mark_use_top:nn #1#2 { \@@_use_check:nn { g_@@_#1_top_#2_tl } { #1 } }
+\cs_new:Npn \mark_use_first:nn #1#2 { \@@_use_check:nnn { g_@@_#1_first_#2_tl } {#1} {#2} }
+\cs_new:Npn \mark_use_last:nn #1#2 { \@@_use_check:nnn { g_@@_#1_last_#2_tl } {#1} {#2} }
+\cs_new:Npn \mark_use_top:nn #1#2 { \@@_use_check:nnn { g_@@_#1_top_#2_tl } {#1} {#2} }
% \end{macrocode}
%
% If used with an unknown class or region they generate an error.
-% If that happens in an expandable context, e.g., in a \cs{typeout}
-% you only see something like
+% If that happens in an expandable context then the error
+% generation is delayed (e.g., if used in a \cs{section}) and
+% happens if the code is finally used in typesetting, e.g., in the
+% TOC or a running header.
+% If used in a \cs{typeout} you only see something like
% \verb=\__mark_error:n{page}=.
-% Not that great but better than low-level errors, I guess.
+% The latter is not that great but better than low-level errors, I
+% guess, and I don't want to use an expandable error because of its
+% size restrictions.
% \changes{v1.1a}{2024/11/09}{}
% \begin{macrocode}
-\cs_new:Npn \@@_use_check:nn #1#2 {
+\cs_new:Npn \@@_use_check:nnn #1#2#3 {
\tl_if_eq:cNTF {#1} \relax
- { \@@_error:n {#2} }
+ { \@@_error:nn {#2} {#3} }
{ \@@_drop_id:v {#1} }
}
% \end{macrocode}
@@ -1823,13 +1828,13 @@
% should probably be separated into two different errors.
% \begin{macrocode}
\msg_new:nnnn { mark } { invalid-use }
- { Mark~region~'#1'~not~usable~or~class~unknown }
+ { Mark~region~'#1'~not~usable~or~class~'#2'~unknown }
{
\c__msg_coding_error_text_tl
The~region~'#1'~is~either~not~known~or~data~for~it~
still~needs~to~be~assembled,~e.g.,~last-column~
while~building~the~first-column.~
- Also~possible:~the~class~name~is~misspelled.
+ Also~possible:~the~class~namne~'#2'~is~misspelled.
\c__msg_return_text_tl
}
% \end{macrocode}
diff --git a/base/testfiles-ltmarks/xmarks-001.tlg b/base/testfiles-ltmarks/xmarks-001.tlg
index df0ea2eb3..aa61ca28b 100644
--- a/base/testfiles-ltmarks/xmarks-001.tlg
+++ b/base/testfiles-ltmarks/xmarks-001.tlg
@@ -107,12 +107,12 @@ l. ...
This is a coding error.
LaTeX was asked to manipulate a mark of class 'unknown', but this class of marks does not exist.
!second foo!
-! LaTeX mark Error: Mark region 'mistake' not usable or class unknown
+! LaTeX mark Error: Mark region 'mistake' not usable or class 'foo' unknown
For immediate help type H <return>.
...
l. ...\TopMark[mistake]{foo}
This is a coding error.
-The region 'mistake' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class name is misspelled.
+The region 'mistake' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class namne 'foo' is misspelled.
Try typing <return> to proceed.
If that doesn't work, type X <return> to quit.
! LaTeX Error: Can be used only in preamble.
diff --git a/base/testfiles-ltmarks/xmarks-003.tlg b/base/testfiles-ltmarks/xmarks-003.tlg
index 7ce13f535..113fee829 100644
--- a/base/testfiles-ltmarks/xmarks-003.tlg
+++ b/base/testfiles-ltmarks/xmarks-003.tlg
@@ -11,23 +11,23 @@ Marks: set 2e-right <- '\__mark_value:nn {2}{\MakeUppercase []{1\hskip 1em\re
Marks: set 2e-right-nonempty <- '\__mark_value:nn {3}{\MakeUppercase []{1\hskip 1em\relax A test}}' on line ...
Marks: set foo <- '\__mark_value:nn {4}{first foo}' on line ...
Marks: 2e-left in OR (oneside first column):
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: 2e-right in OR (oneside first column):
column (current) =| {0} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
column (first)=| {0} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: 2e-right-nonempty in OR (oneside first column):
column (current) =| {0} | {3} \MakeUppercase []{1\hskip 1em\relax A test} | {3} \MakeUppercase []{1\hskip 1em\relax A test} |
column (first)=| {0} | {3} \MakeUppercase []{1\hskip 1em\relax A test} | {3} \MakeUppercase []{1\hskip 1em\relax A test} |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: foo in OR (oneside first column):
column (current) =| {0} | {4} first foo | {4} first foo |
column (first)=| {0} | {4} first foo | {4} first foo |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: bar in OR (oneside first column):
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: baz in OR (oneside first column):
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: set foo <- '\__mark_value:nn {5}{second foo}' on line ...
Marks: set bar <- '\__mark_value:nn {6}{first bar}' on line ...
Marks: 2e-left in OR (oneside second column):
@@ -61,35 +61,35 @@ Marks: set bar <- '\__mark_value:nn {8}{second bar}' on line ...
Marks: set foo <- '\__mark_value:nn {9}{forth foo}' on line ...
Marks: set baz <- '\__mark_value:nn {10}{first baz}' on line ...
Marks: 2e-left in OR (oneside first column):
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: 2e-right in OR (oneside first column):
page (current) =| {0} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
column (previous)=| {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
column (current) =| {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
column (first)=| {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: 2e-right-nonempty in OR (oneside first column):
page (current) =| {0} | {3} \MakeUppercase []{1\hskip 1em\relax A test} | {3} \MakeUppercase []{1\hskip 1em\relax A test} |
column (previous)=| {3} \MakeUppercase []{1\hskip 1em\relax A test} | {3} \MakeUppercase []{1\hskip 1em\relax A test} | {3} \MakeUppercase []{1\hskip 1em\relax A test} |
column (current) =| {3} \MakeUppercase []{1\hskip 1em\relax A test} | {3} \MakeUppercase []{1\hskip 1em\relax A test} | {3} \MakeUppercase []{1\hskip 1em\relax A test} |
column (first)=| {3} \MakeUppercase []{1\hskip 1em\relax A test} | {3} \MakeUppercase []{1\hskip 1em\relax A test} | {3} \MakeUppercase []{1\hskip 1em\relax A test} |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: foo in OR (oneside first column):
page (current) =| {0} | {4} first foo | {5} second foo |
column (previous)=| {4} first foo | {5} second foo | {5} second foo |
column (current) =| {5} second foo | {7} third foo | {9} forth foo |
column (first)=| {5} second foo | {7} third foo | {9} forth foo |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: bar in OR (oneside first column):
page (current) =| {0} | {6} first bar | {6} first bar |
column (previous)=| {0} | {6} first bar | {6} first bar |
column (current) =| {6} first bar | {8} second bar | {8} second bar |
column (first)=| {6} first bar | {8} second bar | {8} second bar |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: baz in OR (oneside first column):
column (current) =| {0} | {10} first baz | {10} first baz |
column (first)=| {0} | {10} first baz | {10} first baz |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: 2e-left in OR (oneside second column):
Marks: 2e-right in OR (oneside second column):
page (previous)=| {0} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
diff --git a/base/testfiles-ltmarks/xmarks-004.tlg b/base/testfiles-ltmarks/xmarks-004.tlg
index 3fe4f0a5b..ebf933f9e 100644
--- a/base/testfiles-ltmarks/xmarks-004.tlg
+++ b/base/testfiles-ltmarks/xmarks-004.tlg
@@ -13,21 +13,21 @@ Marks: set foo <- '\__mark_value:nn {4}{first foo}' on line ...
Marks: 2e-left in OR (twoside-odd first column):
column (current) =| {0} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
column (first)=| {0} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: 2e-right in OR (twoside-odd first column):
column (current) =| {0} | {3} | {3} |
column (first)=| {0} | {3} | {3} |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: 2e-right-nonempty in OR (twoside-odd first column):
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: foo in OR (twoside-odd first column):
column (current) =| {0} | {4} first foo | {4} first foo |
column (first)=| {0} | {4} first foo | {4} first foo |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: bar in OR (twoside-odd first column):
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: baz in OR (twoside-odd first column):
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: set foo <- '\__mark_value:nn {5}{second foo}' on line ...
Marks: set bar <- '\__mark_value:nn {6}{first bar}' on line ...
Marks: 2e-left in OR (twoside-odd second column):
@@ -65,47 +65,47 @@ Marks: 2e-left in OR (twoside-even first column):
column (previous)=| {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
column (current) =| {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
column (first)=| {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} | {2} \MakeUppercase []{1\hskip 1em\relax A test} |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: 2e-right in OR (twoside-even first column):
page (current) =| {0} | {3} | {3} |
column (previous)=| {3} | {3} | {3} |
column (current) =| {3} | {3} | {3} |
column (first)=| {3} | {3} | {3} |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: 2e-right-nonempty in OR (twoside-even first column):
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: foo in OR (twoside-even first column):
page (current) =| {0} | {4} first foo | {5} second foo |
column (previous)=| {4} first foo | {5} second foo | {5} second foo |
column (current) =| {5} second foo | {7} third foo | {9} forth foo |
column (first)=| {5} second foo | {7} third foo | {9} forth foo |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: bar in OR (twoside-even first column):
page (current) =| {0} | {6} first bar | {6} first bar |
column (previous)=| {0} | {6} first bar | {6} first bar |
column (current) =| {6} first bar | {8} second bar | {8} second bar |
column (first)=| {6} first bar | {8} second bar | {8} second bar |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
Marks: baz in OR (twoside-even first column):
column (current) =| {0} | {10} first baz | {10} first baz |
column (first)=| {0} | {10} first baz | {10} first baz |
- column (last) =| {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} | {?} \__mark_error:n {last-column} |
-! LaTeX mark Error: Mark region 'page' not usable or class unknown
+ column (last) =| {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} | {?} \__mark_error:nn {last-column}{?} |
+! LaTeX mark Error: Mark region 'page' not usable or class 'foobar' unknown
For immediate help type H <return>.
...
l. ...\TopMark{foobar}
% does not exist
This is a coding error.
-The region 'page' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class name is misspelled.
+The region 'page' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class namne 'foobar' is misspelled.
Try typing <return> to proceed.
If that doesn't work, type X <return> to quit.
-! LaTeX mark Error: Mark region 'page' not usable or class unknown
+! LaTeX mark Error: Mark region 'page' not usable or class 'foobar' unknown
For immediate help type H <return>.
...
l. ...\FirstMark{foobar}
% does not exist
This is a coding error.
-The region 'page' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class name is misspelled.
+The region 'page' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class namne 'foobar' is misspelled.
Try typing <return> to proceed.
If that doesn't work, type X <return> to quit.
equal
diff --git a/required/tools/testfiles/tlb-multicol-marks.lvt b/required/tools/testfiles/tlb-multicol-marks.lvt
index c7aab36b8..8dae5a726 100644
--- a/required/tools/testfiles/tlb-multicol-marks.lvt
+++ b/required/tools/testfiles/tlb-multicol-marks.lvt
@@ -116,6 +116,10 @@ abc
text \InsertMark{DictMark}{s2}s2
\end{multicols}
+\typeout{----> Ok mark in typeout: \FirstMark{DictMark}}
+\typeout{----> Wrong mark in typeout: \FirstMark{unkown-class}}
+
+
@@ -123,5 +127,7 @@ abc
\FirstMark[column-13]{DictMark}
-\FirstMark{unkown-class}
+\section{With mark: \FirstMark{unkown-class}}
+
+
\end{document}
diff --git a/required/tools/testfiles/tlb-multicol-marks.tlg b/required/tools/testfiles/tlb-multicol-marks.tlg
index 447e11d2b..723fe7495 100644
--- a/required/tools/testfiles/tlb-multicol-marks.tlg
+++ b/required/tools/testfiles/tlb-multicol-marks.tlg
@@ -338,44 +338,48 @@ Marks: -- reinsert marks (multicol)
Marks: set DictMark <- '\__mark_value:nn {47}{s2}' on line ...
Marks: set DictMark <- '\__mark_value:nn {48}{s2}' on line ...
Marks: -- finished reinserting marks (multicol)
-! LaTeX mark Error: Mark region 'column-3' not usable or class unknown
+----> Ok mark in typeout: q2
+----> Wrong mark in typeout: \__mark_error:nn {page}{unkown-class}
+! LaTeX mark Error: Mark region 'column-3' not usable or class 'DictMark' unknown
For immediate help type H <return>.
...
l. ...\FirstMark[column-3]{DictMark}
This is a coding error.
-The region 'column-3' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class name is misspelled.
+The region 'column-3' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class namne 'DictMark' is misspelled.
Try typing <return> to proceed.
If that doesn't work, type X <return> to quit.
-! LaTeX mark Error: Mark region 'column-13' not usable or class unknown
+! LaTeX mark Error: Mark region 'column-13' not usable or class 'DictMark' unknown
For immediate help type H <return>.
...
l. ...\FirstMark[column-13]{DictMark}
This is a coding error.
-The region 'column-13' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class name is misspelled.
+The region 'column-13' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class namne 'DictMark' is misspelled.
Try typing <return> to proceed.
If that doesn't work, type X <return> to quit.
-! LaTeX mark Error: Mark region 'page' not usable or class unknown
+! LaTeX mark Error: Mark region 'page' not usable or class 'unkown-class' unknown
For immediate help type H <return>.
...
-l. ...\FirstMark{unkown-class}
+l. ......tion{With mark: \FirstMark{unkown-class}}
This is a coding error.
-The region 'page' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class name is misspelled.
+The region 'page' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class namne 'unkown-class' is misspelled.
Try typing <return> to proceed.
If that doesn't work, type X <return> to quit.
+Marks: set 2e-left <- '\__mark_value:nn {49}{\MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}}}' on line ...
+Marks: set 2e-right <- '\__mark_value:nn {50}{}' on line ...
Marks: 2e-left in OR (twoside-even):
page (previous)=| {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} |
- page (current) =| {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} |
+ page (current) =| {26} \MakeUppercase []{3\hskip 1em\relax C} | {49} \MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}} | {49} \MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}} |
column (previous)=| {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} |
- column (current) =| {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} |
- column (first)=| {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} |
- column (last) =| {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} | {26} \MakeUppercase []{3\hskip 1em\relax C} |
+ column (current) =| {26} \MakeUppercase []{3\hskip 1em\relax C} | {49} \MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}} | {49} \MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}} |
+ column (first)=| {26} \MakeUppercase []{3\hskip 1em\relax C} | {49} \MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}} | {49} \MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}} |
+ column (last) =| {26} \MakeUppercase []{3\hskip 1em\relax C} | {49} \MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}} | {49} \MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}} |
Marks: 2e-right in OR (twoside-even):
page (previous)=| {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 |
- page (current) =| {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 |
+ page (current) =| {31} 3.1\hskip 1em\relax C sub1 | {50} | {50} |
column (previous)=| {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 |
- column (current) =| {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 |
- column (first)=| {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 |
- column (last) =| {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 | {31} 3.1\hskip 1em\relax C sub1 |
+ column (current) =| {31} 3.1\hskip 1em\relax C sub1 | {50} | {50} |
+ column (first)=| {31} 3.1\hskip 1em\relax C sub1 | {50} | {50} |
+ column (last) =| {31} 3.1\hskip 1em\relax C sub1 | {50} | {50} |
Marks: 2e-right-nonempty in OR (twoside-even):
page (previous)=| {32} 3.1\hskip 1em\relax C sub1 | {32} 3.1\hskip 1em\relax C sub1 | {32} 3.1\hskip 1em\relax C sub1 |
page (current) =| {32} 3.1\hskip 1em\relax C sub1 | {32} 3.1\hskip 1em\relax C sub1 | {32} 3.1\hskip 1em\relax C sub1 |
@@ -390,6 +394,22 @@ Marks: DictMark in OR (twoside-even):
column (current) =| {45} r2 | {47} s2 | {48} s2 |
column (first)=| {45} r2 | {47} s2 | {48} s2 |
column (last) =| {45} r2 | {47} s2 | {48} s2 |
-==> Header: \MakeUppercase []{3\hskip 1em\relax C}-- ??? \MakeUppercase []{3\hskip 1em\relax C}--3.1\hskip 1em\relax C sub1
+! LaTeX mark Error: Mark region 'PAGE' not usable or class 'UNKOWN-CLASS' unknown
+For immediate help type H <return>.
+ ...
+l. ...\end{document}
+This is a coding error.
+The region 'PAGE' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class namne 'UNKOWN-CLASS' is misspelled.
+Try typing <return> to proceed.
+If that doesn't work, type X <return> to quit.
+! LaTeX mark Error: Mark region 'PAGE' not usable or class 'UNKOWN-CLASS' unknown
+For immediate help type H <return>.
+ ...
+l. ...\end{document}
+This is a coding error.
+The region 'PAGE' is either not known or data for it still needs to be assembled, e.g., last-column while building the first-column. Also possible: the class namne 'UNKOWN-CLASS' is misspelled.
+Try typing <return> to proceed.
+If that doesn't work, type X <return> to quit.
+==> Header: \MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}}-- ??? \MakeUppercase []{4\hskip 1em\relax With mark: \__mark_error:nn {page}{unkown-class}}--
==> Footer: s2--s2 page: 6
[6] (tlb-multicol-marks.aux)
More information about the latex3-commits
mailing list.