From 2028c55c07634313b6e528d9524529456dbb1c02 Mon Sep 17 00:00:00 2001 From: Mark Wooding Date: Fri, 22 Jul 2022 11:26:15 +0100 Subject: [PATCH] mdwref.dtx: Include help text with errors. Otherwise things get even worse when they're triggered. --- mdwref.dtx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/mdwref.dtx b/mdwref.dtx index 10134d3..66c2d07 100644 --- a/mdwref.dtx +++ b/mdwref.dtx @@ -169,6 +169,7 @@ \ifx\hyperref\@@undefined #1{#2}~\ref{#3}% \else \hyperref[#3]{#1{#2}~\ref*{#3}}\fi% } +\def\xref@fallback#1{\formatxref\relax{?\texttt{#1}}{#1}} % \end{macrocode} % \end{macro} % @@ -192,10 +193,16 @@ \def\@tempa{#2}\def\@tempb{#3}% \ifx\@tempb\q@delim% \PackageError{xref}{Bad ref syntax}% + {A reference name doesn't contain a `:'-delimited prefix. Did you % + mean to use plain \string\ref here?}% + \xref@fallback{#2}% \else% \expandafter\let\expandafter\@tempa\csname xref$#2\endcsname% \ifx\@tempa\relax% \PackageError{xref}{Unknown ref kind `#2'}% + {The ref name's prefix `#2' is unknown: either it's been mistyped % + or there's a missing \string\defxref somewhere.}% + \xref@fallback{#2:#3}% \else% \toks@\expandafter{\@tempa}% \edef\next@##1{##1{\the\toks@}}% -- 2.11.0