% \iffalse meta-comment
%
% Copyright 1989-1996 Johannes L. Braams and any individual authors
% listed elsewhere in this file.  All rights reserved.
% 
% For further copyright information see any other copyright notices in 
% this file.
% 
% This file is part of the Babel system release 3.6.
% --------------------------------------------------
%   This system is distributed in the hope that it will be useful,
%   but WITHOUT ANY WARRANTY; without even the implied warranty of
%   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
% 
%   For error reports concerning UNCHANGED versions of this file no
%   more than one year old, see bugs.txt.
% 
%   Please do not request updates from me directly.  Primary
%   distribution is through the CTAN archives.
% 
% 
% IMPORTANT COPYRIGHT NOTICE:
% 
% You are NOT ALLOWED to distribute this file alone.
% 
% You are allowed to distribute this file under the condition that it
% is distributed together with all the files listed in manifest.txt.
% 
% If you receive only some of these files from someone, complain!
% 
% Permission is granted to copy this file to another file with a
% clearly different name and to customize the declarations in that
% copy to serve the needs of your installation, provided that you
% comply with the conditions in the file legal.txt from the LaTeX2e
% distribution.
% 
% However, NO PERMISSION is granted to produce or to distribute a
% modified version of this file under its original name.
%  
% You are NOT ALLOWED to change this file.
% 
% 
% \fi
% \CheckSum{436}
%
%\iffalse        This is a META comment
%
% File `cyrillic.fdd' for installing the LH Cyrillic font family.
% Copyright (C) 1995-1997 CyrTUG and Johannes L. Braams
% all rights reserved.
%
%<*fdd>
\ProvidesFile{cyrillic.fdd}
%</fdd>
%
%<cyrmath,  >\ProvidesPackage{cyrmath}
%<LCYenc,   >\ProvidesFile{LCYenc.def}
%<LCYcmr,   >\ProvidesFile{LCYcmr.fd}
%<LCYcmss,  >\ProvidesFile{LCYcmss.fd}
%<LCYcmtt,  >\ProvidesFile{LCYcmtt.fd}
%<LCYcmfr,  >\ProvidesFile{LCYcmfr.fd}
%<LCYcmdh,  >\ProvidesFile{LCYcmdh.fd}
%<LCYcmfib, >\ProvidesFile{LCYcmfib.fd}
%
%<LWNenc,   >\ProvidesFile{LWNenc.def}
%<LWNcmr,   >\ProvidesFile{LWNcmr.fd}
%<LWNcmss,  >\ProvidesFile{LWNcmss.fd}
%<LWNcmtt,  >\ProvidesFile{LWNcmtt.fd}
%<LWNcmfr,  >\ProvidesFile{LWNcmfr.fd}
%<LWNcmdh,  >\ProvidesFile{LWNcmdh.fd}
%<LWNcmfib, >\ProvidesFile{LWNcmfib.fd}
        [1997/01/09 v3.0b 
%<cyrmath,  >         Cyrillic Math font setup]
%<LCYenc,   >         8-bit Cyrillic font encoding]
%<LCYcmr,   >         Cyrillic Roman]
%<LCYcmss,  >         Cyrillic Sans Serif]
%<LCYcmtt,  >         Cyrillic Typewriter]
%<LCYcmfr,  >         Cyrillic Funny Roman]
%<LCYcmdh,  >         Cyrillic Dunhill]
%<LCYcmfib, >         Cyrillic Fibonacci]
%
%<LWNenc,   >         Washington Cyrillic font encoding]
%<LWNcmr,   >         Cyrillic Roman]
%<LWNcmss,  >         Cyrillic Sans Serif]
%<LWNcmtt,  >         Cyrillic Typewriter]
%<LWNcmfr,  >         Cyrillic Funny Roman]
%<LWNcmdh,  >         Cyrillic Dunhill]
%<LWNcmfib, >         Cyrillic Fibonacci]
%
%<*driver>
\documentclass{ltxdoc}
\GetFileInfo{cyrillic.fdd}
\providecommand\dst{\expandafter{\normalfont\scshape docstrip}}
\providecommand\LCY{\texttt{LCY}}
\providecommand\LWN{\texttt{LWN}}
\title{The file \texttt{cyrillic.fdd} for use with
      \LaTeXe.\thanks{This file has version
           number \fileversion, dated \filedate.}}
\date{\filedate}
\author{Olga Lapko and Johannes Braams}
\begin{document}
\maketitle
 \DocInput{cyrillic.fdd}
\end{document}
%</driver>
%
%\fi
%
%
% \section{Introduction}
%
%    This file contains the external font information needed to use
%    the Cyrillic Computer Modern fonts.
%
%    From this file all \texttt{.fd} files (font definition files)
%    for the Cyrillic Computer Modern fonts are generated. These fonts
%    come in two encodings. The encoding \LCY\ is used in the
%    situation where one needs the latin alphabet in the lower half of
%    the font (positions 0 -- 127), the cyrillic alphabet is then
%    located in the upper half (positions 128 -- 255) of the font. The
%    encoding \LWN\ is used in the situation where one has a latin
%    transcription of a cyrillic text. The layout of this font is
%    based on the cyrillic fonts from the University of Washington
%    (for which the \texttt{OT2} encoding was registered).
%
% \section{Customization}
%
%    By default the font definition files are generated
%    conservatively, which means that only the basic font sizes coming
%    with a normal \LaTeX{} installation are included into the
%    |\DeclareFontShape| commands.  However, on many installations,
%    people have added missing sizes by scaling up or down available
%    Metafont sources. For example, the Computer Modern Roman italic
%    font |cmti| is only available in the sizes 7, 8, 9, and
%    10pt. Nevertheless one could generate it for the sizes 5, and 6pt
%    by using the source from |cmti7| scaled downwards. The enlarged
%    font set can be generated if the \dst{} directive |ori| is not
%    used. When you generate the |.fd| files using the installation
%    script |cyrillic.ins| you will be asked if you want to get the
%    enlarged font set and afterwards the installation script runs
%    through statements like 
% \begin{verbatim}
%   \generateFile{LCYcmr.fd}{t}{\from{cyrillic.fdd}{LCYcmr}}
%\end{verbatim}
% rather than
% \begin{verbatim}
%   \generateFile{LCYcmr.fd}{t}{\from{cyrillic.fdd}{LCYcmr,ori}}
%\end{verbatim}
%
% \StopEventually{}
%
% \section{The \texttt{docstrip} modules}
%
%    The following modules are used to direct \texttt{docstrip} in
%    generating external files:
% \begin{center}
% \begin{tabular}{ll}
%   driver & produce a documentation driver file \\
%   ori    & make conservative |.fd| files\\
%   fd     & produce a font definition file \\[2pt]
%   cyrmath& package to setup the cyrillic math fonts\\[2pt]
%   LCYenc & produce the encoding definition for \LCY\\
%   LWNenc & produce the encoding definition for \LWN\\[2pt]
%   LCYcmdh & make Computer Modern Dunhill (Local Cyrillic encoding)\\
%   LCYcmfib& make Computer Modern Fibonacci (Local Cyrillic encoding)\\
%   LCYcmfr & make Computer Modern Funny (Local Cyrillic encoding)\\
%   LCYcmr  & make Computer Modern Roman (Local Cyrillic encoding)\\
%   LCYcmss & make Computer Modern Sans (Local Cyrillic encoding)\\
%   LCYcmtt & make Computer Modern Typewriter (Local Cyrillic encoding)\\[2pt]
%   LWNcmdh & make Computer Modern Dunhill (Local Washington encoding)\\
%   LWNcmfib& make Computer Modern Fibonacci (Local Washington encoding)\\
%   LWNcmfr & make Computer Modern Funny (Local Washington encoding)\\
%   LWNcmr  & make Computer Modern Roman (Local Washington encoding)\\
%   LWNcmss & make Computer Modern Sans (Local Washington encoding)\\
%   LWNcmtt & make Computer Modern Typewriter (Local Washington encoding)\\
% \end{tabular}
% \end{center}
%    A typical \dsc\ command file would then have entries like:
%\begin{verbatim}
%\generateFile{LCYcmr.fd}{t}{\from{cyrillic.fdd}{fd,LCYcmr}}
%\end{verbatim}
%
%  \section{The encoding definition files}
%
%    For the use of the \texttt{LH} font family we define two new font
%    encodings:
%    \begin{center}
%      \begin{tabular}{lp{8cm}}
%      |LCY| & Alternative encoding---this encoding is a first
%              attempt to define an 8-bit encoding for cyrillic
%              fonts\\  
%      |LWN| & Cyrillic \texttt{OT2}-like encoding (it should be
%              \texttt{OT2} but: a) we use fonts created from the LH
%              family which have more fonts than the original WNCYR
%              and b) we don't know exactly all commands (ligatures)
%              which should be described in this encoding) 
%      \end{tabular}
%    \end{center}
%    As local encodings their names start with the letter `L'. 
%
%    The \texttt{LCY} encoding is an extension of the \texttt{OT1}
%    encoding; all lower 128 positions are the same, but most of the
%    upper 128 positions are used for cyrillic glyphs.
%
%    The \texttt{LWN} encoding is based upon the \texttt{OT2} encoding
%    which was defined for the cyrillic fonts from the University of
%    Washington. It only uses the lower 128 positions of the font
%    table.
%
%    First we define the Local Cyrillic encoding; specify a default
%    for the font substitution process for the \texttt{LCY} encoding
%    and supply a font to be used when all else fails.
%
%    \begin{macrocode}
%<*LCYenc>
\DeclareFontEncoding{LCY}{}{}
\DeclareFontSubstitution{LCY}{cmr}{m}{n}
\DeclareErrorFont{LCY}{cmr}{m}{n}{10}
%</LCYenc>
%    \end{macrocode}
%
%    Now we define the Local Washington encoding.
%    \begin{macrocode}
%<*LWNenc>
\DeclareFontEncoding{LWN}{}{}
\DeclareFontSubstitution{LWN}{cmr}{m}{n}
\DeclareErrorFont{LWN}{cmr}{m}{n}{10}
%</LWNenc>
%    \end{macrocode}
%
%    For both encodings we need to redefine |\TeX| and |\LaTeX|,
%    otherwise they come out in cyrillic glyphs, which may not be what
%    the user expects.
%    \begin{macrocode}
%<*LCYenc|LWNenc>
\let\ltxTeX\TeX
\DeclareTextCommandDefault{\TeX}{\textlatin{\ltxTeX}}
\let\ltxLaTeX\LaTeX
\DeclareTextCommandDefault{\LaTeX}{\textlatin{\ltxLaTeX}}
%    \end{macrocode}
%
%    Now we also need to provide some commands, normally defined in
%    \file{ltoutenc.dtx}, for these encodings.
%    \begin{macrocode}
%<LCYenc>\ProvideTextCommand{\copyright}{LCY}{%
%<LWNenc>\ProvideTextCommand{\copyright}{LWN}{%
  \textcircled{\textlatin{c}}}
%<LCYenc>\ProvideTextCommand{\textregistered}{LCY}{%
%<LWNenc>\ProvideTextCommand{\textregistered}{LWN}{%
  \textcircled{\latintext\textsc r}}
%<LCYenc>\ProvideTextCommand{\textrademark}{LCY}{%
%<LWNenc>\ProvideTextCommand{\textrademark}{LWN}{%
  \textsuperscript{\latintext TM}}
%<LCYenc>\ProvideTextCommand{\SS}{LCY}{%
%<LWNenc>\ProvideTextCommand{\SS}{LWN}{%
  \textlatin{SS}}
%</LCYenc|LWNenc>
%    \end{macrocode}
%    Because we have two different encoding vectors for the
%    \texttt{LH} font family and because we want to keep the language
%    definition file independent of the encoding we define control
%    sequences for all the cyrillic glyphs in the fonts. The language
%    definition file then only uses the control sequences and doesn't
%    need to check the current font encoding.
%
%    In the \LCY\ encoding all cyrillic glyphs reside i nthe upper
%    half of the font.
%    \begin{macrocode}
%<*LCYenc>
\def\CYRA        {^^80}
\def\CYRB        {^^81}
\def\CYRV        {^^82}
\def\CYRG        {^^83}
\def\CYRD        {^^84}
\def\CYRE        {^^85}
\def\CYRZH       {^^86}
\def\CYRZ        {^^87}
\def\CYRI        {^^88}
\def\CYRIshrt    {^^89}
\def\CYRK        {^^8a}
\def\CYRL        {^^8b}
\def\CYRM        {^^8c}
\def\CYRN        {^^8d}
\def\CYRO        {^^8e}
\def\CYRP        {^^8f}
\def\CYRR        {^^90}
\def\CYRS        {^^91}
\def\CYRT        {^^92}
\def\CYRU        {^^93}
\def\CYRF        {^^94}
\def\CYRH        {^^95}
\def\CYRC        {^^96}
\def\CYRCH       {^^97}
\def\CYRSH       {^^98}
\def\CYRSHCH     {^^99}
\def\CYRHsgn     {^^9a}
\def\CYRY        {^^9b}
\def\CYRSsgn     {^^9c}
\def\CYRErev     {^^9d}
\def\CYRYU       {^^9e}
\def\CYRYA       {^^9f}
\def\CYRYO       {^^f0}
\def\CYRa        {^^a0}
\def\CYRb        {^^a1}
\def\CYRv        {^^a2}
\def\CYRg        {^^a3}
\def\CYRd        {^^a4}
\def\CYRe        {^^a5}
\def\CYRzh       {^^a6}
\def\CYRz        {^^a7}
\def\CYRi        {^^a8}
\def\CYRishrt    {^^a9}
\def\CYRk        {^^aa}
\def\CYRl        {^^ab}
\def\CYRm        {^^ac}
\def\CYRn        {^^ad}
\def\CYRo        {^^ae}
\def\CYRp        {^^af}
\def\CYRr        {^^e0}
\def\CYRs        {^^e1}
\def\CYRt        {^^e2}
\def\CYRu        {^^e3}
\def\CYRf        {^^e4}
\def\CYRh        {^^e5}
\def\CYRc        {^^e6}
\def\CYRch       {^^e7}
\def\CYRsh       {^^e8}
\def\CYRshch     {^^e9}
\def\CYRhsgn     {^^ea}
\def\CYRy        {^^eb}
\def\CYRssgn     {^^ec}
\def\CYRerev     {^^ed}
\def\CYRyu       {^^ee}
\def\CYRya       {^^ef}
\def\CYRyo       {^^f1}
%</LCYenc>
%    \end{macrocode}
%
%   In the \LWN\ encoding all the cyrillic glyphes reside in the
%    \emph{lower} half of the font. Therefore most of them are in the
%    same positions as the latin letters are in cmr. Some of the
%    glyphs are produced via \TeX's ligature mechanism.
%    \begin{macrocode}
%<*LWNenc>
\def\CYRA        {A}
\def\CYRB        {B}
\def\CYRV        {V}
\def\CYRG        {G}
\def\CYRD        {D}
\def\CYRE        {E}
\def\CYRZH       {ZH}%%%
\def\CYRZ        {Z}
\def\CYRI        {I}
\def\CYRIshrt    {I0}%%%
\def\CYRK        {K}
\def\CYRL        {L}
\def\CYRM        {M}
\def\CYRN        {N}
\def\CYRO        {O}
\def\CYRP        {P}
\def\CYRR        {R}
\def\CYRS        {S}
\def\CYRT        {T}
\def\CYRU        {U}
\def\CYRF        {F}
\def\CYRH        {H}
\def\CYRC        {C}
\def\CYRCH       {Q}
\def\CYRSH       {X}
\def\CYRSHCH     {W}
\def\CYRHsgn     {P2}%%%
\def\CYRY        {Y}
\def\CYRSsgn     {P1}%%%
\def\CYRErev     {E1}%%%
\def\CYRYU       {YU}%%%
\def\CYRYA       {YA}%%%
\def\CYRYO       {E0}%%%
\def\CYRa        {a}
\def\CYRb        {b}
\def\CYRv        {v}
\def\CYRg        {g}
\def\CYRd        {d}
\def\CYRe        {e}
\def\CYRzh       {zh}%%%
\def\CYRz        {z}
\def\CYRi        {i}
\def\CYRishrt    {i0}%%%
\def\CYRk        {k}
\def\CYRl        {l}
\def\CYRm        {m}
\def\CYRn        {n}
\def\CYRo        {o}
\def\CYRp        {p}
\def\CYRr        {r}
\def\CYRs        {s}
\def\CYRt        {t}
\def\CYRu        {u}
\def\CYRf        {f}
\def\CYRh        {h}
\def\CYRc        {c}
\def\CYRch       {q}
\def\CYRsh       {x}
\def\CYRshch     {w}
\def\CYRhsgn     {p2}%%%
\def\CYRy        {y}
\def\CYRssgn     {p1}%%%
\def\CYRerev     {e1}%%%
\def\CYRyu       {yu}%%%
\def\CYRya       {ya}%%%
\def\CYRyo       {e0}
%</LWNenc>
%    \end{macrocode}
%
%    Finally a few glyphs are defined for both encodings: the number sign,
%    \begin{macrocode}
%<+LCYenc>\DeclareTextCommand{\No}{LCY}{\char242\relax}
%<+LWNenc>\DeclareTextCommand{\No}{LWN}{\char`\}}
%    \end{macrocode}
%    the cyrillic opening quote,
%    \begin{macrocode}
%<+LCYenc>\DeclareTextCommand{\frqq}{LCY}{\char243\relax}
%<+LWNenc>\DeclareTextCommand{\frqq}{LWN}{\char`\>}
%    \end{macrocode}
%    and the cyrillic closing quote.
%    \begin{macrocode}
%<+LCYenc>\DeclareTextCommand{\flqq}{LCY}{\char244\relax}
%<+LWNenc>\DeclareTextCommand{\flqq}{LWN}{\char`\<}
%
%  \section{The Math font setup}
%
%    First we declare a new symbol font, `cyrletters' for which the
%    glyphs are taken from the cmr family in the \LWN\ encodiong.
%    \begin{macrocode}
%<*cyrmath>
\DeclareSymbolFont{cyrletters}{LWN}{cmr}{m}{n}
\SetSymbolFont{cyrletters}{bold}{LWN}{cmr}{bx}{n}
%    \end{macrocode}
%    Then we declare a new alphabet for symbols, |\cyrmath|, based on
%    the symbol font `cyrletters'.
%    \begin{macrocode}
\DeclareSymbolFontAlphabet{\cyrmath}{cyrletters}
%    \end{macrocode}
%    And we need a few commands to be able to switch to differen
%    variants.
%    \begin{macrocode}
\DeclareMathAlphabet      {\cyrmathbf}{LWN}{cmr}{bx}{n}
\DeclareMathAlphabet      {\cyrmathsf}{LWN}{cmss}{m}{n}
\DeclareMathAlphabet      {\cyrmathit}{LWN}{cmr}{m}{it}
\DeclareMathAlphabet      {\cyrmathtt}{LWN}{cmtt}{m}{n}
\SetMathAlphabet\cyrmathsf{bold}{LWN}{cmss}{bx}{n}
\SetMathAlphabet\cyrmathit{bold}{LWN}{cmr}{bx}{it}
%</cyrmath>
%    \end{macrocode}
%
%  \section{The font definition files}
%
%    We make the assumption that any one document will either use the
%    \LCY\ encoded variant of the \texttt{LH} fonts or the \LWN\
%    encoded varian, but \emph{not both}. Because we make this
%    assumption the switch between latin and cyrillic alphabets is mad
%    with less difficulty. When switching the encoding means also
%    switching from one font family to another the \textsf{NFSS} makes
%    life rather hard.
%
%  \subsection{Fonts with the Local Cyrillic text encoding (\texttt{LCY})}
%
%    Note that in contrast to the Cork encoding, which is fully
%    defined, the old \TeX{} text encoding which uses Local Cyrillic
%    isn't implemented consistently within all fonts. Most noticeably
%    is that a dollar sign (\$) in some fonts is replaced by a pound
%    symbol (\pounds) in others, which produced quite a number of bug
%    fixes in the NFSS1. Also the typewriter fonts contain a few
%    different characters which are not present in other fonts.
%
%    If one would use the philosophy of \textsf{NFSS} consequently all
%    these would therefore be different encodings and font mixing
%    would therefore be nearly impossible with older fonts. Therefore
%    such encodings are considered the same but one should be remember
%    that in some situations this may cause problems. 
%
% \subsubsection{Cyrillic LH Computer Modern Roman (\texttt{LCY})}
%
%    \begin{macrocode}
%<*LCYcmr>
\DeclareFontFamily{LCY}{cmr}{}
\DeclareFontShape{LCY}{cmr}{m}{n}
   {  <5> <6> <7> <8> <9> <10> <12> gen * lhr
      <10.95> lhr10
      <14.4>  lhr12
      <17.28><20.74><24.88>lhr17}{}
\DeclareFontShape{LCY}{cmr}{m}{sl}
    {
%<+ori>      <5-8>sub * cmr/m/n%
%<-ori>      <5><6><7>lhsl8%
      <8> <9> gen * lhsl
      <10><10.95>lhsl10%
      <12><14.4><17.28><20.74><24.88>lhsl12%
      }{}
\DeclareFontShape{LCY}{cmr}{m}{it}
    {
%<+ori>      <5-7>sub * cmr/m/n%
%<+ori>      <7>lhti7%
%<-ori>      <5><6><7>lhti7%
      <8>lhti8%
      <9>lhti9%
      <10><10.95>lhti10%
      <12><14.4><17.28><20.74><24.88>lhti12%
      }{}
\DeclareFontShape{LCY}{cmr}{m}{sc}
    {
%<+ori>      <5-8>sub * cmr/m/n
%<+ori>      <8><9><10><10.95><12>
%<+ori>      <14.4><17.28><20.74><24.88> lhcsc10
%<-ori>      <5><6><7><8><9><10><10.95><12>
%<-ori>      <14.4><17.28><20.74><24.88> lhcsc10
      }{}
%    \end{macrocode}
%    Here we try to cure the famous \$ $\to$ \pounds{} bug:
% \changes{v2.2c}{1994/01/18}{Corrected forgotten renaming of font
%            shape u to ui in substitution.}
%    \begin{macrocode}
%<+LCYcmr>% Warning: please note that the upright shape below is
%<+LCYcmr>%          used for the \pounds symbol of LaTeX. So this
%<+LCYcmr>%          font definition shouldn't be removed.
%<+LCYcmr>%
%<+ori>%          If lhu below 10pt is not available we substitute
%<+ori>%          lhti as far as possible (sizes 7, 8, 9). This is
%<+ori>%          done because lhu is used mainly for producing the
%<+ori>%          the \pound symbol and it is better to get a slanted
%<+ori>%          (or bigger) pound then to get a $ sign in such
%<+ori>%          situations.
\DeclareFontShape{LCY}{cmr}{m}{ui}
   {
%<+ori>      <7> subf * lhti7%
%<+ori>      <8> subf * lhti8%
%<+ori>      <9> subf * lhti9%
%<+ori>      <10><10.95><12><14.4><17.28><20.74><24.88>lhu10%
%<-ori>      <5><6><7><8><9><10><10.95><12>%
%<-ori>      <14.4><17.28><20.74><24.88>lhu10%
      }{}
%<+LCYcmr>%%%%%%% bold series
\DeclareFontShape{LCY}{cmr}{b}{n}
     {
%<+ori>      <-10> sub * cmr/bx/n
%<+ori>      <10><10.95><12><14.4><17.28><20.74><24.88> lhb10
%<-ori>      <5><6><7><8><9><10><10.95><12>
%<-ori>      <14.4><17.28><20.74><24.88> lhb10
      }{}
%<+LCYcmr>%%%%%%%% bold extended series
\DeclareFontShape{LCY}{cmr}{bx}{n}
   {
      <5> <6> <7> <8> <9> gen * lhbx
      <10><10.95> lhbx10
      <12><14.4><17.28><20.74><24.88>lhbx12
      }{}
\DeclareFontShape{LCY}{cmr}{bx}{sl}
      {
%<+ori>      <-10> sub * cmr/bx/n
%<+ori>      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> lhbxsl10
%<-ori>      <5> <6> <7> <8> <9>
%<-ori>      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> lhbxsl10
      }{}
\DeclareFontShape{LCY}{cmr}{bx}{it}
      {
%<+ori>      <-10>sub * cmr/bx/n
%<+ori>      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> lhbxti10
%<-ori>      <5> <6>  <7>  <8> <9>
%<-ori>      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> lhbxti10
      }{}
%<+LCYcmr>% Again this is necessary for a correct \pounds symbol in
%<+LCYcmr>% the lhr fonts Hopefully the dc/ec font layout will take
%<+LCYcmr>% over soon.
%<+LCYcmr>%
\DeclareFontShape{LCY}{cmr}{bx}{ui}
%<+nowarn>      {<->sub * cmr/m/ui}{}
%<-nowarn>      {<->ssub * cmr/m/ui}{}
%</LCYcmr>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Roman (\texttt{LWN})}
%
%    \begin{macrocode}
%<*LWNcmr>
\DeclareFontFamily{LWN}{cmr}{}
\DeclareFontShape{LWN}{cmr}{m}{n}
   {  <5> <6> <7> <8> <9> <10> <12> gen * wnr
      <10.95> wnr10
      <14.4>  wnr12
      <17.28><20.74><24.88>wnr17}{}
\DeclareFontShape{LWN}{cmr}{m}{sl}
    {
%<+ori>      <5-8>sub * cmr/m/n%
%<-ori>      <5><6><7>cmsl8%
      <8> <9> gen * wnsl
      <10><10.95>wnsl10%
      <12><14.4><17.28><20.74><24.88>wnsl12%
      }{}
\DeclareFontShape{LWN}{cmr}{m}{it}
    {
%<+ori>      <5-7>sub * cmr/m/n%
%<+ori>      <7>wnti7%
%<-ori>      <5><6><7>wnti7%
      <8>wnti8%
      <9>wnti9%
      <10><10.95>wnti10%
      <12><14.4><17.28><20.74><24.88>wnti12%
      }{}
\DeclareFontShape{LWN}{cmr}{m}{sc}
    {
%<+ori>      <5-8>sub * cmr/m/n
%<+ori>      <8><9><10><10.95><12>
%<+ori>      <14.4><17.28><20.74><24.88> wncsc10
%<-ori>      <5><6><7><8><9><10><10.95><12>
%<-ori>      <14.4><17.28><20.74><24.88> wncsc10
      }{}
%    \end{macrocode}
%    Here we try to cure the famous \$ $\to$ \pounds{} bug:
% \changes{v2.2c}{1994/01/18}{Corrected forgotten renaming of font
%            shape u to ui in substitution.}
%    \begin{macrocode}
%<+LWNcmr>% Warning: please note that the upright shape below is
%<+LWNcmr>%          used for the \pounds symbol of LaTeX. So this
%<+LWNcmr>%          font definition shouldn't be removed.
%<+LWNcmr>%
%<+ori>%          If wnu below 10pt is not available we substitute
%<+ori>%          wnti as far as possible (sizes 7, 8, 9). This is
%<+ori>%          done because wnu is used mainly for producing the
%<+ori>%          the \pound symbol and it is better to get a slanted
%<+ori>%          (or bigger) pound then to get a $ sign in such
%<+ori>%          situations.
\DeclareFontShape{LWN}{cmr}{m}{ui}
   {
%<+ori>      <7> subf * wnti7%
%<+ori>      <8> subf * wnti8%
%<+ori>      <9> subf * wnti9%
%<+ori>      <10><10.95><12><14.4><17.28><20.74><24.88>wnu10%
%<-ori>      <5><6><7><8><9><10><10.95><12>%
%<-ori>      <14.4><17.28><20.74><24.88>wnu10%
      }{}
%<+LWNcmr>%%%%%%% bold series
\DeclareFontShape{LWN}{cmr}{b}{n}
     {
%<+ori>      <-10> sub * cmr/bx/n
%<+ori>      <10><10.95><12><14.4><17.28><20.74><24.88> wnb10
%<-ori>      <5><6><7><8><9><10><10.95><12>
%<-ori>      <14.4><17.28><20.74><24.88> wnb10
      }{}
%<+LWNcmr>%%%%%%%% bold extended series
\DeclareFontShape{LWN}{cmr}{bx}{n}
   {
      <5> <6> <7> <8> <9> gen * wnbx
      <10><10.95> wnbx10
      <12><14.4><17.28><20.74><24.88>wnbx12
      }{}
\DeclareFontShape{LWN}{cmr}{bx}{sl}
      {
%<+ori>      <-10> sub * cmr/bx/n
%<+ori>      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> wnbxsl10
%<-ori>      <5> <6> <7> <8> <9>
%<-ori>      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> wnbxsl10
      }{}
\DeclareFontShape{LWN}{cmr}{bx}{it}
      {
%<+ori>      <-10>sub * cmr/bx/n
%<+ori>      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> wnbxti10
%<-ori>      <5> <6>  <7>  <8> <9>
%<-ori>      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> wnbxti10
      }{}
%<+LWNcmr>% Again this is necessary for a correct \pounds symbol in
%<+LWNcmr>% the wnr fonts Hopefully the dc/ec font layout will take
%<+LWNcmr>% over soon.
%<+LWNcmr>%
\DeclareFontShape{LWN}{cmr}{bx}{ui}
%<+nowarn>      {<->sub * cmr/m/ui}{}
%<-nowarn>      {<->ssub * cmr/m/ui}{}
%</LWNcmr>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Sans (\texttt{LCY})}
%
%    Same game for the Sans family.
%    \begin{macrocode}
%<*LCYcmss>
\DeclareFontFamily{LCY}{cmss}{}
\DeclareFontShape{LCY}{cmss}{m}{n}
     {
%<+ori>      <-8>sub * cmr/m/n
%<+ori>      <8>lhss8
%<-ori>      <5><6><7><8>lhss8
      <9>lhss9
      <10><10.95>lhss10
      <12><14.4>lhss12
      <17.28><20.74><24.88>lhss17
      }{}
%<+LCYcmss>% Font undefined, therefore substituted
\DeclareFontShape{LCY}{cmss}{m}{it}
%<-nowarn>      {<->sub * cmss/m/sl}{}
%<+nowarn>      {<->ssub * cmss/m/sl}{}
\DeclareFontShape{OT1}{cmss}{m}{sl}
    {
%<+ori>      <-8>sub * cmss/m/n
%<+ori>      <8> <9> gen * cmssi
%<-ori>      <5><6><7><8>lhssi8 <9> lhssi9
      <10><10.95>lhssi10
      <12><14.4>lhssi12
      <17.28><20.74><24.88>lhssi17
      }{}
%<+LCYcmss>%%%%%%% Font/shape undefined, therefore substituted
\DeclareFontShape{LCY}{cmss}{m}{sc}
       {<->sub * cmr/m/sc}{}
%<+LCYcmss>%%%%%%% Font/shape undefined, therefore substituted
\DeclareFontShape{LCY}{cmss}{m}{ui}
       {<->sub * cmr/m/ui}{}
%<+LCYcmss>%%%%%%%% semibold condensed series
\DeclareFontShape{LCY}{cmss}{sbc}{n}
     {
%<+ori>      <-10> sub * cmss/m/n
%<-ori>      <5> <6> <7> <8> <9> lhssdc10
       <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88>lhssdc10
       }{}

%<+LCYcmss>%%%%%%%%% bold extended series
\DeclareFontShape{LCY}{cmss}{bx}{n}
     {
%<+ori>      <-10> sub * cmss/m/n
%<-ori>      <5> <6> <7> <8> <9> lhssbx10
      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> lhssbx10
      }{}
%<+LCYcmss>%%%%%%% Font/shape undefined, therefore substituted
\DeclareFontShape{LCY}{cmss}{bx}{ui}
       {<->sub * cmr/bx/ui}{}
%</LCYcmss>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Sans (\texttt{LWN})}
%
%    Same game for the Sans family.
%    \begin{macrocode}
%<*LWNcmss>
\DeclareFontFamily{LWN}{cmss}{}
\DeclareFontShape{LWN}{cmss}{m}{n}
     {
%<+ori>      <-8>sub * cmr/m/n
%<+ori>      <8>wnss8
%<-ori>      <5><6><7><8>wnss8
      <9>wnss9
      <10><10.95>wnss10
      <12><14.4>wnss12
      <17.28><20.74><24.88>wnss17
      }{}
%<+LWNcmss>% Font undefined, therefore substituted
\DeclareFontShape{LWN}{cmss}{m}{it}
%<-nowarn>      {<->sub * cmss/m/sl}{}
%<+nowarn>      {<->ssub * cmss/m/sl}{}
\DeclareFontShape{OT1}{cmss}{m}{sl}
    {
%<+ori>      <-8>sub * cmss/m/n
%<+ori>      <8> <9> gen * wnssi
%<-ori>      <5><6><7><8>wnssi8 <9> wnssi9
      <10><10.95>wnssi10
      <12><14.4>wnssi12
      <17.28><20.74><24.88>wnssi17
      }{}
%<+LWNcmss>%%%%%%% Font/shape undefined, therefore substituted
\DeclareFontShape{LWN}{cmss}{m}{sc}
       {<->sub * cmr/m/sc}{}
%<+LWNcmss>%%%%%%% Font/shape undefined, therefore substituted
\DeclareFontShape{LWN}{cmss}{m}{ui}
       {<->sub * cmr/m/ui}{}
%<+LWNcmss>%%%%%%%% semibold condensed series
\DeclareFontShape{LWN}{cmss}{sbc}{n}
     {
%<+ori>      <-10> sub * cmss/m/n
%<-ori>      <5> <6> <7> <8> <9> wnssdc10
       <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88>wnssdc10
       }{}

%<+LWNcmss>%%%%%%%%% bold extended series
\DeclareFontShape{LWN}{cmss}{bx}{n}
     {
%<+ori>      <-10> sub * cmss/m/n
%<-ori>      <5> <6> <7> <8> <9> wnssbx10
      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> wnssbx10
      }{}
%<+LWNcmss>%%%%%%% Font/shape undefined, therefore substituted
\DeclareFontShape{LWN}{cmss}{bx}{ui}
       {<->sub * cmr/bx/ui}{}
%</LWNcmss>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Typewriter (\texttt{LCY})}
%
%    Notice that this encoding is in fact quite different and we
%    shouldn't therefore substitute some other font group if the
%    correct size or shape isn't available. Otherwise, we may end with
%    a |\verb| suddenly producing a lot of funny chars instead of the
%    desired ones.
%    \begin{macrocode}
%<*LCYcmtt>
\DeclareFontFamily{LCY}{cmtt}{\hyphenchar \font\m@ne}
\DeclareFontShape{LCY}{cmtt}{m}{n}
     {
%    \end{macrocode}
%    This substitution for |ori| is wrong and only in here because
%    that was the way stuff has be set up in the old |lfonts.tex| file.
%    \begin{macrocode}
%<+ori>      <-8>sub * cmr/m/n
%<+ori>      <8> <9> gen * lhtt
%<-ori>      <5><6><7><8>lhtt8 <9> lhtt9
      <10><10.95>lhtt10
      <12><14.4><17.28><20.74><24.88>lhtt12
      }{}
%<+LCYcmtt>%%%%%% make sure subst shapes are available
\DeclareFontShape{LCY}{cmtt}{m}{it}
     {
%    \end{macrocode}
%    The following substitution however is okay since both fonts have
%    the same encoding.
%    \begin{macrocode}
%<+ori>      <-10>sub * cmtt/m/n
%<-ori>      <5> <6> <7> <8> <9>
      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> lhitt10
      }{}
\DeclareFontShape{LCY}{cmtt}{m}{sl}
     {
%<+ori>      <-10>sub * cmtt/m/n
%<-ori>      <5> <6> <7> <8> <9>
      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> lhsltt10
      }{}
\DeclareFontShape{LCY}{cmtt}{m}{sc}
     {
%<+ori>      <-10>sub * cmtt/m/n
%<-ori>      <5> <6> <7> <8> <9>
      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> lhtcsc10
      }{}
\DeclareFontShape{LCY}{cmtt}{m}{ui}
%<-nowarn>  {<->sub * cmtt/m/it}{}
%<+nowarn>  {<->ssub * cmtt/m/it}{}
\DeclareFontShape{LCY}{cmtt}{bx}{n}
%<-nowarn>  {<->sub * cmtt/m/n}{}
%<+nowarn>  {<->ssub * cmtt/m/n}{}
\DeclareFontShape{LCY}{cmtt}{bx}{it}
%<-nowarn>  {<->sub * cmtt/m/it}{}
%<+nowarn>  {<->ssub * cmtt/m/it}{}
\DeclareFontShape{LCY}{cmtt}{bx}{ui}
%<-nowarn>  {<->sub * cmtt/m/it}{}
%<+nowarn>  {<->ssub * cmtt/m/it}{}
%</LCYcmtt>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Typewriter (\texttt{LWN})}
%
%    Notice that this encoding is in fact quite different and we
%    shouldn't therefore substitute some other font group if the
%    correct size or shape isn't available. Otherwise, we may end with
%    a |\verb| suddenly producing a lot of funny chars instead of the
%    desired ones.
%    \begin{macrocode}
%<*LWNcmtt>
\DeclareFontFamily{LWN}{cmtt}{\hyphenchar \font\m@ne}
\DeclareFontShape{LWN}{cmtt}{m}{n}
     {
%    \end{macrocode}
%    This substitution for |ori| is wrong and only in here because
%    that was the way stuff has be set up in the old |lfonts.tex| file.
%    \begin{macrocode}
%<+ori>      <-8>sub * cmr/m/n
%<+ori>      <8> <9> gen * cmtt
%<-ori>      <5><6><7><8>wntt8 <9> wntt9
      <10><10.95>wntt10
      <12><14.4><17.28><20.74><24.88>wntt12
      }{}
%<+LWNcmtt>%%%%%% make sure subst shapes are available
\DeclareFontShape{LWN}{cmtt}{m}{it}
     {
%    \end{macrocode}
%    The following substitution however is okay since both fonts have
%    the same encoding.
%    \begin{macrocode}
%<+ori>      <-10>sub * cmtt/m/n
%<-ori>      <5> <6> <7> <8> <9>
      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> wnitt10
      }{}
\DeclareFontShape{LWN}{cmtt}{m}{sl}
     {
%<+ori>      <-10>sub * cmtt/m/n
%<-ori>      <5> <6> <7> <8> <9>
      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> wnsltt10
      }{}
\DeclareFontShape{LWN}{cmtt}{m}{sc}
     {
%<+ori>      <-10>sub * cmtt/m/n
%<-ori>      <5> <6> <7> <8> <9>
      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> wntcsc10
      }{}
\DeclareFontShape{LWN}{cmtt}{m}{ui}
%<-nowarn>  {<->sub * cmtt/m/it}{}
%<+nowarn>  {<->ssub * cmtt/m/it}{}
\DeclareFontShape{LWN}{cmtt}{bx}{n}
%<-nowarn>  {<->sub * cmtt/m/n}{}
%<+nowarn>  {<->ssub * cmtt/m/n}{}
\DeclareFontShape{LWN}{cmtt}{bx}{it}
%<-nowarn>  {<->sub * cmtt/m/it}{}
%<+nowarn>  {<->ssub * cmtt/m/it}{}
\DeclareFontShape{LWN}{cmtt}{bx}{ui}
%<-nowarn>  {<->sub * cmtt/m/it}{}
%<+nowarn>  {<->ssub * cmtt/m/it}{}
%</LWNcmtt>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Funny (\texttt{LCY})}
%
%    \begin{macrocode}
%<*LCYcmfr>
\DeclareFontFamily{LCY}{cmfr}{}
\DeclareFontShape{LCY}{cmfr}{m}{n}{%
      <10> lhff10
    }{}
\DeclareFontShape{LCY}{cmfr}{m}{it}{%
      <10> lhfi10
    }{}
%</LCYcmfr>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Funny (\texttt{LWN})}
%
%    \begin{macrocode}
%<*LWNcmfr>
\DeclareFontFamily{LWN}{cmfr}{}
\DeclareFontShape{LWN}{cmfr}{m}{n}{%
      <10> wnff10
    }{}
\DeclareFontShape{LWN}{cmfr}{m}{it}{%
      <10> wnfi10
    }{}
%</LWNcmfr>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Dunhill (\texttt{LCY})}
%
%    \begin{macrocode}
%<*LCYcmdh>
\DeclareFontFamily{LCY}{cmdh}{}
\DeclareFontShape{LCY}{cmdh}{m}{n}{
      <10> lhdunh10
    }{}
%</LCYcmdh>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Dunhill (\texttt{LWN})}
%
%    \begin{macrocode}
%<*LWNcmdh>
\DeclareFontFamily{LWN}{cmdh}{}
\DeclareFontShape{LWN}{cmdh}{m}{n}{
      <10> wndunh10
    }{}
%</LWNcmdh>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Fibonacci (\texttt{LCY})}
%
%    \begin{macrocode}
%<*LCYcmfib>
\DeclareFontFamily{LCY}{cmfib}{}
\DeclareFontShape{LCY}{cmfib}{m}{n}{
      <8> lhfib8
    }{}
%</LCYcmfib>
%    \end{macrocode}
%
% \subsubsection{Cyrillic LH Computer Modern Fibonacci (\texttt{LWN})}
%
%    \begin{macrocode}
%<*LWNcmfib>
\DeclareFontFamily{LWN}{cmfib}{}
\DeclareFontShape{LWN}{cmfib}{m}{n}{
      <8> wnfib8
    }{}
%</LWNcmfib>
%    \end{macrocode}
%
% \Finale
%
\endinput
