3

I want to use mathdesign fonts (namely bitstream-charter) and I also want to use the ntheorem package. However, it looks like ntheorem tries to load amssymb which is incompatible with mathdesign (it redefines all the relevant symbols itself). How can I fix this?

Here is a MWE, although the order doesn't matter, it breaks both ways round. It also breaks with the thmmarks option instead of amsmath option

\documentclass{article}
\usepackage[amsmath]{ntheorem}
\usepackage[bitstream-charter]{mathdesign}
\begin{document}
Foo
\end{document}
2
  • Perhaps a matter of the load sequence. A minimal example might be helpful. Jan 16, 2011 at 13:43
  • No, ntheorem doesn't try to load amssymb at all.
    – Leo Liu
    Jan 16, 2011 at 17:14

2 Answers 2

3
\documentclass{article}
\usepackage{amsmath}
\usepackage[amsmath]{ntheorem}
\usepackage[bitstream-charter]{mathdesign}
\begin{document}
Foo
\end{document}

I think.

6
  • Now, why does this work, when the error I was getting before was the mathdesign warning that it was incompatible with amssymb?
    – Seamus
    Jan 17, 2011 at 10:53
  • ntheorem is really compatible with amssymb, while mathdesign isn't. The [amsmath] option makes ntheorem to be compatiible with amsmath, but does not load amsmath --- this is the problem here.
    – Leo Liu
    Jan 17, 2011 at 11:12
  • I'm still getting these errors in my main document: Package mathdesign/mdbch Warning: Package 'amssymb' shouldn't be used in conjonction with package mdbch, on input line 138. Package mathdesign/mdbch Warning: Package 'amsfonts' shouldn't be used in conjonction with package mdbch, on input line 138.
    – Seamus
    Jan 17, 2011 at 11:40
  • The test code in answer works fine for me. Maybe you should check your other code or update the latest packages.
    – Leo Liu
    Jan 17, 2011 at 14:06
  • An additional explanation: Do not use amssymb or amsfonts in your document, if you have already use mathdesign. Maybe ntheorem does not concern the problem here.
    – Leo Liu
    Jan 18, 2011 at 5:47
3

Saying \expandafter\def\csname [email protected]\endcsname{9999/12/31 prevent loading} should trick LaTeX into believing there's an infinitely new version of amssymb already loaded, hence preventing any \usepackage{amssymb} from having any effect (beyond possibly parameter clashes).

You must log in to answer this question.

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