http://snapshot.debian.org/package/texlive-extra/
Raw File
Tip revision: 010e5e2b76ef7ff02c65b5fe5604963401393779 authored by Norbert Preining on 12 January 2006, 16:30:22 UTC
Synthetic revision for Debian source package texlive-extra version 2005-1
Tip revision: 010e5e2
lo1enc.def
%% 
%% This is file `lo1enc.def'.
%% Copyright (C) 1996,1997,1998,1999 Bernd Raichle.
%%
%% -----------------------------------------------------------------
%% IMPORTANT NOTICE:
%%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN
%% archives in directory macros/latex/base/lppl.txt; either
%% version 1 of the License, or any later version.
%% -----------------------------------------------------------------
%%
%% CHANGES:
%% 1997/01/14 0.9b
%%    Formerly the \charsubdef assignments were done in a separate
%%    file loaded before all \DeclareMath... declarations.  Because
%%    this file was an almost exact copy of `LO1enc.def' I have
%%    merged both files.
%%    (Conceptually the separation in two files is the cleaner
%%    solution but to do this for all possible MLTeX enhanced font
%%    encodings we have to include the font encoding name into this
%%    file's name. In practice a single file is simpler to maintain
%%    and the additions are very short.)
%% 1997/09/03 0.9c
%% 1998/10/22 0.9d
%%    Updated to `ot1enc.def' of <1998/06/01>: removed \aa, \AA, \SS.
%% 1998/11/17 0.9e
%%    Only final release changes.
%%    Added new definition of \sh@ft from `plain.tex' 3.1415926
%%    as \loONEsh@ft because the type of its argument has
%%    changed from an integer to a length;
%%    adapted the definitions of \b and \d accordingly.
%% 1998/12/21 0.9f
%%    Removed warning \message.
%% 1999/03/08 0.9g
%%    Included missing macro definition of \(loONE)getf@ctor
%%    used for the accent macros \d and \b.
%%    Changed licensing conditions to LPPL.
%% 1999/03/09 0.9h
%%    Changed `fontenc' to `mltex' in \PackageWarning*.
%%
%% ------------------------------------------------------------
%%
%\NeedsTeXFormat{LaTeX2e}[1994/12/01] % New \DeclareText...!
\NeedsTeXFormat{LaTeX2e}[1996/12/01] % Need mono-case file names + \hb@xt@!
%
\ProvidesFile{lo1enc.def}[1999/03/09 v0.9h %
            MLTeX/LaTeX fontenc definition: mLtex's Ot1 (br)]
%
\@ifundefined{DeclareFontDefinitionEncodingAlias}{%
  \input{mlltxchg.def}}{}
\@ifundefined{DeclareFontDefinitionEncodingAlias}{%
  \@latex@error{File `mlltxchg.def' seems to be corrupted}%
     {File `mlltxchg.def' has to define the new declaration
      \noexpand\DeclareFontDefinitionEncodingAlias which is
      not the case}%
  }{}
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% ===== BEGIN -- OT1enc.def:
%%
%% The following declarations are copied from
%% file `OT1enc.def' resp. `ot1enc.def'
%% replacing "OT1" by "LO1":
%% 
\DeclareFontEncoding{LO1}{}{}
%
% Make LaTeX read OT1*.fd files for encoding LO1:
\DeclareFontDefinitionEncodingAlias{LO1}{OT1}
%
\DeclareTextAccent{\"}{LO1}{127}
\DeclareTextAccent{\'}{LO1}{19}
\DeclareTextAccent{\.}{LO1}{95}
\DeclareTextAccent{\=}{LO1}{22}
\DeclareTextAccent{\^}{LO1}{94}
\DeclareTextAccent{\`}{LO1}{18}
\DeclareTextAccent{\~}{LO1}{126}
\DeclareTextAccent{\H}{LO1}{125}
\DeclareTextAccent{\u}{LO1}{21}
\DeclareTextAccent{\v}{LO1}{20}
\DeclareTextAccent{\r}{LO1}{23}
%% from `plain.tex' upto 3.151592 and LaTeX <1998/06/01>:
%\def\sh@ft#1{\dimen@.00#1ex\multiply\dimen@\fontdimen1\font
%  \kern-.0156\dimen@} % compensate for slant in lowered accents
%% from `plain.tex' 3.1415926 (with slightly changes):
\begingroup \catcode`P=12 \catcode`T=12 \lccode`P=`p \lccode`T=`t
\lowercase{\endgroup \def\loONEgetf@ctor#1PT}{#1}%
\def\loONEsh@ft#1{\dimen@#1%
  \kern\expandafter\loONEgetf@ctor\the\fontdimen1\font
  \dimen@} % kern by #1 times the current slant
\DeclareTextCommand{\b}{LO1}[1]%    \sh@ft{29}
   {{\o@lign{\relax#1\crcr\hidewidth\loONEsh@ft{-3ex}%
     \vbox to.2ex{\hbox{\char22}\vss}\hidewidth}}}
\DeclareTextCommand{\c}{LO1}[1]
   {\leavevmode\setbox\z@\hbox{#1}\ifdim\ht\z@=1ex\accent24 #1%
    \else{\ooalign{\unhbox\z@\crcr\hidewidth\char24\hidewidth}}\fi}
\DeclareTextCommand{\d}{LO1}[1]%    \sh@ft{10}
   {{\o@lign{\relax#1\crcr\hidewidth\loONEsh@ft{-1ex}.\hidewidth}}}
\DeclareTextSymbol{\AE}{LO1}{29}
\DeclareTextSymbol{\OE}{LO1}{30}
\DeclareTextSymbol{\O}{LO1}{31}
\DeclareTextSymbol{\ae}{LO1}{26}
\DeclareTextSymbol{\i}{LO1}{16}
\DeclareTextSymbol{\j}{LO1}{17}
\DeclareTextSymbol{\oe}{LO1}{27}
\DeclareTextSymbol{\o}{LO1}{28}
\DeclareTextSymbol{\ss}{LO1}{25}
\DeclareTextSymbol{\textemdash}{LO1}{124}
\DeclareTextSymbol{\textendash}{LO1}{123}
\DeclareTextSymbol{\textexclamdown}{LO1}{60}
\DeclareTextSymbol{\textquestiondown}{LO1}{62}
\DeclareTextSymbol{\textquotedblleft}{LO1}{92}
\DeclareTextSymbol{\textquotedblright}{LO1}{`\"}
\DeclareTextSymbol{\textquoteleft}{LO1}{`\`}
\DeclareTextSymbol{\textquoteright}{LO1}{`\'}
%\DeclareTextCommand{\aa}{LO1}
%   {{\accent23a}}
%-%%--> \newcommand{\aa}{\r a}
\DeclareTextCommand{\L}{LO1}
   {\leavevmode\setbox\z@\hbox{L}\hb@xt@\wd\z@{\hss\@xxxii L}}
\DeclareTextCommand{\l}{LO1}
   {{\@xxxii l}}
%\DeclareTextCommand{\AA}{LO1}
%   {\leavevmode\setbox\z@\hbox{h}\dimen@\ht\z@\advance\dimen@-1ex%
%    \rlap{\raise.67\dimen@\hbox{\char23}}A}
%-%%--> \newcommand{\AA}{\r A}
%\DeclareTextCommand{\SS}{OT1}
%   {SS}
%-%%--> only declared in `t1enc.def' for T1
\DeclareTextCommand{\textdollar}{LO1}{{%
   \ifdim \fontdimen\@ne\font >\z@
      \slshape
   \else
      \upshape
   \fi
   \char`\$}}
\DeclareTextCommand{\textsterling}{LO1}{{%
   \ifdim \fontdimen\@ne\font >\z@
      \itshape
   \else
      \fontshape{ui}\selectfont
   \fi
   \char`\$}}
%%
%% ===== END -- OT1enc.def.
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% ===== BEGIN -- MLTeX specific definitions:
%%
%% %%%%%%%%%% 1) MLTeX?
%%
%% Exists \charsubdef, i.e. are we using MLTeX?
%% (The group construction keeps \charsubdef undefined.)
%%
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname charsubdef\endcsname\relax
  \PackageWarningNoLine{mltex}%
    {Encoding `LO1' assumes the use of MLTeX,\MessageBreak
     but this TeX does not have the MLTeX extensions.\MessageBreak
     I will proceed as if `LO1' are equal to `OT1'}%
  \expandafter\endinput
\fi
%%
%% %%%%%%%%%% 2) Additional declarations:
%%
%% Now declare
%%  - all character substitution definitions using \charsubdef
%%    (if not yet done)
%%  - all additional font encoding definitions
%%
%% ========== original MLTeX file "compatible.tex":
%%
%% \i \j \aa                          -- OT1enc.def
%% \' \` \v \u \= \^ \. \H \~ \" \c   -- OT1enc.def
%% \^^_ \^^S \^^D                     -- removed
%%
%%
%% ========== original MLTeX file "extdef.tex":
%%
%% \aa \AA \ae \AE \oe \OE \o \O \ss  -- OT1enc.def
%% copyright sterling ^^E             -- removed
%%
%% \catcode, \lccode, \uccode assignments are not necessary
%%                            or are done in `inputenc'.
%%
%% \charsubdef assignments are done only if not yet done
%%
%%
%% `LO1enc.def' already loaded once, i.e. \charsubdef
%% declarations already done?  (Exists \@@charsubdef?)
%%
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname @@charsubdef\endcsname\relax
\newcommand{\ml@DCT}[3]{%
  % (a) assign \charsubdef using LO1/OT1 accent glyph codes
  \global\charsubdef #3=%
    % accent glyph:
         \ifnum`#1=`\`18 %
    \else\ifnum`#1=`\'19 %
    \else\ifnum`#1=`\^94 %
    \else\ifnum`#1=`\"127 %
    \else\ifnum`#1=`\~126 %
    \else\ifnum`#1=`\v20 %
    \else\ifnum`#1=`\u21 %
    \else\ifnum`#1=`\r23 %
    \else\ifnum`#1=`\c24 %
    \else\ifnum`#1=`\.95 %
    \else\ifnum`#1=`\H125 %
    \else 256 \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
    % base character glyph:
         \ifx#2\i16%
    \else\ifnum`#2=`\i16%
    \else `#2\fi\fi\relax
  % (b) assign \lccode, if \lccode = 0
  % (necessary for hyphenation!)
  \ifnum\lccode#3>\z@
  \else
    \begingroup \count@=#3\relax
      % majuscule: 128-159 and 192-223
      % minuscule: 160-191 and 224-255
      % delta: +/- 32:
      \ifnum\count@<224
        \ifnum\count@>191
          \advance\count@ 32\relax
        \else \ifnum\count@<160
          \advance\count@ 32\relax
        \fi\fi
      \fi
      \def\x##1{\endgroup \lccode#3=##1\relax}%
    \expandafter\x\expandafter{\number\count@}%
  \fi
  % (c) \DeclareTextComposite for font encoding LO1
  \DeclareTextComposite{#1}{LO1}{#2}{#3}}
\else
\newcommand{\ml@DCT}[3]{%
  % (a) assign \lccode, if \lccode = 0
  % (necessary for hyphenation!)
  \ifnum\lccode#3>\z@
  \else
    \begingroup \count@=#3\relax
      % majuscule: 128-159 and 192-223
      % minuscule: 160-191 and 224-255
      % delta: +/- 32:
      \ifnum\count@<224
        \ifnum\count@>191
          \advance\count@ 32\relax
        \else \ifnum\count@<160
          \advance\count@ 32\relax
        \fi\fi
      \fi
      \def\x##1{\endgroup \lccode#3=##1\relax}%
    \expandafter\x\expandafter{\number\count@}%
  \fi
  % (b) \DeclareTextComposite for font encoding LO1
  \DeclareTextComposite{#1}{LO1}{#2}{#3}}
\fi
%
%
% ---------- `a 'a ^a ~a "a \u{a} \r{a}
%
\ml@DCT{\`}{A}{192}
\ml@DCT{\'}{A}{193}
\ml@DCT{\^}{A}{194}
\ml@DCT{\~}{A}{195}
\ml@DCT{\"}{A}{196}
\ml@DCT{\`}{a}{224}
\ml@DCT{\'}{a}{225}
\ml@DCT{\^}{a}{226}
\ml@DCT{\~}{a}{227}
\ml@DCT{\"}{a}{228}
%
\ml@DCT{\u}{A}{128}
\ml@DCT{\u}{a}{160}
\ml@DCT{\r}{A}{197}
\ml@DCT{\r}{a}{229}
%
% ---------- \c{c} 'c \v{c}
%
\ml@DCT{\c}{C}{199}
\ml@DCT{\c}{c}{231}
%
\ml@DCT{\'}{C}{130}
\ml@DCT{\v}{C}{131}
\ml@DCT{\'}{c}{162}
\ml@DCT{\v}{c}{163}
%
% ---------- \v{D}  (\v{d} = d'!)
%
\ml@DCT{\v}{D}{132}
%
% ---------- `e 'e ^e "e \v{e}
%
\ml@DCT{\`}{E}{200}
\ml@DCT{\'}{E}{201}
\ml@DCT{\^}{E}{202}
\ml@DCT{\"}{E}{203}
\ml@DCT{\`}{e}{232}
\ml@DCT{\'}{e}{233}
\ml@DCT{\^}{e}{234}
\ml@DCT{\"}{e}{235}
%
\ml@DCT{\v}{E}{133}
\ml@DCT{\v}{e}{165}
%
% ---------- \u{g}
%
\ml@DCT{\u}{G}{135}
\ml@DCT{\u}{g}{167}
%
% ---------- `i 'i ^i "i .i
%
\ml@DCT{\`}{I}{204}
\ml@DCT{\'}{I}{205}
\ml@DCT{\^}{I}{206}
\ml@DCT{\"}{I}{207}
\ml@DCT{\`}{i}{236}
\ml@DCT{\`}{\i}{236}
\ml@DCT{\'}{i}{237}
\ml@DCT{\'}{\i}{237}
\ml@DCT{\^}{i}{238}
\ml@DCT{\^}{\i}{238}
\ml@DCT{\"}{i}{239}
\ml@DCT{\"}{\i}{239}
%
\ml@DCT{\.}{I}{157}
\DeclareTextComposite{\.}{LO1}{i}{`\i}
\DeclareTextComposite{\.}{LO1}{\i}{`\i}
%
% ---------- (\v{L} \v{l} => L' l'!)
%
% ---------- ~n 'n \v{n}
%
\ml@DCT{\~}{N}{209}
\ml@DCT{\~}{n}{241}
%
\ml@DCT{\'}{N}{139}
\ml@DCT{\v}{N}{140}
\ml@DCT{\'}{n}{171}
\ml@DCT{\v}{n}{172}
%
% ---------- `o 'o ^o ~o "o \H{o}
%
\ml@DCT{\`}{O}{210}
\ml@DCT{\'}{O}{211}
\ml@DCT{\^}{O}{212}
\ml@DCT{\~}{O}{213}
\ml@DCT{\"}{O}{214}
\ml@DCT{\`}{o}{242}
\ml@DCT{\'}{o}{243}
\ml@DCT{\^}{o}{244}
\ml@DCT{\~}{o}{245}
\ml@DCT{\"}{o}{246}
%
\ml@DCT{\H}{O}{142}
\ml@DCT{\H}{O}{174}
%
% ---------- 'r \v{r}
%
\ml@DCT{\'}{R}{143}
\ml@DCT{\v}{R}{144}
\ml@DCT{\'}{r}{175}
\ml@DCT{\v}{r}{176}
%
% ---------- 's \v{s} \c{s}
%
\ml@DCT{\'}{S}{145}
\ml@DCT{\v}{S}{146}
\ml@DCT{\c}{S}{147}
\ml@DCT{\'}{s}{177}
\ml@DCT{\v}{s}{178}
\ml@DCT{\c}{s}{179}
%
% ---------- \v{T} \c{t}  (v{t} = t'!)
%
\ml@DCT{\v}{T}{148}
\ml@DCT{\c}{T}{149}
\ml@DCT{\c}{t}{181}
%
% ---------- `u 'u ^u "u \H{u} \r{u}
%
\ml@DCT{\`}{U}{217}
\ml@DCT{\'}{U}{218}
\ml@DCT{\^}{U}{219}
\ml@DCT{\"}{U}{220}
\ml@DCT{\`}{u}{249}
\ml@DCT{\'}{u}{250}
\ml@DCT{\^}{u}{251}
\ml@DCT{\"}{u}{252}
%
\ml@DCT{\H}{U}{150}
\ml@DCT{\r}{U}{151}
\ml@DCT{\H}{u}{182}
\ml@DCT{\r}{u}{183}
%
% ---------- 'y "y
%
\ml@DCT{\'}{Y}{221}
\ml@DCT{\'}{y}{253}
%
\ml@DCT{\"}{Y}{152}
\ml@DCT{\"}{y}{184}
%
% ---------- 'z \v{z} .z
%
\ml@DCT{\'}{Z}{153}
\ml@DCT{\v}{Z}{154}
\ml@DCT{\.}{Z}{155}
\ml@DCT{\'}{z}{185}
\ml@DCT{\v}{z}{186}
\ml@DCT{\.}{z}{187}
%
%
\let\ml@DCT=\undefined
%%
%%
%% %%%%%%%%%% 3) Switch off \charsubdef
%%
\newcommand{\@@charsubdef}{}
\let\@@charsubdef=\charsubdef % save primitive meaning
%%
\renewcommand{\charsubdef}{%
  \PackageWarning{mltex}%
    {\string\charsubdef\space declarations should not be\MessageBreak
     changed in the midst of a document.\MessageBreak
     I will proceed as if you haven't used\MessageBreak
     this declaration}%
  % Redefine \charsubdef <charnum> [=] <charnum> <charnum>
  % to read all three <charnum>:
  \begingroup \afterassignment\char@subdef \count@=}
\newcommand{\char@subdef}{%
  \afterassignment\char@@subdef \count@}
\newcommand{\char@@subdef}{%
  \afterassignment\endgroup \count@=}
%%
\endinput
%% 
%% End of file `lo1enc.def'.
back to top