% Style to enable the euro currency symbol for LaTeX.
% by Henrik Theiling  (c) 7/98
%
% The specifications for the symbol are taken from the German
% c't magazine, edition 11/98, p. 211.
%
% The package provides the macro \euro{} which creates a euro
% currency symbol.
%

\ProvidesPackage{eurosym}
    [1998/08/06 v1.1 European currency symbol ``Euro'']

\DeclareFontFamily{U}{eurosym}{}

\DeclareFontShape{U}{eurosym}{m}{n}{   <-> feymr10 }{}
 % Note than only this very shape is officially allowed.  All others
 % that follow are extensions by the author of this package to make
 % the package more suitable.
\DeclareFontShape{U}{eurosym}{m}{sc}{  <-> ssub*eurosym/m/n }{}
   % no Small Caps, only normal
\DeclareFontShape{U}{eurosym}{m}{sl}{  <-> feymo10 }{}
\DeclareFontShape{U}{eurosym}{m}{it}{  <-> ssub*eurosym/m/sl }{}
   % No italic, only slanted.
\DeclareFontShape{U}{eurosym}{m}{ol}{  <-> feyml10 }{}

\DeclareFontShape{U}{eurosym}{bx}{n}{   <-> feybr10 }{}
\DeclareFontShape{U}{eurosym}{bx}{sc}{  <-> ssub*eurosym/bx/n }{}
\DeclareFontShape{U}{eurosym}{bx}{sl}{  <-> feybo10 }{}
\DeclareFontShape{U}{eurosym}{bx}{it}{  <-> ssub*eurosym/bx/sl }{}
\DeclareFontShape{U}{eurosym}{bx}{ol}{  <-> feybl10 }{}

% The b series is only kept anyway.  Perhaps it changes again sometime
% and bx then looks different from b:
\DeclareFontShape{U}{eurosym}{b}{n}{   <-> ssub*eurosym/bx/n }{}
\DeclareFontShape{U}{eurosym}{b}{sl}{  <-> ssub*eurosym/bx/sl }{}
\DeclareFontShape{U}{eurosym}{b}{it}{  <-> ssub*eurosym/bx/sl }{}
\DeclareFontShape{U}{eurosym}{b}{sc}{  <-> ssub*eurosym/bx/n }{}
\DeclareFontShape{U}{eurosym}{b}{ol}{  <-> ssub*eurosym/bx/ol }{}

\DeclareRobustCommand\officialeuro{{\fontencoding{U}\fontfamily{eurosym}\selectfont{}e}}

% The following is for hacking fonts that don't have an own Euro symbol yet
% Only use this when really necessary.
\DeclareRobustCommand\eurobars{{\fontencoding{U}\fontfamily{eurosym}\selectfont{}A}}
\DeclareRobustCommand\eurobarsnarrow{{\fontencoding{U}\fontfamily{eurosym}\selectfont{}B}}
\DeclareRobustCommand\eurobarswide{{\fontencoding{U}\fontfamily{eurosym}\selectfont{}C}}

\newbox\@eurobox
\DeclareRobustCommand\geneuro{\setbox\@eurobox\hbox\eurobars%
   \mbox{\copy\@eurobox\hskip-\wd\@eurobox{}\hskip.5pt{}C}}
\DeclareRobustCommand\geneuronarrow{\setbox\@eurobox\hbox\eurobarsnarrow%
   \mbox{\copy\@eurobox\hskip-\wd\@eurobox{}\hskip.5pt{}C}}
\DeclareRobustCommand\geneurowide{\setbox\@eurobox\hbox\eurobarswide%
   \mbox{\copy\@eurobox\hskip-\wd\@eurobox{}\hskip.5pt{}C}}

\newif\if@EURleft

\def\EUR#1{\if@EURleft\euro\,\fi#1\if@EURleft\else\,\euro\fi}

\DeclareOption{left}{\@EURlefttrue}
\DeclareOption{right}{\@EURleftfalse}
\DeclareOption{official}{\let\euro\officialeuro}
\DeclareOption{gen}{\let\euro\geneuro}
\DeclareOption{gennarrow}{\let\euro\geneuronarrow}
\DeclareOption{genwide}{\let\euro\geneurowide}

\expandafter\ifx\csname umlauthigh\endcsname\relax
  \ExecuteOptions{left,official}
\else
  \ExecuteOptions{right,official}
\fi
\ProcessOptions

\endinput
