%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% fe-latex.dmp % %% part of format-dumper-cm directory %% L. Siebenmann, 5-92 --- 7-94 %% for LaTeX 2.xx (NOT 2e and not 3.xx!! still to appear) %% Documentation in fe-dump.doc \input hy-prep.tex %% prepares hyphen.tex for plain.tex \input lplain.tex %% standard lPlain %% also inputs CaesarCM, latex.tex \input fe-punct.tex %% punctuation, spacing \English %% delay activation of punctuation until after documentstyle %% because of \@for#1:=#2\do#3 and \@tfor#1:=#2\do#3 %% and colons in \typeout messages \input gllmts.tex \catcode`\@=11 % %%% \CaesarAdjustLaTeX applied just after \documentstyle %%% ---which defines headings %%% This patches fragilities %%% in .aux file writes for sections etc. %% \newtoks\Ltempeverypar \def\DShield{\LHdShield\Ltempeverypar\expandafter{\the\everypar}% \everypar\expandafter{\the\everypar \everypar=\Ltempeverypar\aftergroup\RHdShield}% } \def\CaesarAdjustLaTeX{%provisional Jan 94 %% one redefinition \def\@ifstar##1##2{\DShield\@ifnextchar *{\def\@tempa*{##1}\@tempa}{##2}}% } \def\CaesarDeadjustLaTeX{% Not yet used \def\@ifstar##1##2{\@ifnextchar *{\def\@tempa*{##1}\@tempa}{##2}}% } \newtoks\Cstoks@ %%%\CaesarProtectLaTeX ; default; not right 3-94; maybe not nec \def\CaesarProtectLaTeX{% \ifx\undefined\subsection \let\temp\relax \else \W@{}% \W@{ *** \string\CaesarAdjustLaTeX\space must come after}% \W@{ *** \string\documentstyle}% \def\temp{\errmessage{}\@@end}% \fi \temp \def\LHdShield{\ufcr\ifx\@Acc\Smart@Acc \Cstoks@={\ufcr\Caesar}% \else\Cstoks@={\ufcr}% \fi\noCaesar}% \def\RHdShield{\the\Cstoks@} } %%% \CaesarDeprotectLaTeX candidate for default? %% leaves 8 bit characters in .dvi \def\CaesarDeprotectLaTeX{\let\RHdShield\ufcr\let\LHdShield\ufcr} \def\@documentstyle[#1]#2{\makeatletter \def\@optionlist{#1}\gdef\@optionfiles{}\input #2.sty\relax \let\@elt\input \@optionfiles \let\@elt\relax \makeatother \CaesarAdjustLaTeX\let\CaesarAdjustLaTeX\relax %% added \French %% added %\catcode`\<=13 \catcode`\>=13\relax \French %% add? } \def\enddocument{\@checkend{document}\clearpage\begingroup \if@filesw \immediate\closeout\@mainaux \def\global\@namedef##1##2{}\def\newlabel{\@testdef r}% \def\bibcite{\@testdef b}\@tempswafalse \makeatletter\SetExtASCII{12}\ManualPunctuation%% \input \jobname.aux \if@tempswa \@@warning{Label(s) may have changed. Rerun to get cross-references right}\fi\fi\endgroup\deadcycles\z@\@@end} %% RmS 92/01/14: added \immediate to \openout as all \write commands %% are also executed \immediate \def\@starttoc#1{\begingroup \makeatletter\SetExtASCII{12}%% \@input{\jobname.#1}\if@filesw \expandafter\newwrite\csname tf@#1\endcsname \immediate\openout \csname tf@#1\endcsname \jobname.#1\relax \fi \global\@nobreakfalse \endgroup} %\newcount\Ct@ \def\SetExtASCII#1{\count@=128 \Ct@=#1\relax \loop %% \count@ is Plain scratch counter \count255 \catcode\the\count@=\Ct@\relax \ifnum\count@<\@cclv \relax \advance\count@ by \@ne\relax \repeat } %%%%%%%%%%%%%% March 1994, patches %%%%%%%%%%%%%% from amsbookstyle problems %%%%%%%%%%%%%% (makes CaesarDeprotectLaTeX std) %% %%% assililate while ;:?! active %% killed parasitic spaces (7-94) {\frpunctactive@ \gdef\FECs@stringem{\edef\c{\string\c}\edef\-{\string\-}% \edef\g{\string\g}\edef\H{\string\H}\edef\*{\string\*}% \edef\v{\string\v}\edef\^{\string\^}\edef\'{\string\'}% \edef\`{\string\`}\edef\"{\string\"}\edef;{\string;}% \edef!{\string!}\edef?{\string?}\edef:{\string:}% }} \let\Cs@protect\FECs@stringem \let\CsProtect\Cs@protect %\def\Cs@@protect{\noCaesar\noJDaccents} %\def\Cs@@protect{\noCaesar\noJDaccents} \def\Cs@@protect{\eCasePrep@} %%\def\include#1{\@include#1 } becomes (7-94) \def\include#1{{\FECs@stringem\xdef\gtemp@{#1}}% \EX@\@include\EX@{\gtemp@}} \def\label#1{\@bsphack\if@filesw {\let\thepage\relax \Cs@protect\def\protect{\noexpand\noexpand\noexpand}% \edef\@tempa{\write\@auxout{\string \newlabel{#1}{{\@currentlabel}{\thepage}}}}% \expandafter}\@tempa \if@nobreak \ifvmode\nobreak\fi\fi\fi\@esphack} \def\addcontentsline#1#2#3{\if@filesw \begingroup\Cs@protect \let\label\@gobble \let\index\@gobble \let\glossary\@gobble \def\protect##1{\string\string\string##1\string\space \space}\@temptokena{\thepage}% \edef\@tempa{\write \@auxout{\string\@writefile{#1}{\protect \contentsline{#2}{#3}{\the\@temptokena}}}}\@tempa \if@nobreak \ifvmode\nobreak\fi\fi\endgroup\fi} \long\def\addtocontents#1#2{\if@filesw \begingroup\Cs@protect \let\label\@gobble \let\index\@gobble \let\glossary\@gobble \def\protect##1{\string\string\string##1\string\space\space}% \edef\@tempa{\write \@auxout {\string\@writefile{#1}{#2}}}\@tempa \if@nobreak \ifvmode\nobreak\fi\fi\endgroup\fi} %\def\contentsline#1{\csname l@#1\endcsname} \def\newlabel#1#2{{\Cs@protect\@ifundefined{r@#1}{}% {\@warning{Label `#1' multiply defined}}\global\@namedef{r@#1}{#2}}} \let\ref@\ref \def\ref#1{\bgroup\Cs@protect\ref@{#1}\egroup} \let\pageref@\pageref \def\pageref#1{\bgroup\Cs@protect\pageref@{#1}\egroup} \def\cite{\@ifnextchar [{\@tempswatrue\@citex@}{\@tempswafalse\@citex@[]}} \def\@citex@[#1]#2{{\Cs@protect\@citex[#1]{#2}}} \let\typeout@\typeout \def\typeout#1{\bgroup\Cs@protect\typeout@{#1}\egroup} \def\markboth#1#2{\gdef\@themark{{#1}{#2}}{% \let\protect\noexpand \let\label\relax \let\index\relax \let\glossary\relax \Cs@@protect \mark{\@themark}}\if@nobreak\ifvmode\nobreak\fi\fi} \def\markright#1{{\let\protect\noexpand\Cs@@protect \let\label\relax \let\index\relax \let\glossary\relax \expandafter\@markright\@themark {#1}\mark{\@themark}}\if@nobreak\ifvmode\nobreak\fi\fi} \def\@markright#1#2#3{\gdef\@themark{{#1}{#3}}} \def\@leftmark#1#2{#1} \def\@rightmark#1#2{#2} \def\leftmark{\expandafter\@leftmark\botmark} \def\rightmark{\expandafter\@rightmark\firstmark} \def\enddocument{\@checkend{document}\clearpage\begingroup \Cs@protect\if@filesw \immediate\closeout\@mainaux \def\global\@namedef##1##2{}\def\newlabel{\@testdef r}% \def\bibcite{\@testdef b}\@tempswafalse \makeatletter\input \jobname.aux \if@tempswa \@@warning{Label(s) may have changed. Rerun to get cross-references right}\fi\fi\endgroup\deadcycles\z@\@@end} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% french.sty of B. Gaulle, %% voir ftp cicb [129.20.128.2], %% is optional but requires some preparation. %%% Assure existence of language.dat file %% (required for no apparent reason). %% If such a file already exists, %% it is assumed to be OK. %%% french.sty also requires english.sty be present. %% \openin1 %% 1 (and 15 below) known to be free streams \ifeof1 \closein1 \immediate\openout15=language.dat \immediate\write15{xxx y z} \immediate\write15{english y z} \immediate\write15{french y z} \immediate\closeout15 \else \closein1 \fi %%% Default \CaesarDeprotectLaTeX if Caesar loaded \ifx\undefined\Smart@Acc \let\CaesarProtectLaTeX\undefined \let\CaesarDeprotectLaTeX\undefined \let\CaesarAdjustLaTeX\relax \let\CaesarDeadjustLaTeX\undefined \else \CaesarDeprotectLaTeX \fi \immediate\write16{} \immediate\write16{ *************************************************} \immediate\write16{ ** This French-English LaTeX format } \immediate\write16{ ** may use some 8 bit printer fonts.} \immediate\write16{ ** It includes CaesarCM.tex, fe-punct.tex and gllmt.tex.} \immediate\write16{ *** But 8 bit typing of TeX typescripts is another matter} \immediate\write16{ *** --- see extra tools posted on ftp matups.matups.fr,} \immediate\write16{ *** in directory pub/TeX/TypingTeX.dir.} \immediate\write16{ *************************************************} \catcode`\@=12 \dump