From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex-dev/base/ltxcheck.tex | 975 +++++++++++++++++++++++++++++++++++++ 1 file changed, 975 insertions(+) create mode 100644 macros/latex-dev/base/ltxcheck.tex (limited to 'macros/latex-dev/base/ltxcheck.tex') diff --git a/macros/latex-dev/base/ltxcheck.tex b/macros/latex-dev/base/ltxcheck.tex new file mode 100644 index 0000000000..d5426aafa1 --- /dev/null +++ b/macros/latex-dev/base/ltxcheck.tex @@ -0,0 +1,975 @@ +% \iffalse meta-comment +% +% Copyright 1993-2016 +% The LaTeX3 Project and any individual authors listed elsewhere +% in this file. +% +% This file is part of the LaTeX base system. +% ------------------------------------------- +% +% It may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3c +% of this license or (at your option) any later version. +% The latest version of this license is in +% https://www.latex-project.org/lppl.txt +% and version 1.3c or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% This file has the LPPL maintenance status "maintained". +% +% The list of all files belonging to the LaTeX base distribution is +% given in the file `manifest.txt'. See also `legal.txt' for additional +% information. +% +% The list of derived (unpacked) files belonging to the distribution +% and covered by LPPL is defined by the unpacking scripts (with +% extension .ins) which are part of the distribution. +% +% \fi +% +% \iffalse +%% File `ltxcheck.tex'. +%% Copyright (C) 1994-1997 LaTeX3 project, David Carlisle +%% +% LaTeX Test File. +% ================ +% +% Processing this file with a newly installed LaTeX +% will test various aspects of the installation. +% +% To typeset the comments in this file, create a small +% file ltxcheck.drv that looks like the following (without the %) +% +% \documentclass{ltxdoc} +% \begin{document} +% \DocInput{ltxcheck.tex} +% \end{document} +% +% and process `latex ltxcheck.drv'. +% +\NeedsTeXFormat{LaTeX2e}[1997/06/01] +% \fi +% +% \StopEventually{} +% \CheckSum{643} +% +% \changes{v1.0c}{1994/03/15} +% {Add \cmd{\NeedsTeXFormat}} +% \changes{v1.0t}{1996/09/25} +% {Move ltxcheck to separate file} +% \changes{v1.0v}{1996/11/20} +% {lowercase filenames /1044} +% \changes{v1.1d}{2004/02/11} +% {Remove pict2e.sty} +% +\ProvidesFile{ltxcheck.tex}[2015/03/30 v1.1d LaTeX check file (DPC)] +% +% \GetFileInfo{ltxcheck.tex} +% \title{\textsf{ltxcheck}: The \LaTeX\ test program\thanks +% {version~\fileversion, dated \filedate}} +% \author{David Carlisle} +% \date{\filedate} +% \MaintainedByLaTeXTeam{latex} +% \maketitle +% +% This file, |ltxcheck.tex| should be run after \LaTeX\ has been +% installed. It Checks some system dependent parts of \LaTeX\ are set up +% correctly for your system, and checks that the main input files and +% fonts that \LaTeX\ uses are present and can be found by \LaTeX. +% +% \begin{macrocode} +\makeatletter +% \end{macrocode} +% +% \begin{macrocode} +\typeout{^^J% +LaTeX2e installation check file^^J% +===============================} +% \end{macrocode} +% +% \begin{macrocode} +\typeout{^^J% + Before running this file through LaTeX2e you should have installed^^J% + the Standard LaTeX files in their final `system' directories.^^J% + This file should *not* be run in a directory that contains article.cls} +% \end{macrocode} +% +% |\pause| just slows things down so that not too much appears on the +% screen at once, or scrolls off the top. +% \begin{macrocode} +\def\pause{% + \typeout{}% + \message{** Hit return to continue: }% + \read -1 to \xxx + \typeout{}} +% \end{macrocode} +% +% \begin{macrocode} +\typeout{^^J% + After certain tests, LaTeX will pause so that you can read the^^J% + output without it scrolling off the screen.^^J% + When you are ready just hit and LaTeX will continue.^^J% + When LaTeX pauses, you will see a prompt like the one below.^^J^^J% + If a test fails, a message will be displayed followed by^^J% + an error message starting `! BAD'.^^J% + LaTeX will quit if you try to scroll past some error messages.} +\pause +% \end{macrocode} +% +% Check that the system has defined |\@currdir| correctly +% by writing an |.aux| file and then trying to find it again. +% \begin{macrocode} +\typeout{^^J% + Checking the current directory syntax^^J% + =====================================} +% \end{macrocode} +% +% \begin{macrocode} +\newif\iftest\testfalse +% \end{macrocode} +% +% \begin{macrocode} +\ifx\@currdir\@undefined + \typeout{^^J% + \noexpand\@currdir is undefined !!^^J% + Something is seriously wrong with the LaTeX2e initialisation.^^J% + Either you have corrupted files or this is a LaTeX bug.} + \errmessage{BAD LaTeX2e system!!} + \expandafter\@@end +\fi +% \end{macrocode} +% +% \begin{macrocode} +\ifx\@currdir\@empty + \typeout{^^J% + \noexpand\@currdir is defined to be empty.^^J% + This means that LaTeX can not distinguish between a file^^J% + aaaaa.tex^^J% + that exists in the current directory, and a file aaaaa.tex^^J% + in another directory.^^J% + It may be that this Operating System has no concept of `directory'^^J% + in which case the setting is correct. If however it is possible to^^J% + uniquely refer to a file then a suitable definition of + \noexpand\@currdir^^J% + should be added to texsys.cfg, and the format remade.} + \pause +% \end{macrocode} +% +% \begin{macrocode} +\else + \typeout{^^J% +\noexpand\@currdir is defined as + \expandafter\strip@prefix\meaning\@currdir^^J% + (Testing...)} +% \end{macrocode} +% +% \begin{macrocode} +\begingroup +\endlinechar=-1 +\count@\time +\divide\count@ 60 +\count2=-\count@ +\multiply\count2 60 +\advance\count2 \time +\edef\today{% + \the\year/\two@digits{\the\month}/\two@digits{\the\day}:% + \two@digits{\the\count@}:\two@digits{\the\count2}} +% \end{macrocode} +% +% \begin{macrocode} + \immediate\openout15=ltxcheck.aux + \immediate\write15{\today^^J} + \immediate\closeout15 % +% \end{macrocode} +% +% \begin{macrocode} + \openin\@inputcheck\@currdir ltxcheck.aux % + \ifeof\@inputcheck + \typeout{\@currdir ltxcheck.aux not found}% + \else + \read\@inputcheck to \reserved@a + \ifx\reserved@a\today + \typeout{\@currdir ltxcheck.aux found} + \testtrue + \else + \typeout{BAD: old file \reserved@a(should be \today)}% + \testfalse + \fi + \fi + \closein\@inputcheck +% \end{macrocode} +% +% \begin{macrocode} + \iftest + \endgroup + \typeout{\noexpand \@currdir OK!} + \else + \endgroup +% \end{macrocode} +% +% \begin{macrocode} + \typeout{^^J% + The LaTeX2e installation has defined \noexpand\@currdir^^J% + to be \expandafter\strip@prefix\meaning\@currdir.^^J% + This appears to be incorrect.^^J% + You should add a correct definition to texsys.cfg^^J% + and rebuild the format.} + \errmessage{BAD LaTeX2e system!!} + \expandafter\expandafter\expandafter\@@end + \fi + \pause +% \end{macrocode} +% +% \begin{macrocode} +\fi +% \end{macrocode} +% +% \changes{v1.0k}{1995/09/27} +% {Check filename parser} +% Check the filename parser can at least cope with a simple +% name + extension, |article.cls|. +% \begin{macrocode} +\typeout{^^J% + Checking the filename parser^^J% + ============================} +% \end{macrocode} +% +% \begin{macrocode} +\filename@parse{article.cls} +\def\reserved@a{article} +% \end{macrocode} +% +% \begin{macrocode} +\testtrue +\ifx\filename@base\reserved@a + \ifx\filename@ext\@clsextension + \else + \testfalse + \fi +\else + \testfalse +\fi +\iftest + \typeout{filename parser OK!}\pause +\else + \typeout{^^J% + The LaTeX2e installation has defined \noexpand\filename@parse.^^J% + This appears to be incorrect.^^J% + You should remove the incorrect definition from texsys.cfg^^J% + and rebuild the format.} + \errmessage{BAD LaTeX2e system!!} + \expandafter\expandafter\expandafter\@@end +\fi +% +% \end{macrocode} +% +% Check the input path by looking for |article.cls|. If |article.cls| +% is in the current directory it would be found anyway, so first check +% it is not there. +% \begin{macrocode} +\typeout{^^J% + Checking the input path^^J% + =======================^^J} +% \end{macrocode} +% +% \begin{macrocode} +\begingroup +\let\input@path\@undefined +\ifx\@currdir\@empty\else + \IfFileExists{\@currdir article.cls} + {\typeout{% + article.cls appears to be in current directory!^^J^^J% + If this is the case, install article.cls into a^^J% + `standard input directory'^^J% + and copy ltxcheck.tex to another directory before^^J% + processing with LaTeX.^^J% + ^^J% + If article.cls is not in the current directory,^^J% + then you need to edit texsys.cfg.^^J% + Read the comments in that file. If nothing else works, add:^^J% + \string\let\string\@currdir\string\@empty^^J}% + \errhelp{Move files, or edit texsys.cfg} + \def\ArticleClassFoundInCurrentDirectory{% + This file should not be run in a `standard input directory'} + \errmessage{BAD: \ArticleClassFoundInCurrentDirectory}} + {} +\fi +\endgroup +% \end{macrocode} +% +% \begin{macrocode} +\IfFileExists{article.cls} + {\typeout{input path OK!}} + {\typeout{^^J% + LaTeX claims that article.cls is not on the system.^^J% + Either LaTeX has been incorrectly installed, or the + \noexpand\input@path^^J% + is incorrect. A correct definition should be added to^^J% + texsys.cfg, and the format remade.} + \pause + \typeout{^^J% + Typical definitions of \noexpand\input@path include:^^J^^J% + \string\let\string\input@path=\noexpand\@undefined + (the default definition)^^J^^J% + \string\def\string\input@path{\@percentchar^^J + {/usr/lib/tex/inputs/} {/usr/local/lib/tex/inputs/} }^^J^^J% + \string\def\string\input@path{\@percentchar^^J + {c:/tex/inputs/} {a:/} }^^J^^J% + \string\def\string\input@path{\@percentchar^^J + {tex_inputs:} {SOMEDISK:[SOMEWHERE.TEX.INPUTS]} }^^J}% + \pause + \typeout{^^J% + Note that \noexpand\input@path should be undefined + unless your^^J% + TeX installation does not make + \noexpand\openin and \noexpand\input^^J% + search the same directories.^^J% + If \noexpand\input@path is defined, entries should be^^J% + in the same syntax as \noexpand\@currdir^^J% + ie full directory names that may be concatenated with the^^J% + basename (note the final / and ] in the above examples).^^J% + Some systems may need more complicated settings.^^J% + See texsys.cfg for more examples.^^J% + ! BAD \noexpand\input@path!!} + \@@end}% +\pause +% \end{macrocode} +% +% For versions prior to \TeX3 complain to the installer. (Although +% \LaTeX\ will work with these old \TeX\ versions). +% For versions between 3 and 3.14 check that \LaTeX\ is using the +% work-around for the |^^J| in |\message| bug. +% \begin{macrocode} +\typeout{^^J% + Checking the TeX version^^J% + ========================} +% \end{macrocode} +% +% \changes{v0.2j}{1994/02/25} +% {\cs{noboundary} is \cs{relax} not undef in TeX2 (initialised +% in 2e format)} +% \begin{macrocode} +\dimen@\ifx\@TeXversion\@undefined4\else\@TeXversion\fi\p@% +\ifx\noboundary\relax + \typeout{^^J% + This is TeX 2. You will not be able to use all the new features^^J% + of LaTeX2e with such an old TeX.^^J% + The current version (1995/12/11) is TeX 3.14159.^^J% + Consider upgrading your TeX.} + \ifdim\dimen@<3\p@\else + \errhelp{Check that texsys.cfg has not defined \@TeXversion} + \def\OldTeX{% + BAD: \noexpand\@TeXversion is incorrect: \meaning\@TeXversion} + \errmessage{\OldTeX} + \fi +\else +% \end{macrocode} +% +% \changes{v1.0h}{1994/10/11} +% {Check for TeX3.141} +% \begin{macrocode} + \ifdim\dimen@>3.14\p@ + \typeout{This appears to be a recent version of TeX!^^J% + If the following `lines' all appear on the same line,^^J% + separated by \string^\string^J % + then there has been an incorrect installation.} + \else + \typeout{^^J% + This appears to be a TeX between 3.0 and 3.14^^J% + but the current version (1995/12/11) is TeX 3.14159^^J% + consider upgrading your TeX.^^J% + The following `lines' will appear on the same line,^^J% + separated by \string^\string^J;^^J% + the same problem may affect other messages from LaTeX.} + \fi +% \end{macrocode} +% +% \begin{macrocode} +\message{line1^^Jline2^^Jline3} +\pause +% \end{macrocode} +% +% \begin{macrocode} +\fi +% \end{macrocode} +% +% +% To check that the \LaTeX\ fonts have been installed, the well known +% trick of going into |\batchmode|, and testing for |\nullfont| is used. +% Not all fonts are tested, just a representative sample. +% \begin{macrocode} +\typeout{^^J% + Checking fonts^^J% + =====================================} +% \end{macrocode} +% \changes{v1.0h}{1994/10/11} +% {Check for fonts} +% \begin{macrocode} +\def\checkfont#1{% + \batchmode + \font\test=#1\relax + \errorstopmode + \ifx\test\nullfont + \typeout{\@spaces! BAD: #1.tfm not found!} + \@tempswatrue + \else + \typeout{\@spaces OK: #1.tfm found} + \fi} +% \end{macrocode} +% +% \begin{macrocode} +\typeout{^^JChecking Standard TeX fonts...} +\@tempswafalse +\checkfont{cmr10} +\checkfont{cmr12} +\checkfont{cmmi10} +\if@tempswa + \errhelp{Obtain a complete standard TeX font distribution.} + \errmessage{BAD: Missing Standard Fonts} +\else +% \end{macrocode} +% \changes{v1.0s}{1996/07/19} +% {Check for bad cm fonts} +% \begin{macrocode} + \font\testcm=cmr10 + \testcm + \setbox0\hbox{h{}o} + \setbox2=\hbox{ho} + \ifdim\wd0=\wd2 + \typeout{^^J% +OK: correct Computer Modern fonts installed.}% + \else + \typeout{^^J% +An unauthorised and incompatible release of the^^J% +Computer Modern fonts has been installed on your system.^^J% +The official fonts may be obtained from CTAN archives in:^^J% +ctan:fonts/cm^^J% +For further details see Donald Knuth's Home page:^^J% +http://www-cs-faculty.stanford.edu/\protect~knuth/cm.html}% + \errhelp{Re-install Computer Modern fonts, and then rebuild LaTeX} + \errmessage{BAD Standard fonts!!} + \fi +% \end{macrocode} +% +% \begin{macrocode} + \pause +\fi +% \end{macrocode} +% +% \begin{macrocode} +\typeout{^^JChecking LaTeX Picture Mode fonts...} +\@tempswafalse +\checkfont{lcircle10} +\checkfont{lcirclew10} +\if@tempswa + \@tempswafalse + \checkfont{circle10} + \checkfont{circlew10} + \if@tempswa + \typeout{^^J! BAD: You do not have the picture mode fonts:^^J% + lcircle10 and lcirclew10} + \else + \typeout{^^J! BAD:% + You have the picture mode fonts with their old names:^^J% + circle10 and circlew10 have been renamed to^^J% + lcircle10 and lcirclew10} + \fi + \errhelp{Obtain a complete standard LaTeX font distribution.} + \errmessage{BAD: Missing LaTeX Fonts} +\else + \pause +\fi +% \end{macrocode} +% +% \begin{macrocode} +\typeout{^^JChecking Extra LaTeX Computer Modern fonts...} +\@tempswafalse +\checkfont{cmmib5} +\checkfont{cmmib7} +\checkfont{cmex7} +\if@tempswa +\typeout{! BAD:^^J% + LaTeX2e uses a few `extra' Computer Modern fonts produced by^^J% + The American Mathematical Society.^^J% + If you install The AMSFONTS font collection, then these, and other,^^J% + fonts will be available to LaTeX.^^J% + Although installing AMSFONTS is recommended, LaTeX does not require^^J% + The full collection; you may obtain a minimal set of extra LaTeX^^J% + fonts from any CTAN archive, in: ctan:macros/latex/fonts/} +\errhelp{Obtain LaTeX fonts or the AMSFONTS collection.} +\errmessage{BAD: Missing LaTeX Fonts} +\else + \pause +\fi +% \end{macrocode} +% +% \changes{v1.0k}{1995/09/27} +% {Check for dc and tc fonts} +% \changes{v1.1a}{1997/01/14} +% {Check for ec fonts} +% \changes{v1.1c}{1997/06/10} +% {Modify messages now ec released} +% \begin{macrocode} +\typeout{^^JChecking T1 encoded Computer Modern (dc & ec) fonts...} +% \end{macrocode} +% \changes{v1.0m}{1995/10/31} +% {Check the T1 fd files match the dc release.} +% This command looks for the string |dcr17<| in the font tables for +% T1/cmr. If it is there, then the T1 fd files match the old dc fonts, +% for dc release 1.1 or earlier. If not then presumably new fd files +% are being used. +% \begin{macrocode} +\def\dcrseventeen{% + \begingroup + \escapechar-1 + \xdef\reserved@a{% + \noexpand\in@ + {\expandafter\string\csname dcr17\endcsname<}% + {\expandafter\expandafter\expandafter + \string\csname T1/cmr/m/n\endcsname<}}% + \endgroup + \reserved@a} +% \end{macrocode} +% Similarly this command looks for the string |ecrm| in the font tables +% for T1/cmr. If it is there, then the T1 fd files match the ec fonts, +% for ec release 1.0 or later. +% \begin{macrocode} +\def\ecrm{% + \begingroup + \escapechar-1 + \xdef\reserved@a{% + \noexpand\in@ + {\expandafter\string\csname ecrm\endcsname}% + {\expandafter\expandafter\expandafter + \string\csname T1/cmr/m/n\endcsname}}% + \endgroup + \reserved@a} +% \end{macrocode} +% \changes{v1.0o}{1995/11/14} +% {dont produce a BAD message if just one set of dc fonts is missing} +% Remove the ``! BAD'' typeout while checking for dc fonts so +% as not to worry sites with just the new ones. +% \begin{macrocode} +\def\checkfont#1{% + \batchmode + \font\test=#1\relax + \errorstopmode + \ifx\test\nullfont + \typeout{\@spaces\@spaces #1.tfm not found} + \@tempswatrue + \else + \typeout{\@spaces OK: #1.tfm found} + \fi} +% \end{macrocode} +% + +% \begin{macrocode} +\@tempswafalse +\checkfont{ecrm1000} +\if@tempswa +% \end{macrocode} +% No ec fonts. Check the state of the dc fonts. +% +% \begin{macrocode} +\typeout{No EC fonts found, checking DC fonts...} +\@tempswafalse +\checkfont{dcr10} +\if@tempswa + \@tempswafalse + \checkfont{tcr1000} + \if@tempswa +% \end{macrocode} +% No dc fonts at all. +% \begin{macrocode} + \typeout{^^J% +! BAD: No ec fonts found!!^^J% +LaTeX does not require the use of ec fonts^^J% +however they are strongly recommended.^^J% +The ec fonts are available in a more natural range of sizes^^J% +and allow better hyphenation and kerning than the^^J% +old fonts such as cmr10.^^J% +These ec fonts may be obtained from CTAN archives, in:^^J% +ctan:fonts/ec} + \else +% \end{macrocode} +% No old dc fonts, but new ones installed. +% First check whether the latest patch has been applied. +% \changes{v1.0p}{1995/12/11} +% {Check for dc fonts 1.2 patch level 1 (Bernd Raichle) /2003} +% \changes{v1.0q}{1996/06/03} +% {Check for dc fonts 1.3} +% \changes{v1.1b}{1997/01/24} +% {extra closing brace removed from this branch} +% \begin{macrocode} + \font\testdc=dcr1000 + \testdc + \setbox0\hbox{A{}y} + \setbox2=\hbox{Ay} + \ifdim\wd0>\wd2 + \typeout{^^J% +! BAD: dc fonts release 1.3 installed^^J% +The dc fonts are now replaced by the ec fonts^^J% +These ec fonts may be obtained from CTAN archives, in:^^J% +ctan:fonts/ec.}% + \else + \typeout{^^J% +! BAD dc fonts 1.2 or older installed.^^J% +The dc fonts are now replaced by the ec fonts^^J% +These ec fonts may be obtained from CTAN archives, in:^^J% +ctan:fonts/ec.}% + \fi + \dcrseventeen + \ifin@ + \typeout{^^J% +The fd files for the obsolete release 1.1 of the^^J% +dc fonts have been loaded into the LaTeX format.^^J% +However, you appear to have at least release 1.2 of the dc fonts.^^J% +You should generate suitable fd files by running:^^J% +latex newdc.ins^^J% +and then rebuild the format by rerunning:^^J% +initex latex.ltx} + \errmessage{BAD LaTeX2e system!!} + \else + \typeout{^^J% + DC fonts OK!} + \fi + \fi +\else + \@tempswafalse + \checkfont{tcr1000} + \if@tempswa +% \end{macrocode} +% Old DC fonts, but no new ones. +% \begin{macrocode} + \typeout{^^J% +Old dc fonts found!!^^J% +Only the original dc fonts are on your system.^^J% +Later releases of the dc/ec fonts introduced^^J% +many improvements and are strongly recommended.^^J% +They may be obtained from CTAN archives, in:^^J% +ctan:fonts/ec.} + \pause + \dcrseventeen + \ifin@\else + \typeout{^^J% +The LaTeX2e installation has installed fd files for^^J% +release 1.2 (or later) of the dc fonts.^^J% +However, you appear to have only release 1.1 of these fonts.^^J% +You must now generate the correct fd files by running:^^J% +latex olddc.ins^^J% +and then rebuild the format by rerunning:^^J% +initex latex.ltx} + \errmessage{BAD LaTeX2e system!!} + \fi + \else +% \end{macrocode} +% Both old and new DC fonts. +% \begin{macrocode} + \font\testdc=dcr1000 + \testdc + \setbox0\hbox{A{}y} + \setbox2=\hbox{Ay} + \ifdim\wd0>\wd2 + \typeout{^^J% +! BAD: dc fonts release 1.3 installed^^J% +The dc fonts are now replaced by the ec fonts^^J% +These ec fonts may be obtained from CTAN archives, in:^^J% +ctan:fonts/ec.}% + \else + \typeout{^^J% +! BAD dc fonts 1.2 or older installed.^^J% +The dc fonts are now replaced by the ec fonts^^J% +These ec fonts may be obtained from CTAN archives, in:^^J% +ctan:fonts/ec.}% + \fi +% \end{macrocode} +% +% \begin{macrocode} + \dcrseventeen + \ifin@ + \typeout{^^J% +The fd files for the obsolete release 1.1 of the^^J% +dc fonts have been loaded into the LaTeX format.^^J% +However, you appear to have at least release 1.2 of the dcfonts.^^J% +You should use generate suitable fd files by running:^^J% +latex newdc.ins^^J% +and then rebuild the format by running:^^J% +initex latex.ltx^^J% +Otherwise LaTeX will always use the older fonts.} + \errmessage{BAD LaTeX2e system!!} + \else + \ecrm + \ifin@ + \typeout{^^J% +The fd files for the new EC fonts have been loaded into^^J% +the LaTeX format.^^J% +However, these fonts are not found by LaTeX.^^J% +You should either install the ec fonts, or generate suitable^^J% +fd files for the dc fonts by running: \space latex newdc.ins^^J% +and then rebuild the format by running: \space initex latex.ltx} + \errmessage{BAD LaTeX2e system!!} + \else + \typeout{^^J% +DC fonts OK!^^J% +(Both old and new dc font releases are installed.)^^J% +Note that the dc fonts are expected to be replaced by ec^^J% +in January 1997.} + \fi + \fi + \fi +\fi +% \end{macrocode} +% Else EC fonts are found, so check whether LaTeX is going to use them. +% +% \begin{macrocode} +\else +% \end{macrocode} +% +% \begin{macrocode} + \ecrm + \ifin@ + \typeout{EC fonts OK!} + \else + \typeout{% +EC fonts installed but LaTeX is still using dc fonts.^^J% +You may want to run ec.ins and remake the LaTeX format} + \fi +% \end{macrocode} +% +% \begin{macrocode} +\fi +\pause +% \end{macrocode} +% +% +% +% The following files will be unpacked by running iniTeX on +% |unpack.ins|. +% +% \begin{macrocode} +\typeout{^^JChecking LaTeX input files...^^J} +% \end{macrocode} +% +% If the specified file is not there, add it to the list. +% \begin{macrocode} +\def\checkfile#1{% + \IfFileExists{#1}{}{\edef\missingfile{\missingfile#1, }}} +% \end{macrocode} +% +% Report any missing files in the last batch tested. +% \begin{macrocode} +\def\filereport#1#2{% +\ifx\missingfile\@empty + \typeout{^^J% +OK: The #1 files such as #2^^J% +are accessible to LaTeX.} +\pause +\expandafter\@gobbletwo +\else + \typeout{^^J% +! BAD: The #1 files:^^J% +\missingfile^^J% +are not accessible to LaTeX.} +\errhelp{Check the installation!} +\let\missingfile\@empty +\fi +\errmessage{Missing LaTeX files}} +% \end{macrocode} +% +% Kernel files: +% \begin{macrocode} +\let\missingfile\@empty +% \end{macrocode} +% +% \begin{macrocode} +\checkfile{hyphen.ltx} +\checkfile{fontmath.ltx} +\checkfile{fonttext.ltx} +\checkfile{preload.ltx} +\checkfile{texsys.cfg} +\checkfile{latex.ltx} +% \end{macrocode} +% +% Don't use |\filereport| here as the message is rather different +% as the |.ltx| files don't really need to be available to \LaTeX\ +% once the format is made. +% \begin{macrocode} +\ifx\missingfile\@empty + \typeout{^^J% +OK: The files such as latex.ltx that are used to make^^J% +the format are accessible to LaTeX.} +\else + \typeout{^^J% +The files:^^J% +\missingfile^^J% +that are used to make the format are not accessible to LaTeX.^^J% +This is OK, but you will need those files if you need to remake the^^J% +the format later.} +\fi +\pause +\let\missingfile\@empty +% \end{macrocode} +% +% Class files and class options: +% \begin{macrocode}} +\checkfile{article.cls} +\checkfile{report.cls} +\checkfile{book.cls} +\checkfile{letter.cls} +\checkfile{ltxdoc.cls} +\checkfile{proc.cls} +\checkfile{slides.cls} +\checkfile{bk10.clo} +\checkfile{bk11.clo} +\checkfile{bk12.clo} +\checkfile{size10.clo} +\checkfile{size11.clo} +\checkfile{size12.clo} +\checkfile{fleqn.clo} +\checkfile{leqno.clo} +% \end{macrocode} +% +% \begin{macrocode} +\filereport{main class}{article.cls} +% \end{macrocode} +% +% Package files: +% \begin{macrocode} +\checkfile{alltt.sty} +\checkfile{doc.sty} +\checkfile{exscale.sty} +\checkfile{flafter.sty} +\checkfile{fontenc.sty} +\checkfile{graphpap.sty} +\checkfile{ifthen.sty} +\checkfile{inputenc.sty} +\checkfile{latexsym.sty} +\checkfile{makeidx.sty} +\checkfile{newlfont.sty} +\checkfile{oldlfont.sty} +\checkfile{shortvrb.sty} +\checkfile{showidx.sty} +\checkfile{slides.sty} +\checkfile{syntonly.sty} +\checkfile{tracefnt.sty} +% \end{macrocode} +% +% +% \begin{macrocode} +\filereport{main package}{ifthen.sty} +% \end{macrocode} +% +% Font definition (.fd) files: +% \begin{macrocode}} +\checkfile{omlcmm.fd} +\checkfile{omlcmr.fd} +\checkfile{omllcmm.fd} +\checkfile{omscmr.fd} +\checkfile{omscmsy.fd} +\checkfile{omslcmsy.fd} +\checkfile{omxcmex.fd} +\checkfile{omxlcmex.fd} +\checkfile{ot1cmdh.fd} +\checkfile{ot1cmfib.fd} +\checkfile{ot1cmfr.fd} +\checkfile{ot1cmr.fd} +\checkfile{ot1cmss.fd} +\checkfile{ot1cmtt.fd} +\checkfile{ot1cmvtt.fd} +\checkfile{ot1lcmss.fd} +\checkfile{ot1lcmtt.fd} +\checkfile{t1cmdh.fd} +\checkfile{t1cmfib.fd} +\checkfile{t1cmfr.fd} +\checkfile{t1cmr.fd} +\checkfile{t1cmss.fd} +\checkfile{t1cmtt.fd} +\checkfile{t1cmvtt.fd} +\checkfile{ts1cmr.fd} +\checkfile{ts1cmss.fd} +\checkfile{ts1cmtt.fd} +\checkfile{ts1cmvtt.fd} +\checkfile{ucmr.fd} +\checkfile{ucmss.fd} +\checkfile{ucmtt.fd} +\checkfile{ullasy.fd} +\checkfile{ulasy.fd} +% \end{macrocode} +% +% +% \begin{macrocode} +\filereport{font definition}{t1cmr.fd} +% \end{macrocode} +% +% Font encoding files: +% \begin{macrocode} +\checkfile{t1enc.def} +\checkfile{ot1enc.def} +\checkfile{omsenc.def} +\checkfile{omlenc.def} +% \end{macrocode} +% +% +% \begin{macrocode} +\filereport{font encoding}{t1enc.def} +% \end{macrocode} +% +% Input encoding files: +% \begin{macrocode} +\checkfile{ascii.def} +\checkfile{latin1.def} +\checkfile{latin2.def} +\checkfile{latin3.def} +\checkfile{latin5.def} +\checkfile{cp850.def} +\checkfile{cp852.def} +\checkfile{cp865.def} +\checkfile{cp437.def} +\checkfile{cp437de.def} +\checkfile{applemac.def} +\checkfile{next.def} +\checkfile{ansinew.def} +% \end{macrocode} +% +% \begin{macrocode} +\filereport{input encoding}{latin1.def} +% \end{macrocode} +% +% Compatibility files: +% \begin{macrocode} +\checkfile{article.sty} +\checkfile{book.sty} +\checkfile{letter.sty} +\checkfile{proc.sty} +\checkfile{report.sty} +\checkfile{fleqn.sty} +\checkfile{leqno.sty} +\checkfile{openbib.sty} +\checkfile{latex209.def} +% \end{macrocode} +% +% +% \begin{macrocode} +\filereport{compatibility mode}{article.sty} +% \end{macrocode} +% +% Other files: +% \begin{macrocode} +\checkfile{bezier.sty} +\checkfile{docstrip.tex} +\checkfile{slides.def} +\checkfile{sfonts.def} +\checkfile{t1enc.sty} +% \end{macrocode} +% +% \begin{macrocode} +\filereport{remaining}{sfonts.def} +% \end{macrocode} +% +% \begin{macrocode} +\@@end +% \end{macrocode} +% +% \Finale +% + -- cgit v1.2.3