I want something like \ifmmode\else\GenerateWarning{The command \backslash uzuka is supported only in math mode.}\fi, which is supposed to generate a warning "The command \uzuka is supported only in math mode.". Is there a command or a package with this capacibility?
Asked
Active
Viewed 1.7k times
58
3 Answers
41
For LaTeX, use the commands described in section 4.9 of clsguide.pdf:
\PackageWarningand\PackageWarningNoLineif you are writing a package\ClassWarningand\ClassWarningNoLineif you are writing a class- The internal generic version for warnings is
\GenericWarning
The expl3 bundle has another interface for warnings and similar messages, see Part III, chapter 11 in source3.pdf.
codeMonkey
- 175
Philipp
- 17,641
22
Just use the built-in \errmessage for errors, e.g. \let\GenerateWarning=\errmessage.
The kind of warnings Latex generates are just messages; \let\GenerateWarning=\message will not interrupt the compile. Latex uses the commands \@latex@warning and \@latex@warning@no@lines to create these for its own warnings: you check the source you find in latex.ltx.
Charles Stewart
- 21,014
- 5
- 65
- 121
-
Yes, that will allow to generate errors. But what about warnings? Is it possible to generate them too? – fiktor Sep 20 '10 at 11:13
-
5Thanks to search using
\errmessagekeyword I've found in TeXBook how to output warning. Actually I've found, that my editor (TeXnicCenter 1.0) treats as warnings output lines like "LaTeX Warning: \uzuka used outside of math mode on input line 211", which can be generated using\message{LaTeX Warning: \noexpand\uzuka used outside of math mode on input line \the\inputlineno}. Thank you. – fiktor Sep 20 '10 at 11:21 -
-
17
You can use \typeout{msg}. The command will print msg on the terminal and in the log file.
yannisl
- 117,160
expl3approach has been designed to allow suppression of messages in a selective fashion. Packages such assilencecan do the same for LaTeX2e messages but as an 'add on'. – Joseph Wright Sep 20 '10 at 11:43l3kernelnow instead ofexpl3.) – Philipp Dec 09 '12 at 20:52\PackageError– tobiasBora Jan 27 '22 at 17:22