summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/lh
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-07-01 22:18:57 +0000
committerKarl Berry <karl@freefriends.org>2006-07-01 22:18:57 +0000
commit12e838406005e7d86054c1b4a605be7eb2f49080 (patch)
tree5f2ca548c1fb8a1e28eb34b3ad57396471ff7902 /Master/texmf-dist/source/latex/lh
parenta8fc2d59858b6da806b0b23d7b41e2c8ea801c2a (diff)
lh fonts 3.5d update
git-svn-id: svn://tug.org/texlive/trunk@1738 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/lh')
-rw-r--r--Master/texmf-dist/source/latex/lh/lcyfonts.fdd681
-rw-r--r--Master/texmf-dist/source/latex/lh/lcyfonts.ins57
-rw-r--r--Master/texmf-dist/source/latex/lh/ot2fonts.fdd682
-rw-r--r--Master/texmf-dist/source/latex/lh/ot2fonts.ins57
-rw-r--r--Master/texmf-dist/source/latex/lh/t2ccfonts.fdd309
-rw-r--r--Master/texmf-dist/source/latex/lh/t2ccfonts.ins33
6 files changed, 1819 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/lh/lcyfonts.fdd b/Master/texmf-dist/source/latex/lh/lcyfonts.fdd
new file mode 100644
index 00000000000..28b7a53b427
--- /dev/null
+++ b/Master/texmf-dist/source/latex/lh/lcyfonts.fdd
@@ -0,0 +1,681 @@
+% \iffalse meta-comment
+% lcyfonts.fdd
+% extraction and modification of cmfonts.fdd
+% (+concmath.dtx,slifonts.fdd,cmbr.fdd)
+% Part of LH fonts package v3.5(d)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% \fi
+% \CheckSum{126}
+%
+%\iffalse This is a META comment
+%
+% File `lcyfonts.fdd'.
+%
+%<LCYccr, >\ProvidesFile{lcyccr.fd}
+%<LCYcmdh, >\ProvidesFile{lcycmdh.fd}
+%<LCYcmfib, >\ProvidesFile{lcycmfib.fd}
+%<LCYcmfr, >\ProvidesFile{lcycmfr.fd}
+%<LCYcmr&!LCYcmss>\ProvidesFile{lcycmr.fd}
+%<LCYcmss&!LCYcmr>\ProvidesFile{lcycmss.fd}
+%<LCYcmr&LCYcmss>\ProvidesPackage{lh-lcy}
+%<LCYcmtt, >\ProvidesFile{lcycmtt.fd}
+%<LCYcmvtt, >\ProvidesFile{lcycmvtt.fd}
+%<lcmss, >\ProvidesFile{lcylcmss.fd}
+%<lcmtt, >\ProvidesFile{lcylcmtt.fd}
+%<slimain, >\ProvidesFile{lcysfonts.def}
+%<lcycmbr, >\ProvidesFile{lcycmbr.fd}
+%<lcycmtl, >\ProvidesFile{lcycmtl.fd}
+%<*driver, >
+ \ProvidesFile{lcyfonts.drv}
+%</driver, >
+ [2006/06/08 v0.0a LCY Cyrillic font definitions]
+%
+%<*driver>
+\documentclass{ltxdoc}
+\GetFileInfo{lcyfonts.drv}
+\providecommand\dst{\expandafter{\normalfont\scshape docstrip}}
+\title{The file \texttt{lcyfonts.fdd} for use with
+ \LaTeXe.\thanks{This file has version
+ number \fileversion, dated \filedate.}}
+\date{\filedate}\author{Olga Lapko}
+\begin{document}
+\maketitle
+ \DocInput{lcyfonts.fdd}
+\end{document}
+%</driver>
+%
+%\fi
+%
+%
+%
+%
+% \section{Introduction}
+%
+% This file contains the external font information needed to load
+% the LH fonts in old Cyrillic encoding (|LCY|).
+%
+% \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 \\
+% nowarn & produce |.fd| files that do not warn about substitutions\\
+% ori & make conservative |.fd| files\\
+% fd & produce a font definition file (actually no longer used)\\[2pt]
+% LCYccr & make Concrete Roman (old encoding) \\
+% LCYcmdh & make Computer Modern Dunhill (old encoding)\\
+% LCYcmfib & make Computer Modern Fibonacci (old encoding)\\
+% LCYcmfr & make Computer Modern Funny (old encoding)\\
+% LCYcmr & make Computer Modern Roman (old encoding)\\
+% LCYcmss & make Computer Modern Sans (old encoding)\\
+% LCYcmtt & make Computer Modern Typewriter (old encoding)\\
+% LCYcmvtt & make Computer Modern Variable Typewriter (old encoding)\\[2pt]
+% slimain & generate \texttt{ot2sfonts.def} for slides\\
+% lccr & Concrete Roman slide sizes \\
+% lcmss & Computer Modern Sans slide sizes \\
+% lcmtt & Computer Modern Typewriter slide sizes \\[2pt]
+% lcycmbr & font definition file \texttt{lcycmbr.fd}\\
+% lcycmtl & font definition file \texttt{lcycmtl.fd}\\
+% \end{tabular}
+% \end{center}
+% A typical \texttt{docstrip} command file would then have entries like:
+% \begin{verbatim}
+%\generateFile{LCYcmr.fd}{t}{\from{cmfonts.fdd}{fd,LCYcmr}}
+%\end{verbatim}
+%
+%
+% \section{The font definition files with local cyrillic encoding (\texttt{LCY})}
+%
+% \subsection{Computer Modern Roman (\texttt{LCY})}
+%
+% The package \texttt{lh-lcy} can be loaded without \texttt{fontenc}.
+% Here is declared font encoding and default font for this encoding.
+% \begin{macrocode}
+%<*LCYcmr&LCYcmss>
+\DeclareFontEncoding{LCY}{}{}
+\DeclareFontSubstitution{LCY}{cmr}{m}{n}
+%</LCYcmr&LCYcmss>
+% \end{macrocode}
+% \begin{macrocode}
+%<*LCYcmr>
+\DeclareFontFamily{LCY}{cmr}{\hyphenchar\font45 }
+\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:
+% \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 cmu below 10pt is not available we substitute
+%<+ori>% cmti as far as possible (sizes 7, 8, 9). This is
+%<+ori>% done because cmu 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*cmti7%
+%<+ori> <8>subf*cmti8%
+%<+ori> <9>subf*cmti9%
+%<+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%
+ }{}
+%%%%%%% 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%
+ }{}
+%%%%%%%% 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%
+ }{}
+% \end{macrocode}
+% \begin{macrocode}
+%<+LCYcmr>% Again this is necessary for a correct \pounds symbol in
+%<+LCYcmr>% the cmr fonts Hopefully the dc/ec font layout will take
+%<+LCYcmr>% over soon.
+%<+LCYcmr>%
+%<+LCYcmr>\DeclareFontShape{LCY}{cmr}{bx}{ui}
+%<-nowarn> {<->sub*cmr/m/ui}{}
+%<+nowarn> {<->ssub*cmr/m/ui}{}
+%</LCYcmr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Sans (\texttt{LCY})}
+%
+% Same game for the Sans family.
+% \begin{macrocode}
+%<*LCYcmss>
+\DeclareFontFamily{LCY}{cmss}{\hyphenchar\font45 }
+\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{LCY}{cmss}{m}{sl}
+ {%
+%<+ori> <-8>sub*cmss/m/n%
+%<+ori> <8><9>gen*lhssi%
+%<-ori> <5><6><7><8>lhssi8<9>lhssi9%
+ <10><10.95>lhssi10%
+ <12><14.4>lhssi12%
+ <17.28><20.74><24.88>lhssi17%
+ }{}
+%%%%%%% Font/shape undefined, therefore substituted
+\DeclareFontShape{LCY}{cmss}{m}{sc}
+ {<->sub*cmr/m/sc}{}
+%%%%%%% Font/shape undefined, therefore substituted
+\DeclareFontShape{LCY}{cmss}{m}{ui}
+ {<->sub*cmr/m/ui}{}
+%%%%%%%% 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%
+ }{}
+
+%%%%%%%%% 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%
+ }{}
+%%%%%%% Font/shape undefined, therefore substituted
+\DeclareFontShape{LCY}{cmss}{bx}{ui}
+ {<->sub*cmr/bx/ui}{}
+%</LCYcmss>
+% \end{macrocode}
+%
+% \subsection{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%
+ }{}
+%%%%%% 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}
+%
+%
+% \subsection{Computer Modern Variable Typewriter (\texttt{LCY})}
+%
+% The Computer Modern Variable Typewriter family is the
+% proportional spaced version of the Computer Modern Typewriter
+% family. It is implemented as a separate family to allow easy use
+% in normal text, including changes of shape/series etc if available.
+% This family also allows normal hyphenation.
+% \begin{macrocode}
+%<*LCYcmvtt>
+\DeclareFontFamily{LCY}{cmvtt}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmvtt}{m}{n}%
+ {%
+ <5><6><7><8><9><10><10.95>%
+ <12><14.4><17.28><20.74><24.88>lhvtt10%
+ }{}
+% \end{macrocode}
+% This font is probably not available to everybody as it is not
+% part of the standard distribution. One might find it in
+% \texttt{.../systems/knuth/local} on CTAN.
+% \begin{macrocode}
+\DeclareFontShape{LCY}{cmvtt}{m}{it}%
+ {%
+ <5><6><7><8><9><10><10.95>%
+ <12><14.4><17.28><20.74><24.88>lhvtti10%
+ }{}
+%</LCYcmvtt>
+% \end{macrocode}
+%
+%
+% \subsection{Computer Modern Funny (\texttt{LCY})}
+%
+% \begin{macrocode}
+%<*LCYcmfr>
+\DeclareFontFamily{LCY}{cmfr}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmfr}{m}{n}{%
+ <10>lhff10%
+ }{}
+\DeclareFontShape{LCY}{cmfr}{m}{it}{%
+ <10>lhfi10%
+ }{}
+%</LCYcmfr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Dunhill (\texttt{LCY})}
+%
+% \begin{macrocode}
+%<*LCYcmdh>
+\DeclareFontFamily{LCY}{cmdh}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmdh}{m}{n}{%
+ <10>lhdunh10%
+ }{}
+%</LCYcmdh>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Fibonacci (\texttt{LCY})}
+%
+% \begin{macrocode}
+%<*LCYcmfib>
+\DeclareFontFamily{LCY}{cmfib}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmfib}{m}{n}{%
+ <8>lhfib8%
+ }{}
+%</LCYcmfib>
+% \end{macrocode}
+%
+% \subsection{Concrete Roman}
+%
+% Text of explanation borrowed from original \texttt{concmath.dtx}.
+%
+% Here are the standard font definitions for Concrete Roman,
+% including the \textit{italics}, \textsl{slanted}, and
+% \textsc{small-caps} variants, which are usually only available
+% in~10\,pt size. While it would be a trivial exercise to create a
+% full set of slanted fonts by taking the \texttt{ccr} parameter
+% files and setting the slant parameter to~$1/6$ in the
+% \texttt{ccsl} parameter files, we shall only use the sizes
+% provided in Knuth's official distribution. As for the italics
+% and small-caps versions, there is no way to generate appropriate
+% smaller sizes without extensive tuning and testing to derive new
+% parameter sets.
+%
+% \begin{macrocode}
+%<*LCYccr>
+\DeclareFontFamily{LCY}{ccr}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{ccr}{m}{n}{%
+ <5><6><7><8><9>gen*lhcr%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhcr10}{}
+\DeclareFontShape{LCY}{ccr}{m}{sl}{%
+ <5><6><7><8><9>lhcsl9%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhcsl10}{}
+\DeclareFontShape{LCY}{ccr}{m}{it}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhcti10}{}
+\DeclareFontShape{LCY}{ccr}{m}{sc}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhccsc10}{}
+% \end{macrocode}
+%
+% Next, here are the font substitutions for the bold series. Since
+% there is no bold series in Concrete, we will use the
+% corresponding Computer Modern fonts.
+% {\em Added substitution for |\fontseries b| font.}
+%
+% \begin{macrocode}
+%<+ori>\DeclareFontShape{LCY}{ccr}{b}{n}{<->ssub*cmr/b/n}{}
+%<+ori>\DeclareFontShape{LCY}{ccr}{bx}{n}{<->ssub*cmr/bx/n}{}
+%<+ori>\DeclareFontShape{LCY}{ccr}{bx}{sl}{<->ssub*cmr/bx/sl}{}
+%<+ori>\DeclareFontShape{LCY}{ccr}{bx}{it}{<->ssub*cmr/bx/it}{}
+%<-ori>\DeclareFontShape{LCY}{ccr}{b}{n}{%
+%<-ori> <5><6><7><8><9>%
+%<-ori> <10><10.95><12><14.4><17.28><20.74><24.88>lhcb10}{}
+%<-ori>\DeclareFontShape{LCY}{ccr}{bx}{n}{%
+%<-ori> <5><6><7><8><9>gen*lhcbx%
+%<-ori> <10><10.95><12><14.4><17.28><20.74><24.88>lhcbx10}{}
+%<-ori>\DeclareFontShape{LCY}{ccr}{bx}{sl}{%
+%<-ori> <5><6><7><8><9>%
+%<-ori> <10><10.95><12><14.4><17.28><20.74><24.88>lhcbxsl10}{}
+%<-ori>\DeclareFontShape{LCY}{ccr}{bx}{it}{%
+%<-ori> <5><6><7><8><9>%
+%<-ori> <10><10.95><12><14.4><17.28><20.74><24.88>lhcbxti10}{}
+% \end{macrocode}
+%
+% Next, here are the font substitutions for the semibold series.
+% As we shall see below, the \texttt{concmath} package provides a
+% `\textsf{boldsans}' option which redefines |\bfdefault| and thus
+% turns all bold material into semibold condensed (which will then
+% be substituted by semibold condensed sans serif). Since some
+% people prefer to use semibold condensed Computer Modern Sans
+% Serif in combination with Concrete Roman, this unusual
+% substitution allows to switch between both choices by selecting
+% or omitting a package option.
+%
+% \begin{macrocode}
+\DeclareFontShape{LCY}{ccr}{sbc}{n} {<->ssub*cmss/sbc/n}{}
+\DeclareFontShape{LCY}{ccr}{sbc}{sl}{<->ssub*cmss/sbc/n}{}
+\DeclareFontShape{LCY}{ccr}{sbc}{it}{<->ssub*cmss/sbc/n}{}
+% \end{macrocode}
+%
+% Finally, here is the font shape declaration for the special
+% purpose condensed slanted font that was used in \textit{Concrete
+% Mathematics} for so-called `graffiti'. The \texttt{concmath}
+% package does not bother to provide macros for such kinds of
+% marginal notes, thus users who want to use this feature will have
+% to develop their own.
+%
+% \begin{macrocode}
+\DeclareFontShape{LCY}{ccr}{c}{sl}{<9>lhcslc9}{}
+%</LCYccr>
+% \end{macrocode}
+%
+% \section{The font definition files for slides}
+%
+% \subsection{Concrete Roman}
+%
+% \begin{macrocode}
+%<*lccr>
+\DeclareFontFamily{LCY}{lccr}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{lccr}{m}{sc}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>lhccsc10%
+ }{}
+\DeclareFontShape{LCY}{lccr}{m}{sl}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>lhcslc9%
+ }{}
+\DeclareFontShape{LCY}{lccr}{m}{n}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>lhcr8%
+ }{}
+\DeclareFontShape{LCY}{lccr}{m}{In}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>ilhcr8%
+ }{}
+%</lccr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Sans}
+%
+% \begin{macrocode}
+%<*lcmss>
+ \DeclareFontFamily{LCY}{lcmss}{\hyphenchar\font45 }
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmss}{m}{n}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ llhss8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmss}{m}{In}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ illhss8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmss}{m}{sl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ llhssi8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmss}{m}{Isl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ illhssi8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmss}{m}{it}{%
+ <->sub*lcmss/m/sl}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmss}{m}{Iit}{%
+ <->sub*lcmss/m/Isl}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmss}{bx}{n}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ llhssb8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmss}{bx}{In}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ illhssb8%
+ }{}
+% \end{macrocode}
+%
+% There are extra substitutions for the shape |ui| which are needed
+% for |\pounds| to not come out as a \$ sign (mostly).
+% \begin{macrocode}
+\DeclareFontShape{LCY}{lcmss}{m}{ui}{%
+ <->sub*cmr/m/ui}{}
+\DeclareFontShape{LCY}{lcmss}{bx}{ui}{%
+ <->sub*cmr/m/ui}{}
+%</lcmss>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter}
+%
+% \begin{macrocode}
+%<*lcmtt>
+ \DeclareFontFamily{LCY}{lcmtt}{\hyphenchar\font\m@ne}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmtt}{m}{n}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ lhtt8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmtt}{m}{In}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ ilhtt8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{LCY}{lcmtt}{m}{it}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ lhitt10%
+ }{}
+% \end{macrocode}
+% There are extra substitutions for the shape |ui| which are needed
+% for |\pounds| to not come out as a \$ sign (mostly).
+% \begin{macrocode}
+\DeclareFontShape{LCY}{lcmtt}{m}{ui}{%
+ <->sub*cmtt/m/it}{}
+\DeclareFontShape{LCY}{lcmtt}{bx}{ui}{%
+ <->sub*cmtt/m/it}{}
+%</lcmtt>
+% \end{macrocode}
+%
+% \section{Setting defaults}
+%
+% The following statements go into the file \texttt{sfonts.def}
+% which plays a r\^ole similar to \texttt{fontdef.ltx}. Thus, you may
+% want to produce your own local variant of it if you intend to use
+% different fonts in your slides.
+% \begin{macrocode}
+%<*slimain>
+\DeclareErrorFont{LCY}{lcmss}{m}{n}{19.907}
+\DeclareFontSubstitution{LCY}{lcmss}{m}{n}
+\input lcylcmss.fd
+%</slimain>
+% \end{macrocode}
+%
+% \section{CM Bright fonts}
+%
+% Borrowed code and with adaptations from file \texttt{cmbr.fdd}
+%
+% \subsection{CM Bright, LCY encoding}
+%
+% \begin{macrocode}
+%<*lcycmbr>
+\DeclareFontFamily{LCY}{cmbr}{\hyphenchar\font45}
+\DeclareFontShape{LCY}{cmbr}{m}{n}{%
+<5><6><7><8>lhbr8%
+<9>lhbr9%
+<10><10.95><12><14.4>lhbr10%
+<17.28><20.74><24.88><29.86><35.83>lhbr17%
+}{}
+\DeclareFontShape{LCY}{cmbr}{m}{sl}{%
+<5><6><7><8>lhbrsl8%
+<9>lhbrsl9%
+<10><10.95><12><14.4>lhbrsl10%
+<17.28><20.74><24.88><29.86><35.83>lhbrsl17%
+}{}
+\DeclareFontShape{LCY}{cmbr}{m}{it}{%
+<->ssub*cmbr/m/sl%
+}{}
+\DeclareFontShape{LCY}{cmbr}{b}{n}{%
+<->ssub*cmbr/bx/n%
+}{}
+\DeclareFontShape{LCY}{cmbr}{bx}{n}{%
+<-9>sub*cmbr/m/n%
+<9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>lhbrbx10%
+}{}
+%</lcycmbr>
+% \end{macrocode}
+%
+% \subsection{CM Typewriter Light, LCY encoding}
+%
+% \begin{macrocode}
+%<*lcycmtl>
+\DeclareFontFamily{LCY}{cmtl}{\hyphenchar\font\m@ne}
+\DeclareFontShape{LCY}{cmtl}{m}{n}{%
+<5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>lhtl10%
+}{}
+\DeclareFontShape{LCY}{cmtl}{m}{sl}{%
+<5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>lhsltl10%
+}{}
+\DeclareFontShape{LCY}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{}
+%</lcycmtl>
+% \end{macrocode}
+%
+% The next line goes into all files and in addition prevents \dst{}
+% from adding any further code from the main source file (such as a
+% character table.
+% \begin{macrocode}
+\endinput
+% \end{macrocode}
+%
+% \Finale
+%
+%% \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 \~}
diff --git a/Master/texmf-dist/source/latex/lh/lcyfonts.ins b/Master/texmf-dist/source/latex/lh/lcyfonts.ins
new file mode 100644
index 00000000000..e0f29be06e4
--- /dev/null
+++ b/Master/texmf-dist/source/latex/lh/lcyfonts.ins
@@ -0,0 +1,57 @@
+% lcyfonts.ins
+% extracted and modified cmfonts.ins
+% (+slides.ins,cmbr.ins)
+% Part of LH fonts package v3.5(d)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+
+\input docstrip
+\usedir{tex/latex/lhfonts}
+
+\preamble
+
+This is a generated file.
+
+This file is part of lhfonts package
+Version 3.5 // Patchlevel=2
+
+\endpreamble
+
+\keepsilent
+
+\generate{\file{lcycmss.fd}{\from{lcyfonts.fdd}{LCYcmss}}
+ \file{lcycmr.fd}{\from{lcyfonts.fdd}{LCYcmr}}
+ \file{lh-lcy.sty}{\from{lcyfonts.fdd}{LCYcmr,LCYcmss}}
+ \file{lcycmtt.fd}{\from{lcyfonts.fdd}{LCYcmtt,nowarn}}
+ \file{lcycmvtt.fd}{\from{lcyfonts.fdd}{LCYcmvtt}}
+ \file{lcycmfib.fd}{\from{lcyfonts.fdd}{LCYcmfib}}
+ \file{lcycmfr.fd}{\from{lcyfonts.fdd}{LCYcmfr}}
+ \file{lcycmdh.fd}{\from{lcyfonts.fdd}{LCYcmdh}}}
+
+\generate{\file{lcyccr.fd}{\from{lcyfonts.fdd}{LCYccr,ori}}
+ \file{lh-lcyccr.sty}{\from{lcyfonts.fdd}{LCYccr,ori}}
+ \file{lh-lcyxccr.sty}{\from{lcyfonts.fdd}{LCYccr}}}
+
+\generate{\file{lcylcmss.fd}{\from{lcyfonts.fdd}{lcmss,fd}}
+ \file{lcylcmtt.fd}{\from{lcyfonts.fdd}{lcmtt,fd}}}
+
+\generate{\file{lcycmbr.fd}{\from{lcyfonts.fdd}{lcycmbr}}
+ \file{lcycmtl.fd}{\from{lcyfonts.fdd}{lcycmtl}}}
+
+\ifToplevel{
+\Msg{***********************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* files into a directory searched by TeX:}
+\Msg{*}
+\Msg{* \space\space All *.fd}
+\Msg{*}
+\Msg{* To produce the documentation run the files ending with}
+\Msg{* `.fdd' through LaTeX.}
+\Msg{*}
+\Msg{* Happy TeXing}
+\Msg{***********************************************************}
+}
+
+\endbatchfile
+
diff --git a/Master/texmf-dist/source/latex/lh/ot2fonts.fdd b/Master/texmf-dist/source/latex/lh/ot2fonts.fdd
new file mode 100644
index 00000000000..6d1bcf3f86e
--- /dev/null
+++ b/Master/texmf-dist/source/latex/lh/ot2fonts.fdd
@@ -0,0 +1,682 @@
+% \iffalse meta-comment
+% ot2fonts.fdd
+% extraction and modification of cmfonts.fdd
+% (+concmath.dtx,slifonts.fdd,cmbr.fdd)
+% Part of LH fonts package v3.5(d)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% \fi
+% \CheckSum{131}
+%
+%\iffalse This is a META comment
+%
+% File `ot2fonts.fdd'.
+%
+%<OT2ccr, >\ProvidesFile{ot2ccr.fd}
+%<OT2cmdh, >\ProvidesFile{ot2cmdh.fd}
+%<OT2cmfib, >\ProvidesFile{ot2cmfib.fd}
+%<OT2cmfr, >\ProvidesFile{ot2cmfr.fd}
+%<OT2cmr&!OT2cmss>\ProvidesFile{ot2cmr.fd}
+%<OT2cmss&!OT2cmr>\ProvidesFile{ot2cmss.fd}
+%<OT2cmr&OT2cmss>\ProvidesPackage{lh-ot2}
+%<OT2cmtt, >\ProvidesFile{ot2cmtt.fd}
+%<OT2cmvtt, >\ProvidesFile{ot2cmvtt.fd}
+%<lcmss, >\ProvidesFile{ot2lcmss.fd}
+%<lcmtt, >\ProvidesFile{ot2lcmtt.fd}
+%<slimain, >\ProvidesFile{ot2sfonts.def}
+%<ot2cmbr, >\ProvidesFile{ot2cmbr.fd}
+%<ot2cmtl, >\ProvidesFile{ot2cmtl.fd}
+%<*driver, >
+ \ProvidesFile{ot2fonts.drv}
+%</driver, >
+ [2006/06/08 v0.0a OT2 Cyrillic font definitions]
+%
+%<*driver>
+\documentclass{ltxdoc}
+\GetFileInfo{ot2fonts.drv}
+\providecommand\dst{\expandafter{\normalfont\scshape docstrip}}
+\title{The file \texttt{ot2fonts.fdd} for use with
+ \LaTeXe.\thanks{This file has version
+ number \fileversion, dated \filedate.}}
+\date{\filedate}\author{Olga Lapko}
+\begin{document}
+\maketitle
+ \DocInput{ot2fonts.fdd}
+\end{document}
+%</driver>
+%
+%\fi
+%
+% \section{Introduction}
+%
+% This file contains the external font information needed to load
+% the LH fonts in old Cyrillic encoding (|OT2|).
+%
+% \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 \\
+% nowarn & produce |.fd| files that do not warn about substitutions\\
+% ori & make conservative |.fd| files\\
+% fd & produce a font definition file (actually no longer used)\\[2pt]
+% OT2ccr & make Concrete Roman (old encoding) \\
+% OT2cmdh & make Computer Modern Dunhill (old encoding)\\
+% OT2cmfib & make Computer Modern Fibonacci (old encoding)\\
+% OT2cmfr & make Computer Modern Funny (old encoding)\\
+% OT2cmr & make Computer Modern Roman (old encoding)\\
+% OT2cmss & make Computer Modern Sans (old encoding)\\
+% OT2cmtt & make Computer Modern Typewriter (old encoding)\\
+% OT2cmvtt & make Computer Modern Variable Typewriter (old encoding)\\[2pt]
+% slimain & generate \texttt{ot2sfonts.def} for slides\\
+% lccr & Concrete Roman slide sizes \\
+% lcmss & Computer Modern Sans slide sizes \\
+% lcmtt & Computer Modern Typewriter slide sizes \\[2pt]
+% ot2cmbr & CM bright font definition file \texttt{ot2cmbr.fd}\\
+% ot2cmtl & CM bright font definition file \texttt{ot2cmtl.fd}\\
+% \end{tabular}
+% \end{center}
+% A typical \texttt{docstrip} command file would then have entries like:
+% \begin{verbatim}
+%\generateFile{OT2cmr.fd}{t}{\from{cmfonts.fdd}{fd,OT2cmr}}
+%\end{verbatim}
+%
+%
+% \section{The font definition files for old Cyrillic encoding (\texttt{OT2})}
+%
+% \subsection{Computer Modern Roman (\texttt{OT2})}
+%
+% The package \texttt{lh-ot2} can be loaded without \texttt{fontenc}.
+% Here is declared font encoding and default font for this encoding.
+% To avoid mixing of WNCYR and LH fonts the default font redefined
+% to \texttt{wnr10}.
+% \begin{macrocode}
+%<*OT2cmr&OT2cmss>
+\DeclareFontEncoding{OT2}{}{}
+\DeclareFontSubstitution{OT2}{cmr}{m}{n}
+\@ifundefined{OT2/cmr/m/n/10}{}{%
+ \expandafter\font\csname OT2/cmr/m/n/10\endcsname=wnr10}
+%</OT2cmr&OT2cmss>
+% \end{macrocode}
+% \begin{macrocode}
+%<*OT2cmr>
+\DeclareFontFamily{OT2}{cmr}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{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{OT2}{cmr}{m}{sl}%
+ {%
+%<+ori> <5-8>sub*cmr/m/n%
+%<-ori> <5><6><7>wnsl8%
+ <8><9>gen*wnsl%
+ <10><10.95>wnsl10%
+ <12><14.4><17.28><20.74><24.88>wnsl12%
+ }{}
+\DeclareFontShape{OT2}{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{OT2}{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:
+% \begin{macrocode}
+%<+OT2cmr>% Warning: please note that the upright shape below is
+%<+OT2cmr>% used for the \pounds symbol of LaTeX. So this
+%<+OT2cmr>% font definition shouldn't be removed.
+%<+OT2cmr>%
+%<+ori>% If cmu below 10pt is not available we substitute
+%<+ori>% cmti as far as possible (sizes 7, 8, 9). This is
+%<+ori>% done because cmu 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{OT2}{cmr}{m}{ui}
+ {
+%<+ori> <7>subf*cmti7%
+%<+ori> <8>subf*cmti8%
+%<+ori> <9>subf*cmti9%
+%<+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%
+ }{}
+%%%%%%% bold series
+\DeclareFontShape{OT2}{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%
+ }{}
+%%%%%%%% bold extended series
+\DeclareFontShape{OT2}{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{OT2}{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{OT2}{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%
+ }{}
+% \end{macrocode}
+% \begin{macrocode}
+%<+OT2cmr>% Again this is necessary for a correct \pounds symbol in
+%<+OT2cmr>% the cmr fonts Hopefully the dc/ec font layout will take
+%<+OT2cmr>% over soon.
+%<+OT2cmr>%
+%<+OT2cmr>\DeclareFontShape{OT2}{cmr}{bx}{ui}
+%<-nowarn> {<->sub*cmr/m/ui}{}
+%<+nowarn> {<->ssub*cmr/m/ui}{}
+%</OT2cmr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Sans (\texttt{OT2})}
+%
+% Same game for the Sans family.
+% \begin{macrocode}
+%<*OT2cmss>
+\DeclareFontFamily{OT2}{cmss}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{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%
+ }{}
+%<+OT2cmss>% Font undefined, therefore substituted
+\DeclareFontShape{OT2}{cmss}{m}{it}
+%<-nowarn> {<->sub*cmss/m/sl}{}
+%<+nowarn> {<->ssub*cmss/m/sl}{}
+\DeclareFontShape{OT2}{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%
+ }{}
+%%%%%%% Font/shape undefined, therefore substituted
+\DeclareFontShape{OT2}{cmss}{m}{sc}
+ {<->sub*cmr/m/sc}{}
+%%%%%%% Font/shape undefined, therefore substituted
+\DeclareFontShape{OT2}{cmss}{m}{ui}
+ {<->sub*cmr/m/ui}{}
+%%%%%%%% semibold condensed series
+\DeclareFontShape{OT2}{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%
+ }{}
+
+%%%%%%%%% bold extended series
+\DeclareFontShape{OT2}{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%
+ }{}
+%%%%%%% Font/shape undefined, therefore substituted
+\DeclareFontShape{OT2}{cmss}{bx}{ui}
+ {<->sub*cmr/bx/ui}{}
+%</OT2cmss>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter (\texttt{OT2})}
+%
+% 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}
+%<*OT2cmtt>
+\DeclareFontFamily{OT2}{cmtt}{\hyphenchar \font\m@ne}
+\DeclareFontShape{OT2}{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*wntt%
+%<-ori> <5><6><7><8>wntt8<9>wntt9%
+ <10><10.95>wntt10%
+ <12><14.4><17.28><20.74><24.88>wntt12%
+ }{}
+%%%%%% make sure subst shapes are available
+\DeclareFontShape{OT2}{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{OT2}{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{OT2}{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{OT2}{cmtt}{m}{ui}
+%<-nowarn> {<->sub*cmtt/m/it}{}
+%<+nowarn> {<->ssub*cmtt/m/it}{}
+\DeclareFontShape{OT2}{cmtt}{bx}{n}
+%<-nowarn> {<->sub*cmtt/m/n}{}
+%<+nowarn> {<->ssub*cmtt/m/n}{}
+\DeclareFontShape{OT2}{cmtt}{bx}{it}
+%<-nowarn> {<->sub*cmtt/m/it}{}
+%<+nowarn> {<->ssub*cmtt/m/it}{}
+\DeclareFontShape{OT2}{cmtt}{bx}{ui}
+%<-nowarn> {<->sub*cmtt/m/it}{}
+%<+nowarn> {<->ssub*cmtt/m/it}{}
+%</OT2cmtt>
+% \end{macrocode}
+%
+%
+% \subsection{Computer Modern Variable Typewriter (\texttt{OT2})}
+%
+% The Computer Modern Variable Typewriter family is the
+% proportional spaced version of the Computer Modern Typewriter
+% family. It is implemented as a separate family to allow easy use
+% in normal text, including changes of shape/series etc if available.
+% This family also allows normal hyphenation.
+% \begin{macrocode}
+%<*OT2cmvtt>
+\DeclareFontFamily{OT2}{cmvtt}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmvtt}{m}{n}%
+ {%
+ <5><6><7><8><9><10><10.95>%
+ <12><14.4><17.28><20.74><24.88>wnvtt10%
+ }{}
+% \end{macrocode}
+% This font is probably not available to everybody as it is not
+% part of the standard distribution. One might find it in
+% \texttt{.../systems/knuth/local} on CTAN.
+% \begin{macrocode}
+\DeclareFontShape{OT2}{cmvtt}{m}{it}%
+ {%
+ <5><6><7><8><9><10><10.95>%
+ <12><14.4><17.28><20.74><24.88>wnvtti10%
+ }{}
+%</OT2cmvtt>
+% \end{macrocode}
+%
+%
+% \subsection{Computer Modern Funny (\texttt{OT2})}
+%
+% \begin{macrocode}
+%<*OT2cmfr>
+\DeclareFontFamily{OT2}{cmfr}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmfr}{m}{n}{%
+ <10>wnff10%
+ }{}
+\DeclareFontShape{OT2}{cmfr}{m}{it}{%
+ <10>wnfi10%
+ }{}
+%</OT2cmfr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Dunhill (\texttt{OT2})}
+%
+% \begin{macrocode}
+%<*OT2cmdh>
+\DeclareFontFamily{OT2}{cmdh}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmdh}{m}{n}{%
+ <10>wndunh10%
+ }{}
+%</OT2cmdh>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Fibonacci (\texttt{OT2})}
+%
+% \begin{macrocode}
+%<*OT2cmfib>
+\DeclareFontFamily{OT2}{cmfib}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmfib}{m}{n}{%
+ <8>wnfib8%
+ }{}
+%</OT2cmfib>
+% \end{macrocode}
+%
+% \subsection{Concrete Roman}
+%
+% Text of explanation borrowed from original \texttt{concmath.dtx}.
+%
+% Here are the standard font definitions for Concrete Roman,
+% including the \textit{italics}, \textsl{slanted}, and
+% \textsc{small-caps} variants, which are usually only available
+% in~10\,pt size. While it would be a trivial exercise to create a
+% full set of slanted fonts by taking the \texttt{ccr} parameter
+% files and setting the slant parameter to~$1/6$ in the
+% \texttt{ccsl} parameter files, we shall only use the sizes
+% provided in Knuth's official distribution. As for the italics
+% and small-caps versions, there is no way to generate appropriate
+% smaller sizes without extensive tuning and testing to derive new
+% parameter sets.
+%
+% \begin{macrocode}
+%<*OT2ccr>
+\DeclareFontFamily{OT2}{ccr}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{ccr}{m}{n}{%
+ <5><6><7><8><9>gen*wncr%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wncr10}{}
+\DeclareFontShape{OT2}{ccr}{m}{sl}{%
+ <5><6><7><8><9>wncsl9%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wncsl10}{}
+\DeclareFontShape{OT2}{ccr}{m}{it}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wncti10}{}
+\DeclareFontShape{OT2}{ccr}{m}{sc}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wnccsc10}{}
+% \end{macrocode}
+%
+% Next, here are the font substitutions for the bold series. Since
+% there is no bold series in Concrete, we will use the
+% corresponding Computer Modern fonts.
+% {\em Added substitution for |\fontseries b| font.}
+%
+% \begin{macrocode}
+%<+ori>\DeclareFontShape{OT2}{ccr}{b}{n}{<->ssub*cmr/b/n}{}
+%<+ori>\DeclareFontShape{OT2}{ccr}{bx}{n}{<->ssub*cmr/bx/n}{}
+%<+ori>\DeclareFontShape{OT2}{ccr}{bx}{sl}{<->ssub*cmr/bx/sl}{}
+%<+ori>\DeclareFontShape{OT2}{ccr}{bx}{it}{<->ssub*cmr/bx/it}{}
+%<-ori>\DeclareFontShape{OT2}{ccr}{b}{n}{%
+%<-ori> <5><6><7><8><9>%
+%<-ori> <10><10.95><12><14.4><17.28><20.74><24.88>wncb10}{}
+%<-ori>\DeclareFontShape{OT2}{ccr}{bx}{n}{%
+%<-ori> <5><6><7><8><9>gen*wncbx%
+%<-ori> <10><10.95><12><14.4><17.28><20.74><24.88>wncbx10}{}
+%<-ori>\DeclareFontShape{OT2}{ccr}{bx}{sl}{%
+%<-ori> <5><6><7><8><9>%
+%<-ori> <10><10.95><12><14.4><17.28><20.74><24.88>wncbxsl10}{}
+%<-ori>\DeclareFontShape{OT2}{ccr}{bx}{it}{%
+%<-ori> <5><6><7><8><9>%
+%<-ori> <10><10.95><12><14.4><17.28><20.74><24.88>wncbxti10}{}
+% \end{macrocode}
+%
+% Next, here are the font substitutions for the semibold series.
+% As we shall see below, the \texttt{concmath} package provides a
+% `\textsf{boldsans}' option which redefines |\bfdefault| and thus
+% turns all bold material into semibold condensed (which will then
+% be substituted by semibold condensed sans serif). Since some
+% people prefer to use semibold condensed Computer Modern Sans
+% Serif in combination with Concrete Roman, this unusual
+% substitution allows to switch between both choices by selecting
+% or omitting a package option.
+%
+% \begin{macrocode}
+\DeclareFontShape{OT2}{ccr}{sbc}{n} {<->ssub*cmss/sbc/n}{}
+\DeclareFontShape{OT2}{ccr}{sbc}{sl}{<->ssub*cmss/sbc/n}{}
+\DeclareFontShape{OT2}{ccr}{sbc}{it}{<->ssub*cmss/sbc/n}{}
+% \end{macrocode}
+%
+% Finally, here is the font shape declaration for the special
+% purpose condensed slanted font that was used in \textit{Concrete
+% Mathematics} for so-called `graffiti'. The \texttt{concmath}
+% package does not bother to provide macros for such kinds of
+% marginal notes, thus users who want to use this feature will have
+% to develop their own.
+%
+% \begin{macrocode}
+\DeclareFontShape{OT2}{ccr}{c}{sl}{<9>wncslc9}{}
+%</OT2ccr>
+% \end{macrocode}
+%
+% \section{The font definition files for slides}
+%
+% \subsection{Concrete Roman}
+%
+% \begin{macrocode}
+%<*lccr>
+\DeclareFontFamily{OT2}{lccr}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{lccr}{m}{sc}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>wnccsc10%
+ }{}
+\DeclareFontShape{OT2}{lccr}{m}{sl}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>wncslc9%
+ }{}
+\DeclareFontShape{OT2}{lccr}{m}{n}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>wncr8%
+ }{}
+\DeclareFontShape{OT2}{lccr}{m}{In}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>iwncr8%
+ }{}
+%</lccr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Sans}
+%
+% \begin{macrocode}
+%<*lcmss>
+ \DeclareFontFamily{OT2}{lcmss}{\hyphenchar\font45 }
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmss}{m}{n}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ lwnss8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmss}{m}{In}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ ilwnss8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmss}{m}{sl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ lwnssi8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmss}{m}{Isl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ ilwnssi8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmss}{m}{it}{%
+ <->sub*lcmss/m/sl}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmss}{m}{Iit}{%
+ <->sub*lcmss/m/Isl}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmss}{bx}{n}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ lwnssb8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmss}{bx}{In}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ ilwnssb8%
+ }{}
+% \end{macrocode}
+%
+% There are extra substitutions for the shape |ui| which are needed
+% for |\pounds| to not come out as a \$ sign (mostly).
+% \begin{macrocode}
+\DeclareFontShape{OT2}{lcmss}{m}{ui}{%
+ <->sub*cmr/m/ui}{}
+\DeclareFontShape{OT2}{lcmss}{bx}{ui}{%
+ <->sub*cmr/m/ui}{}
+%</lcmss>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter}
+%
+% \begin{macrocode}
+%<*lcmtt>
+ \DeclareFontFamily{OT2}{lcmtt}{\hyphenchar\font\m@ne}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmtt}{m}{n}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ wntt8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmtt}{m}{In}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ iwntt8%
+ }{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \DeclareFontShape{OT2}{lcmtt}{m}{it}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+ wnitt10%
+ }{}
+% \end{macrocode}
+% There are extra substitutions for the shape |ui| which are needed
+% for |\pounds| to not come out as a \$ sign (mostly).
+% \begin{macrocode}
+\DeclareFontShape{OT2}{lcmtt}{m}{ui}{%
+ <->sub*cmtt/m/it}{}
+\DeclareFontShape{OT2}{lcmtt}{bx}{ui}{%
+ <->sub*cmtt/m/it}{}
+%</lcmtt>
+% \end{macrocode}
+%
+% \section{Setting defaults}
+%
+% The following statements go into the file \texttt{ot2sfonts.def}
+% which plays a r\^ole similar to \texttt{fontdef.ltx}. Thus, you may
+% want to produce your own local variant of it if you intend to use
+% different fonts in your slides.
+% \begin{macrocode}
+%<*slimain>
+\DeclareErrorFont{OT2}{lcmss}{m}{n}{19.907}
+\DeclareFontSubstitution{OT2}{lcmss}{m}{n}
+\input ot2lcmss.fd
+%</slimain>
+% \end{macrocode}
+%
+% \section{CM Bright fonts}
+%
+% Borrowed code and with adaptations from file \texttt{cmbr.fdd}
+%
+% \subsection{CM Bright, OT2 encoding}
+%
+% \begin{macrocode}
+%<*ot2cmbr>
+\DeclareFontFamily{OT2}{cmbr}{\hyphenchar\font45}
+\DeclareFontShape{OT2}{cmbr}{m}{n}{%
+<5><6><7><8>wnbr8%
+<9>wnbr9%
+<10><10.95><12><14.4>wnbr10%
+<17.28><20.74><24.88><29.86><35.83>wnbr17%
+}{}
+\DeclareFontShape{OT2}{cmbr}{m}{sl}{%
+<5><6><7><8>wnbrsl8%
+<9>wnbrsl9%
+<10><10.95><12><14.4>wnbrsl10%
+<17.28><20.74><24.88><29.86><35.83>wnbrsl17%
+}{}
+\DeclareFontShape{OT2}{cmbr}{m}{it}{%
+<->ssub*cmbr/m/sl%
+}{}
+\DeclareFontShape{OT2}{cmbr}{b}{n}{%
+<->ssub*cmbr/bx/n%
+}{}
+\DeclareFontShape{OT2}{cmbr}{bx}{n}{%
+<-9>sub*cmbr/m/n%
+<9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>wnbrbx10%
+}{}
+%</ot2cmbr>
+% \end{macrocode}
+%
+% \subsection{CM Typewriter Light, OT2 encoding}
+%
+% \begin{macrocode}
+%<*ot2cmtl>
+\DeclareFontFamily{OT2}{cmtl}{\hyphenchar\font\m@ne}
+\DeclareFontShape{OT2}{cmtl}{m}{n}{%
+<5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>wntl10%
+}{}
+\DeclareFontShape{OT2}{cmtl}{m}{sl}{%
+<5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>wnsltl10%
+}{}
+\DeclareFontShape{OT2}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{}
+%</ot2cmtl>
+% \end{macrocode}
+%
+% The next line goes into all files and in addition prevents \dst{}
+% from adding any further code from the main source file (such as a
+% character table.
+% \begin{macrocode}
+\endinput
+% \end{macrocode}
+%
+% \Finale
+%
+%% \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 \~}
diff --git a/Master/texmf-dist/source/latex/lh/ot2fonts.ins b/Master/texmf-dist/source/latex/lh/ot2fonts.ins
new file mode 100644
index 00000000000..ca99a510482
--- /dev/null
+++ b/Master/texmf-dist/source/latex/lh/ot2fonts.ins
@@ -0,0 +1,57 @@
+% ot2fonts.ins
+% extracted and modified cmfonts.ins
+% (+slides.ins,cmbr.ins)
+% Part of LH fonts package v3.5(d)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+
+\input docstrip
+\usedir{tex/latex/lhfonts}
+
+\preamble
+
+This is a generated file.
+
+This file is part of lhfonts package
+Version 3.5 // Patchlevel=2
+
+\endpreamble
+
+\keepsilent
+
+\generate{%\file{ot2cmss.fd}{\from{ot2fonts.fdd}{OT2cmss}}
+ %\file{ot2cmr.fd}{\from{ot2fonts.fdd}{OT2cmr}}
+ \file{lh-ot2.sty}{\from{ot2fonts.fdd}{OT2cmr,OT2cmss}}
+ \file{ot2cmtt.fd}{\from{ot2fonts.fdd}{OT2cmtt,nowarn}}
+ \file{ot2cmvtt.fd}{\from{ot2fonts.fdd}{OT2cmvtt}}
+ \file{ot2cmfib.fd}{\from{ot2fonts.fdd}{OT2cmfib}}
+ \file{ot2cmfr.fd}{\from{ot2fonts.fdd}{OT2cmfr}}
+ \file{ot2cmdh.fd}{\from{ot2fonts.fdd}{OT2cmdh}}}
+
+\generate{\file{ot2ccr.fd}{\from{ot2fonts.fdd}{OT2ccr,ori}}
+ \file{lh-ot2ccr.sty} {\from{ot2fonts.fdd}{OT2ccr,ori}}
+ \file{lh-ot2xccr.sty}{\from{ot2fonts.fdd}{OT2ccr}}}
+
+\generate{\file{ot2lcmss.fd}{\from{ot2fonts.fdd}{lcmss,fd}}
+ \file{ot2lcmtt.fd}{\from{ot2fonts.fdd}{lcmtt,fd}}}
+
+\generate{\file{ot2cmbr.fd}{\from{ot2fonts.fdd}{ot2cmbr}}
+ \file{ot2cmtl.fd}{\from{ot2fonts.fdd}{ot2cmtl}}}
+
+\ifToplevel{
+\Msg{***********************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* files into a directory searched by TeX:}
+\Msg{*}
+\Msg{* \space\space All *.fd}
+\Msg{*}
+\Msg{* To produce the documentation run the files ending with}
+\Msg{* `.fdd' through LaTeX.}
+\Msg{*}
+\Msg{* Happy TeXing}
+\Msg{***********************************************************}
+}
+
+\endbatchfile
+
diff --git a/Master/texmf-dist/source/latex/lh/t2ccfonts.fdd b/Master/texmf-dist/source/latex/lh/t2ccfonts.fdd
new file mode 100644
index 00000000000..0885345d4f8
--- /dev/null
+++ b/Master/texmf-dist/source/latex/lh/t2ccfonts.fdd
@@ -0,0 +1,309 @@
+% \iffalse meta-comment
+% t2ccfonts.fdd
+% extraction and modification of cc.fdd
+% (follows idea of t2lhfnt.fdd)
+% Part of LH fonts package v3.5(d)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% \fi
+%\CheckSum{58}
+% \iffalse meta-comment
+%
+%<T2Accr&ec, >\ProvidesPackage{lh-t2accr}
+%<T2Bccr&ec, >\ProvidesPackage{lh-t2bccr}
+%<T2Cccr&ec, >\ProvidesPackage{lh-t2cccr}
+%<T2Dccr&ec, >\ProvidesPackage{lh-t2dccr}
+%<X2ccr&ec, >\ProvidesPackage{lh-x2ccr}
+%<T2Accr&!ec, >\ProvidesPackage{lh-t2axccr}
+%<T2Bccr&!ec, >\ProvidesPackage{lh-t2bxccr}
+%<T2Cccr&!ec, >\ProvidesPackage{lh-t2cxccr}
+%<T2Dccr&!ec, >\ProvidesPackage{lh-t2dxccr}
+%<X2ccr&!ec, >\ProvidesPackage{lh-x2xccr}
+%<*driver>
+ \ProvidesFile{t2ccfonts.drv}
+%</driver>
+ [2006/06/08 v0.0a Cyrillic font definitions]
+%
+%<*driver>
+\documentclass[11pt]{ltxdoc}
+\setcounter{StandardModuleDepth}{1}
+\CodelineNumbered
+\GetFileInfo{t2ccfonts.drv}
+\begin{document}
+ \DocInput{t2ccfonts.fdd}
+\end{document}
+%</driver>
+%
+%\fi
+%
+% \title{The file \texttt{t2ccfonts.fdd} for use with
+% \LaTeX}
+% \date{(\fileversion{} -- \filedate)}
+% \author{Olga Lapko}
+% \maketitle
+%
+% \section{Introduction}
+%
+% This file contains the external font information needed to load the
+% Concrete fonts with T2* and X2 encoding into \LaTeX.
+% To avoid possible conflict and to follow copyright terms here are created
+% packages---style files instead of font definition files.
+%
+% The Concrete fonts do not contain a boldface font shape.
+% We set up the following substitutions:
+% \begin{itemize}
+% \item fontshape \texttt{bx} $\Rightarrow$ CM Roman boldface extended
+% \item fontshape \texttt{sbc} $\Rightarrow$ CM Sans Serif semibold condensed
+% \end{itemize}
+% \emph{Note.} extended style files (ended by \texttt{xccr}) use boldface fonts
+% with ``concrete'' forms of letters CYRD, CYRZH, CYRL, CYRK, CYRYA (to follow
+% letter shapes of \texttt{ccr} font).
+%
+% \StopEventually{}
+%
+% \section{The font definition files}
+%
+% \subsection{The Cyrillic (T2) Concrete text fonts}
+% Here the `graffiti' font |ccslc9| is included. To avoid conflicts
+% with standard Cyrillic fd-files here is created sty-files.
+%
+% \subsection{Computer Modern Concrete, T2A encoding}
+%
+% \begin{macrocode}
+%<*T2Accr>
+\DeclareFontFamily{T2A}{ccr}{}
+\DeclareFontShape{T2A}{ccr}{m}{n}{%
+ <5><6><7><8><9><10>gen*laorm%
+ <10.95><12><14.4><17.28><20.74><24.88>laorm10%
+}{}
+\DeclareFontShape{T2A}{ccr}{m}{sl}{%
+ <5><6><7><8><9><10>gen*laosl%
+ <10.95><12><14.4><17.28><20.74><24.88>laosl10%
+}{}
+\DeclareFontShape{T2A}{ccr}{m}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>laoti10%
+}{}
+\DeclareFontShape{T2A}{ccr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>laocc10%
+}{}
+%<*ec>
+\DeclareFontShape{T2A}{ccr}{b}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/b/n%
+}{}
+\DeclareFontShape{T2A}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/n%
+}{}
+\DeclareFontShape{T2A}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/sl%
+}{}
+\DeclareFontShape{T2A}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/it%
+}{}
+%</ec>
+%<*!ec>
+\DeclareFontShape{T2A}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>laob10%
+}{}
+\DeclareFontShape{T2A}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10>gen*laobx%
+ <10.95><12><14.4><17.28><20.74><24.88>laobx10%
+}{}
+\DeclareFontShape{T2A}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>laobxsl10%
+}{}
+\DeclareFontShape{T2A}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>laobxti10%
+}{}
+%</!ec>
+\DeclareFontShape{T2A}{ccr}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssubf*lassdc10%
+}{}
+\DeclareFontShape{T2A}{ccr}{c}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>laoslc9%
+}{}
+%</T2Accr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Concrete, T2B encoding}
+%
+% \begin{macrocode}
+%<*T2Bccr>
+\DeclareFontFamily{T2B}{ccr}{}
+\DeclareFontShape{T2B}{ccr}{m}{n}{%
+ <5><6><7><8><9><10>gen*lborm%
+ <10.95><12><14.4><17.28><20.74><24.88>lborm10%
+}{}
+\DeclareFontShape{T2B}{ccr}{m}{sl}{%
+ <5><6><7><8><9><10>gen*lbosl%
+ <10.95><12><14.4><17.28><20.74><24.88>lbosl10%
+}{}
+\DeclareFontShape{T2B}{ccr}{m}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lboti10%
+}{}
+\DeclareFontShape{T2B}{ccr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lbocc10%
+}{}
+%<*ec>
+\DeclareFontShape{T2B}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/n%
+}{}
+\DeclareFontShape{T2B}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/sl%
+}{}
+\DeclareFontShape{T2B}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/it%
+}{}
+%</ec>
+%<*!ec>
+\DeclareFontShape{T2B}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lbob10%
+}{}
+\DeclareFontShape{T2B}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10>gen*lbobx%
+ <10.95><12><14.4><17.28><20.74><24.88>lbobx10%
+}{}
+\DeclareFontShape{T2B}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lbobxsl10%
+}{}
+\DeclareFontShape{T2B}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lbobxti10%
+}{}
+%</!ec>
+\DeclareFontShape{T2B}{ccr}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssubf*lbssdc10%
+}{}
+\DeclareFontShape{T2B}{ccr}{c}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lboslc9%
+}{}
+%</T2Bccr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Concrete, T2C encoding}
+%
+% \begin{macrocode}
+%<*T2Cccr>
+\DeclareFontFamily{T2C}{ccr}{}
+\DeclareFontShape{T2C}{ccr}{m}{n}{%
+ <5><6><7><8><9><10>gen*lcorm%
+ <10.95><12><14.4><17.28><20.74><24.88>lcorm10%
+}{}
+\DeclareFontShape{T2C}{ccr}{m}{sl}{%
+ <5><6><7><8><9><10>gen*lcosl%
+ <10.95><12><14.4><17.28><20.74><24.88>lcosl10%
+}{}
+\DeclareFontShape{T2C}{ccr}{m}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lcoti10%
+}{}
+\DeclareFontShape{T2C}{ccr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lcocc10%
+}{}
+%<*ec>
+\DeclareFontShape{T2C}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/n%
+}{}
+\DeclareFontShape{T2C}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/sl%
+}{}
+\DeclareFontShape{T2C}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/it%
+}{}
+%</ec>
+%<*!ec>
+\DeclareFontShape{T2C}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lcob10%
+}{}
+\DeclareFontShape{T2C}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10>gen*lcobx%
+ <10.95><12><14.4><17.28><20.74><24.88>lcobx10%
+}{}
+\DeclareFontShape{T2C}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lcobxsl10%
+}{}
+\DeclareFontShape{T2C}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lcobxti10%
+}{}
+%</!ec>
+\DeclareFontShape{T2C}{ccr}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssubf*lcssdc10%
+}{}
+\DeclareFontShape{T2C}{ccr}{c}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lcoslc9%
+}{}
+%</T2Cccr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Concrete, X2 encoding}
+%
+% \begin{macrocode}
+%<*X2ccr>
+\DeclareFontFamily{X2}{ccr}{}
+\DeclareFontShape{X2}{ccr}{m}{n}{%
+ <5><6><7><8><9><10>gen*rxorm%
+ <10.95><12><14.4><17.28><20.74><24.88>rxorm10%
+}{}
+\DeclareFontShape{X2}{ccr}{m}{sl}{%
+ <5><6><7><8><9><10>gen*rxosl%
+ <10.95><12><14.4><17.28><20.74><24.88>rxosl10%
+}{}
+\DeclareFontShape{X2}{ccr}{m}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>rxoti10%
+}{}
+\DeclareFontShape{X2}{ccr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>rxocc10%
+}{}
+%<*ec>
+\DeclareFontShape{X2}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/n%
+}{}
+\DeclareFontShape{X2}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/sl%
+}{}
+\DeclareFontShape{X2}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/it%
+}{}
+%</ec>
+%<*!ec>
+\DeclareFontShape{X2}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>rxob10%
+}{}
+\DeclareFontShape{X2}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10>gen*rxobx%
+ <10.95><12><14.4><17.28><20.74><24.88>rxobx10%
+}{}
+\DeclareFontShape{X2}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>rxobxsl10%
+}{}
+\DeclareFontShape{X2}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>rxobxti10%
+}{}
+%</!ec>
+\DeclareFontShape{X2}{ccr}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssubf*rxssdc10%
+}{}
+\DeclareFontShape{X2}{ccr}{c}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>rxoslc9%
+}{}
+%</X2ccr>
+% \end{macrocode}
+%
+% The next line goes into all files and in addition prevents {\sc docstrip}
+% from adding the character table to all modules.
+% \begin{macrocode}
+\endinput
+% \end{macrocode}
+% \Finale
+%
+%% \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 \~}
diff --git a/Master/texmf-dist/source/latex/lh/t2ccfonts.ins b/Master/texmf-dist/source/latex/lh/t2ccfonts.ins
new file mode 100644
index 00000000000..8167e40c62f
--- /dev/null
+++ b/Master/texmf-dist/source/latex/lh/t2ccfonts.ins
@@ -0,0 +1,33 @@
+% t2ccfonts.ins
+% extracted and modified ccfonts.ins
+% Part of LH fonts package v3.5(d)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+
+\input docstrip
+\usedir{tex/latex/lhfonts}
+
+\preamble
+
+This is a generated file.
+
+This file is part of lhfonts package
+Version 3.5 // Patchlevel=2
+
+\endpreamble
+
+\keepsilent
+
+\generate{%
+ \file {lh-x2ccr.sty}{\from{t2ccfonts.fdd}{X2ccr,ec}}
+ \file{lh-t2accr.sty}{\from{t2ccfonts.fdd}{T2Accr,ec}}
+ \file{lh-t2bccr.sty}{\from{t2ccfonts.fdd}{T2Bccr,ec}}
+ \file{lh-t2cccr.sty}{\from{t2ccfonts.fdd}{T2Cccr,ec}}
+ \file {lh-x2xccr.sty}{\from{t2ccfonts.fdd}{X2ccr}}
+ \file{lh-t2axccr.sty}{\from{t2ccfonts.fdd}{T2Accr}}
+ \file{lh-t2bxccr.sty}{\from{t2ccfonts.fdd}{T2Bccr}}
+ \file{lh-t2cxccr.sty}{\from{t2ccfonts.fdd}{T2Cccr}}
+ }
+
+\endbatchfile
+