doc/sod.sty: Report errors for undeclared description categories.
authorMark Wooding <mdw@distorted.org.uk>
Tue, 23 Jun 2020 09:18:04 +0000 (10:18 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Tue, 23 Jun 2020 09:18:04 +0000 (10:18 +0100)
doc/sod.sty

index c35e110..592ff5c 100644 (file)
 \def\@descname@i[#1]#2{%
   \expandafter\let\expandafter\@tempa\csname cat!#2\endcsname%
   \expandafter\let\expandafter\@tempb\csname modcat/#1\endcsname%
-  \ifx\@tempa\relax\@tempb{#2}\else\@tempa\@tempb\fi}
+  \ifx\@tempa\relax\PackageError{sod}{unknown description category `#2'}%
+    {I don't know what `#2' means as a thing you might try to\MessageBreak
+     document.  Maybe you mistyped it, or forgot to say\MessageBreak
+     `\protect\definedescribecategory' for it.  For now I'm going\MessageBreak
+     just use the literal string `#2' and hope that doesn't look\MessageBreak
+     too terrible.}%
+    \@tempb{#2}%
+  \else\@tempa\@tempb\fi}
 
 %% Call a modifier method.
 \def\@mod@dispatch#1#2{\csname #1/#2\endcsname}