%% File: $Id: mlnames.sty,v 1.1 2001/02/06 15:14:07 rahtz Exp rahtz $ $Date: 2001/02/06 15:14:07 $  Copyright 1999 Sebastian Rahtz
%%
%% This package may be distributed under the terms of the LaTeX Project Public
%% License, as described in lppl.txt in the base LaTeX distribution.
%% Either version 1.0 or, at your option, any later version.
%%
\ProvidesPackage{mlnames}[2001/01/10, some XSL and Unicode support material, Sebastian Rahtz]
%
\DeclareFontFamily{T1}{pzd}{}  
\DeclareFontShape{T1}{pzd}{m}{n}{<->pzdr}{} 
\def\Family@monospace{pcr}
\def\Family@sansserif{phv}
\expandafter\def\csname Family@sans-serif\endcsname{phv}
\def\Family@serif{ptm}
\def\Family@cursive{uzc}
\def\Family@fantasy{uzc}
\DeclareFontFamily{T1}{uzc}{}
\DeclareFontShape{T1}{uzc}{mb}{it}{<-> uzcmi8t}{}
\DeclareFontShape{T1}{uzc}{m}{it}{<->ssub * uzc/mb/it}{}
\DeclareFontShape{T1}{uzc}{m}{n}{<->ssub * uzc/mb/it}{}
\def\Family@unknown{<unknown>} 
\def\Family@Arial{phv}
\def\Family@Helvetica{phv}
\def\Family@Palatino{ppl}
\def\Family@Bookman{pbk}
\def\Family@BaskervilleMT{mbv}
\def\Family@Courier{pcr}
\def\Family@Symbol{psy}
\def\Family@Wingdings{pzd}
\def\Family@WingDings{pzd}
\def\Family@LucidaSans{hls}
\def\Family@LucidaBright{hlh}
\def\Family@LucidaTypewriter{hlst}
\def\Family@Savoy{usb}
\def\Family@ACaslon{pca}
\def\Family@Caslon{uca}
\def\Family@Formata{pfa}
\def\Family@FranklinGothic{pfg}
\def\Family@OCRAbyBT{boa}
\def\Family@AGaramond{pad}
\expandafter\def\csname Family@Avant-Garde\endcsname{pag}
\expandafter\def\csname Family@Courier New\endcsname{pcr}
\expandafter\def\csname Family@New-Century-Schoolbook\endcsname{pnc}
\expandafter\def\csname Family@Times-Roman\endcsname{ptm}
\expandafter\def\csname Family@Trade-Gothic\endcsname{ptg}
\expandafter\def\csname Family@Times-New-Roman\endcsname{ptm}
\expandafter\def\csname Family@Times New Roman\endcsname{ptm}
\expandafter\def\csname Family@Times Roman\endcsname{ptm}
\expandafter\def\csname Family@Times-NR-MT\endcsname{mnt}
\expandafter\def\csname Family@Courier-New\endcsname{pcr}
\expandafter\def\csname Family@Zapf-Dingbats\endcsname{pzd}
\expandafter\def\csname Family@Gill-Sans\endcsname{pgs}
\expandafter\def\csname Family@iso-serif\endcsname{ptm}
\expandafter\def\csname Family@sans-serif\endcsname{phv}
\expandafter\def\csname Family@iso-sanserif\endcsname{phv}
\expandafter\def\csname Family@iso-monospace\endcsname{pcr}
\expandafter\def\csname Family@LetterGothic12PitchBT\endcsname{blg}
\expandafter\def\csname Family@NewsGothic\endcsname{bng}
\expandafter\def\csname Family@NewsGothicBT\endcsname{bng}
\expandafter\def\csname Family@Humanist521\endcsname{bgs}
\expandafter\def\csname Family@Humanist521BT\endcsname{bgs}
\expandafter\def\csname Family@Monospace821\endcsname{bhvt}
\expandafter\def\csname Family@Monospace821BT\endcsname{bhvt}
\expandafter\def\csname Family@OCRB10PitchBT\endcsname{bob}
\expandafter\def\csname Family@OCR-A\endcsname{boa}
\expandafter\def\csname Family@OCR-B-10PitchBT\endcsname{bob}
%    \end{macrocode}
% Matthias Clasen asked for the special code to be able
% to access Computer Modern caps and small caps as a font family.
%    \begin{macrocode}
\expandafter\def\csname Family@Computer-Modern-Typewriter\endcsname{aett}
\expandafter\def\csname Family@Computer-Modern-Sans\endcsname{aess}
\expandafter\def\csname Family@Computer-Modern\endcsname{aer}
\DeclareFontFamily{T1}{aett}{}
\DeclareFontShape{T1}{aett}{bx}{m}{<-> aebx10}{}
\DeclareFontShape{T1}{aett}{m}{n}{ <-9> aett8 <9-10> aett9 <10-12> aett10
   <12-> aett12
}{}

\DeclareFontShape{T1}{aett}{m}{it}{ <-> aeitt10 }{}
\DeclareFontShape{T1}{aett}{m}{sl}{ <-> aesltt10 }{}
\DeclareFontShape{T1}{aett}{m}{sc}{ <-> aetcsc10 }{}
\DeclareFontShape{T1}{aett}{l}{n}{<->ssub * aett/m/n}{}
\DeclareFontShape{T1}{aett}{l}{it}{<->ssub * aett/m/it}{}
\DeclareFontShape{T1}{aett}{l}{sl}{<->ssub * aett/m/sl}{}
\DeclareFontShape{T1}{aett}{l}{sc}{<->ssub * aett/m/sc}{}

\providecommand{\EC@family}[5]{%
  \DeclareFontShape{#1}{#2}{#3}{#4}%
  {<5><6><7><8><9><10><10.95><12><14.4>%
   <17.28><20.74><24.88>genb*#5}{}}
\DeclareFontFamily{T1}{cmcsc}{}
\EC@family{T1}{cmcsc}{m}{n}{eccc}
\EC@family{T1}{cmcsc}{bx}{n}{ecxc}
\EC@family{T1}{cmcsc}{m}{sl}{ecsc}
\EC@family{T1}{cmcsc}{bx}{sl}{ecoc}
\expandafter\def\csname Family@Computer-Modern-Caps-And-Small-Caps\endcsname{cmcsc}
\def\Family@cmr{cmr}
\def\Family@cmss{cmss}
\def\Family@cmtt{cmtt}
\def\Family@cmcsc{cmcsc}
\def\Family@ectt{ectt}
%
\def\Posture@upright{n}
\def\Posture@normal{n}
\def\Posture@math{it}
\def\Posture@oblique{sl}
\def\Posture@backslantedoblique{ui}
\def\Posture@italic{it}
\def\Posture@backslanteditalic{ui}
%
\def\Weight@ultralight{ul}
\def\Weight@extralight{el}
\def\Weight@light{l}
\def\Weight@semilight{sl}
\def\Weight@medium{}
\def\Weight@normal{}
\def\Weight@semibold{sb}
\def\Weight@bold{bx}
\def\Weight@extrabold{eb}
\def\Weight@ultrabold{ub}
\def\Weight@false{}
%
\expandafter\def\csname Width@ultra-condensed\endcsname{uc}
\expandafter\def\csname Width@extra-condensed\endcsname{ec}
\expandafter\def\csname Width@condensed\endcsname{c}
\expandafter\def\csname Width@semi-condensed\endcsname{sc}
\expandafter\def\csname Width@normal\endcsname{}
\expandafter\def\csname Width@semi-expanded\endcsname{sx}
\expandafter\def\csname Width@expanded\endcsname{x}
\expandafter\def\csname Width@extra-expanded\endcsname{ex}
\expandafter\def\csname Width@ultra-expanded\endcsname{ux}
\def\Width@ultracondensed{uc}
\def\Width@extracondensed{ec}
\def\Width@condensed{c}
\def\Width@semicondensed{sc}
\def\Width@medium{}
\def\Width@semiexpanded{sx}
\def\Width@expanded{x}
\def\Width@extraexpanded{ex}
\def\Width@ultraexpanded{ux}
%
%    \end{macrocode}
% \subsection{Languages}
% This needs the TeX format to have these 
% languages selected, of course. That is up to the users.
% Make sure shorthands are disabled.
%    \begin{macrocode}
%
% Mimic Babel for hyphenation. 
% read language.dat, using code from Johannes Braams' package,
% to get the list of known languages
%
\def\selectlanguage#1{%
\@ifundefined{l@#1}{\typeout{WARNING!! patterns for #1 not in
    format file^^JWARNING!!  - add them in language.dat and rebuild}}
{\language=\csname l@#1\endcsname
\@ifundefined{hyphenmins@#1}
 {\lefthyphenmin2\righthyphenmin2}
 {\edef\this{\csname hyphenmins@#1\endcsname}\expandafter\setmins\this\relax}
}}
\def\setmins#1#2\relax{\lefthyphenmin#1\righthyphenmin#2}
\def\process@line#1#2 #3/{%
  \ifx=#1
    \process@synonym#2 /
  \else
    \process@language#1#2 #3/%
  \fi
  }
\def\process@synonym#1 /{%
  \ifnum\last@language=\m@ne
    \expandafter\chardef\csname l@#1\endcsname0\relax
    \wlog{\string\l@#1=\string\language0}
  \else
    \expandafter\chardef\csname l@#1\endcsname\last@language
    \wlog{\string\l@#1=\string\language\the\last@language}
  \fi
  }
\def\process@language#1 #2 #3/{%
  \expandafter\addlanguage\csname l@#1\endcsname
  \expandafter\language\csname l@#1\endcsname
  }
\catcode`\^^I=10\relax
\openin1 = language.dat
\ifeof1
  \message{I couldn't find the file language.dat. No hyphenation!!!}
\else
  \last@language\m@ne
  \loop
    \endlinechar\m@ne
    \read1 to \fo@line
    \endlinechar`\^^M
    \ifx\fo@line\@empty
    \else
      \edef\fo@line{\fo@line\space/}%
      \expandafter\process@line\fo@line
    \fi
    \iftrue \csname fi\endcsname
    \csname if\ifeof1 false\else true\fi\endcsname
  \repeat
  \language=0
\fi
\closein1
\def\L@{}
\def\hyphenmins@welsh{23}
\def\hyphenmins@greek{11}
\def\hyphenmins@ukenglish{23}
\def\hyphenmins@dutch{23}
\def\hyphenmins@english{23}
\def\L@BR{\selectlanguage{brazil}}
\def\L@CA{\selectlanguage{catalan}}
\def\L@CY{\selectlanguage{welsh}}
\def\L@CZ{\selectlanguage{czech}}
\def\L@DE{\selectlanguage{german}}
\def\L@DK{\selectlanguage{danish}}
\def\L@EL{\selectlanguage{greek}}
\def\L@ES{\selectlanguage{spanish}}
\def\L@ET{\selectlanguage{estonian}}
\def\L@FI{\selectlanguage{finnish}}
\def\L@FR{\selectlanguage{francais}}
\def\L@GB{\selectlanguage{ukenglish}}
\def\L@HR{\selectlanguage{croatian}}
\def\L@HU{\selectlanguage{hungarian}}
\def\L@IT{\selectlanguage{italian}}
\def\L@NE{\selectlanguage{dutch}}
\def\L@NO{\selectlanguage{norsk}}
\def\L@PL{\selectlanguage{polish}}
\def\L@PT{\selectlanguage{portuguese}}
\def\L@RO{\selectlanguage{romanian}}
\def\L@RU{\relax}
\def\L@SH{\selectlanguage{serbocroat}}
\def\L@SI{\selectlanguage{slovene}}
\def\L@SK{\selectlanguage{slovak}}
\def\L@US{\selectlanguage{english}}
\def\L@none{\selectlanguage{english}}
\def\L@br{\selectlanguage{portuguese}}
\def\L@ca{\selectlanguage{catalan}}
\def\L@cy{\selectlanguage{welsh}}
\def\L@cs{\selectlanguage{czech}}
\def\L@de{\selectlanguage{german}}
\def\L@da{\selectlanguage{danish}}
\def\L@el{\selectlanguage{greek}}
\def\L@es{\selectlanguage{spanish}}
\def\L@et{\selectlanguage{estonian}}
\def\L@fi{\selectlanguage{finnish}}
\def\L@fr{\selectlanguage{francais}}
\def\L@gb{\selectlanguage{ukenglish}}
\def\L@hr{\selectlanguage{croatian}}
\def\L@hu{\selectlanguage{hungarian}}
\def\L@it{\selectlanguage{italian}}
\def\L@nl{\selectlanguage{dutch}}
\def\L@no{\selectlanguage{norsk}}
\def\L@pl{\selectlanguage{polish}}
\def\L@pt{\selectlanguage{portuguese}}
\def\L@ro{\selectlanguage{romanian}}
\def\L@ru{\relax}
\def\L@sh{\selectlanguage{serbocroat}}
\def\L@si{\selectlanguage{slovene}}
\def\L@sk{\selectlanguage{slovak}}
\def\L@us{\selectlanguage{english}}
\def\L@en{\selectlanguage{english}}
\def\L@id{\selectlanguage{indonesian}}
\def\L@ja{\selectlanguage{japanese}}
\def\L@ko{\selectlanguage{korean}}
\def\L@sl{\selectlanguage{slovenian}}
\def\L@sv{\selectlanguage{swedish}}
\expandafter\def\csname L@pt_br\endcsname{\selectlanguage{portuguese}}
\expandafter\def\csname L@zh_cn\endcsname{\selectlanguage{chinese}}
\expandafter\def\csname L@zh_tw\endcsname{\selectlanguage{chinese-taiwan}}
%
%    \end{macrocode}
% \subsection{Paragraphs}
%    \begin{macrocode}
\def\italicOver{\ifhmode\@@italiccorr\fi}
%
\def\startQ@justify{}
\def\endQ@justify{}
%
%
\def\startQ@center{\hskip\z@ plus 1filll}
\def\endQ@center{\hskip\z@ plus 1filll}
%
\def\startQ@justified{%
  \leftskip\StartIndent
  \rightskip\EndIndent
  \@rightskip\rightskip
}
\def\endQ@justified{}
%
\def\startQ@pageoutside{\hfill}
\def\endQ@pageoutside{}
%
\def\startQ@pageinside{}
\def\endQ@pageinside{\hfill}
%
\def\startQ@start{}
\def\endQ@start{\hfill}
\def\startQ@left{}
\def\endQ@left{\hfill}
%
\def\startQ@end{\hfill}
\def\endQ@end{}
\def\startQ@right{\hfill}
\def\endQ@right{}
\def\Listjustified{%
  \gdef\makelabel##1{##1}}
\def\Liststart{% raggedright, I hope
  \gdef\makelabel##1{##1\hfil}}
\def\Listend{% raggedleft, I hope
  \gdef\makelabel##1{\hfil##1}}
\def\Listcentered{% centered
  \gdef\makelabel##1{\hfil##1\hfil}}
\def\Listcenter{% centered
  \gdef\makelabel##1{\hfil##1\hfil}}
%
\def\Q@start{% raggedright, I hope
%  \let\\\@centercr
  \rightskip\EndIndent plus 1fil
  \@rightskip\rightskip
  \leftskip\StartIndent
  \parfillskip\z@skip
}
\def\Q@justified{%
% \let\\\@normalcr
  \parfillskip\@flushglue
  \leftskip\StartIndent
  \rightskip\EndIndent
  \@rightskip\rightskip
}
\let\Q@\Q@justified
\let\startQ@\startQ@justified
\let\endQ@\endQ@justified
\def\Q@end{% raggedleft, I hope
%  \let\\\@centercr
  \leftskip\StartIndent plus 1fil%
  \parfillskip\z@skip
}
\def\Q@centered{%
%  \let\\\@centercr
  \rightskip-\StartIndent plus 1fil%
  \@rightskip\rightskip
  \leftskip-\EndIndent plus 1fil%
  \parfillskip\z@skip
}
\def\Q@center{%
%  \let\\\@centercr
  \rightskip-\StartIndent plus 1fil%
  \@rightskip\rightskip
  \leftskip-\EndIndent plus 1fil%
  \parfillskip\z@skip
}
\let\Q@left\Q@start
\let\Q@right\Q@end
% for JadeTeX
\def\JQ@justify{%
  \let\\\@normalcr
  \parfillskip\@flushglue
  \parindent\z@
}
\def\JQ@start{% raggedright, I hope
  \let\\\@centercr
  \rightskip\EndIndent plus 1fil
  \@rightskip\rightskip
  \parfillskip\z@skip
  \parindent\z@
}
\def\JQ@end{% raggedleft, I hope
  \let\\\@centercr
  \leftskip\StartIndent plus 1fil%
  \parfillskip\z@skip
}
\def\JQ@center{%
  \let\\\@centercr
  \rightskip\EndIndent plus 1fil%
  \@rightskip\rightskip
  \leftskip\StartIndent plus 1fil%
  \parfillskip\z@skip\parindent\z@
}

\def\Q@pageoutside{%
  \let\\\@centercr
  \leftskip\StartIndent plus 1fil%
  \parfillskip\z@skip
}
\def\Q@pageinside{%
  \let\\\@centercr
  \rightskip\EndIndent plus 1fil%
  \@rightskip\rightskip
  \parfillskip\z@skip
}
\def\JObeylines{%
  \@tempswafalse
  \def\par{%
    \if@tempswa
      \leavevmode \null \@@par\penalty\interlinepenalty
    \else
      \@tempswatrue
      \ifhmode\@@par\penalty\interlinepenalty\fi
    \fi}%
  \obeylines\everypar \expandafter{\the\everypar \ifvmode\else\unpenalty\fi}%
}
\newif\if@obeylines
\@obeylinesfalse
\def\Lines@asis{\pretolerance=-1\tolerance=-1\JObeylines\@obeylinestrue}
\def\Lines@wrap{\@obeylinesfalse}
\expandafter\def\csname Lines@asis-truncate\endcsname{%
  \JObeylines\@obeylinestrue}
\expandafter\def\csname Lines@asis-wrap\endcsname{\@obeylinesfalse}
%
\def\Fld@start{l}
\def\Fld@center{c}
\def\Fld@end{r}
%
\def\White@preserve{\catcode`\ =\active\@vobeyspaces}
%
\def\Break@page{\newpage}
\def\Break@{}
\endinput
