2

I noticed that the order of loading mathabx and ngerman is essential. In this non-working minimal example

\documentclass{standalone}
\usepackage{ngerman}
\usepackage{mathabx}
\begin{document}
$\rightarrow$
\end{document}

which creates the error

[...]\MiKTeX\2.9\tex\generic\mathabx\mathabx.dcl
! Missing number, treated as zero.
<to be read again>
                   \protect
l.435 ...eMathSymbol{<}            {3}{matha}{"A0}

the problem can be avoided by reordering the includes to

\usepackage{mathabx}
\usepackage{ngerman}

which appears odd to me. Is that a bug or a feature?

If I were only using one symbol, I would follow the suggestion mentioned in conflict between mathabx and other packages, but with more symbols, that solution is rather annoying.

1
  • 1
    The ngerman package is obsolete; you should do \usepackage[ngerman]{babel}
    – egreg
    Commented Feb 12, 2016 at 9:51

1 Answer 1

3

It's not at all surprising that loading ngerman can lead to incompatibilities: the last update to the package was in 1998.

The order

\usepackage{ngerman}
\usepackage{mathabx}

creates a number of errors. This is because the ngerman package immediately makes " into a shorthand, which conflicts with any package using hexadecimal notation for numbers: hexadecimal numbers in TeX are prefixed by "12, but after loading ngerman you have "13.

General solution: don't load ngerman or german at all costs. Instead, do

\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .