Closed komascript closed 3 years ago
The warning has to be shown, indeed. I've labelled this issue as a bug and I'll try to fix for the next release.
The fix still defines \ds@option
for all class options and this could confuse packages testing for it
\documentclass[blub]{article}
\makeatletter
\show\ds@blub
\usepackage[ngerman]{babel}
\makeatletter
\show\ds@blub
\begin{document}
abc
\end{document}
gives
Package babel Info: Making " an active character on input line 122.
)))
> \ds@blub=macro:
->.
We wonder if babel could reset undefined options to \relax.
Please reopen, because defining all \ds@<option>
of the class options list as empty, if <option>.ldf
and babel-<option>.tex
do not exist, breaks packages, that do test for the exist of \ds@<option>
, e.g., package scrbase
.
You should at least, make sure, that \ds@<option>
is undefined (or at least \relax
) after babel
has been finished. You could do so, e.g. adding \AtEndOfPackage{\expandafter\let\csname ds@#1\endcsname\undefined}
after \@namedef{ds@#1}{}
in line 1065 and 1091 of babel.sty
.
@komascript agreed. @jbezos this violates the option mechanism of LaTeX in my opinion. Babel should not pretend that such options are set if they aren't.
If I use babel, LaTeX does not longer report unused global option(s). E.g.:
should IMHO report:
but it does not.