%%
%% This is file `nicefrac.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% units.dtx  (with options: `nicefrac')
%% 
%% LaTeX package for typesetting nice fractions
%% 
%% Copyright (C) 1998 Axel Reichert
%% See the files README and COPYING.
%% 
%% \CharacterTable
%%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%%   Digits        \0\1\2\3\4\5\6\7\8\9
%%   Exclamation   \!     Double quote  \"     Hash (number) \#
%%   Dollar        \$     Percent       \%     Ampersand     \&
%%   Acute accent  \'     Left paren    \(     Right paren   \)
%%   Asterisk      \*     Plus          \+     Comma         \,
%%   Minus         \-     Point         \.     Solidus       \/
%%   Colon         \:     Semicolon     \;     Less than     \<
%%   Equals        \=     Greater than  \>     Question mark \?
%%   Commercial at \@     Left bracket  \[     Backslash     \\
%%   Right bracket \]     Circumflex    \^     Underscore    \_
%%   Grave accent  \`     Left brace    \{     Vertical bar  \|
%%   Right brace   \}     Tilde         \~}
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesPackage{nicefrac}[1998/08/04 v0.9b Nice fractions]
\newlength{\L@UnitsRaiseDisplaystyle}
\newlength{\L@UnitsRaiseTextstyle}
\newlength{\L@UnitsRaiseScriptstyle}
\RequirePackage{ifthen}
\DeclareRobustCommand*{\@UnitsNiceFrac}[3][]{%
  \ifthenelse{\boolean{mmode}}{%
    \settoheight{\L@UnitsRaiseDisplaystyle}{%
      \ensuremath{\displaystyle#1{M}}%
    }%
    \settoheight{\L@UnitsRaiseTextstyle}{%
      \ensuremath{\textstyle#1{M}}%
    }%
    \settoheight{\L@UnitsRaiseScriptstyle}{%
      \ensuremath{\scriptstyle#1{M}}%
    }%
    \settoheight{\@tempdima}{%
      \ensuremath{\scriptscriptstyle#1{M}}%
    }%
    \addtolength{\L@UnitsRaiseDisplaystyle}{%
      -\L@UnitsRaiseScriptstyle%
    }%
    \addtolength{\L@UnitsRaiseTextstyle}{%
      -\L@UnitsRaiseScriptstyle%
    }%
    \addtolength{\L@UnitsRaiseScriptstyle}{-\@tempdima}%
    \mathchoice
      {%
        \raisebox{\L@UnitsRaiseDisplaystyle}{%
          \ensuremath{\scriptstyle#1{#2}}%
        }%
      }%
      {%
        \raisebox{\L@UnitsRaiseTextstyle}{%
          \ensuremath{\scriptstyle#1{#2}}%
        }%
      }%
      {%
        \raisebox{\L@UnitsRaiseScriptstyle}{%
          \ensuremath{\scriptscriptstyle#1{#2}}%
        }%
      }%
      {%
        \raisebox{\L@UnitsRaiseScriptstyle}{%
          \ensuremath{\scriptscriptstyle#1{#2}}%
        }%
      }%
    \mkern-2mu/\mkern-1mu%
    \bgroup
      \mathchoice
        {\scriptstyle}%
        {\scriptstyle}%
        {\scriptscriptstyle}%
        {\scriptscriptstyle}%
      #1{#3}%
    \egroup
  }%
  {%
    \settoheight{\L@UnitsRaiseTextstyle}{#1{M}}%
    \settoheight{\@tempdima}{%
      \ensuremath{%
        \mbox{\fontsize\sf@size\z@\selectfont#1{M}}%
      }%
    }%
    \addtolength{\L@UnitsRaiseTextstyle}{-\@tempdima}%
    \raisebox{\L@UnitsRaiseTextstyle}{%
      \ensuremath{%
        \mbox{\fontsize\sf@size\z@\selectfont#1{#2}}%
      }%
    }%
    \ensuremath{\mkern-2mu}/\ensuremath{\mkern-1mu}%
    \ensuremath{%
      \mbox{\fontsize\sf@size\z@\selectfont#1{#3}}%
    }%
  }%
}
\DeclareRobustCommand*{\@UnitsUglyFrac}[3][]{%
  \ifthenelse{\boolean{mmode}}{%
    \frac{#1{#2}}{#1{#3}}%
  }%
  {%
    #1{#2}/#1{#3}%
    \PackageWarning{nicefrac}{%
      You used \protect\nicefrac\space or
      \protect\unitfrac\space in text mode\MessageBreak
      and specified the ``ugly'' option.\MessageBreak
      The fraction may be ambiguous or wrong.\MessageBreak
      Please make sure the denominator is
      correct.\MessageBreak
      If it is, you can safely ignore\MessageBreak
      this warning
    }%
  }%
}
\DeclareOption{nice}{%
  \DeclareRobustCommand*{\nicefrac}{\@UnitsNiceFrac}%
}
\DeclareOption{ugly}{%
  \DeclareRobustCommand*{\nicefrac}{\@UnitsUglyFrac}%
}
\ExecuteOptions{nice}
\ProcessOptions*
\endinput
%%
%% End of file `nicefrac.sty'.
