TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to use a single symbol from the MnSymbol package, \nuparrow (I can't find that symbol anywhere else). But if I use it, then it upsets the symbols in the rest of the document, which I am happy with.

share|improve this question
... which you are not happy with? – Hendrik Vogt Mar 7 '11 at 16:53
up vote 11 down vote accepted

You can setup a single symbol like this (the code is extracted from mnsymbol. It will not clash if you load the package too):


\DeclareFontFamily{U}  {MnSymbolB}{}
    <-6>  MnSymbolB5
   <6-7>  MnSymbolB6
   <7-8>  MnSymbolB7
   <8-9>  MnSymbolB8
   <9-10> MnSymbolB9
  <10-12> MnSymbolB10
  <12->   MnSymbolB12}{}

    <-6>  MnSymbolB-Bold5
   <6-7>  MnSymbolB-Bold6
   <7-8>  MnSymbolB-Bold7
   <8-9>  MnSymbolB-Bold8
   <9-10> MnSymbolB-Bold9
  <10-12> MnSymbolB-Bold10
  <12->   MnSymbolB-Bold12}{}

\DeclareSymbolFont{MnSyB}         {U}  {MnSymbolB}{m}{n}
\SetSymbolFont{MnSyB}       {bold}{U}  {MnSymbolB}{b}{n}




share|improve this answer
excellent! Thanks. What exactly am I looking at, and where can I learn more about this code? – Alex Mar 7 '11 at 13:35

Just to explain Ulrike's Meta Font code a bit and where I think it comes from.

The Declare{Font,Symbol}* commands load the MetaFont files used to define the mathematical symbol. So, for example, MnSymbolB corresponds to the file located at /usr/share/texmf/fonts/source/public/MnSymbol/MnSymbolB.mf on my Fedora box. It includes the file Sym-Arrows.mf, in the same folder. And defines the boolean value negated to be true. Looking at the Sym-Arrows.mf file, we see that boolean used to determine whether the arrow is crossed out or not. The final argument (call it n) is 1 in


is the first symbol defined in Sym-Arrows.mf. It is a single arrow with angle alpha = 0 (pointing upward) which is crossed out (because negated = true). If n=2 then the angle would be 90, since that's the second element in the for list. This list continues between successive fors. So if I take n=9 then I get a double negated arrow pointing upward.

share|improve this answer

The mathtools package also defines it by rotating and mirroring an existing symbol. Note that MnSymbol symbols often does not mix well with others.

A \nuparrow B
share|improve this answer
This doesn't work for me. Latex complains that \nuparrow is undefined? – Alex Mar 7 '11 at 13:03
And you used BOTH packages in this example, and have a fully updated LaTeX installation – daleif Mar 7 '11 at 13:07
yes. I have texlive installed on Fedora. I copied your code verbatim; both packages are installed. – Alex Mar 7 '11 at 13:13
I have found a sort of hack using the xy package. I don't know any metafont but I can't imagine it's that hard to define an upward arrow with a line through it? – Alex Mar 7 '11 at 13:21
Which mathtools version? Note that several Linux dists. are very slow at updating their LaTeX. This is why I always use the one from TUG, an update it manually with the build in manager. That was I KNOW I have the latest versions, I don't have to wait for some lazy dist. manager. – daleif Mar 7 '11 at 13:36

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.