home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 3 / Meeting_Pearls_III.iso / Pearls / texmf / inputs / latex / unpacked / ltxcheck.tex < prev    next >
Encoding:
Text File  |  1995-06-21  |  11.2 KB  |  326 lines

  1. %% 
  2. %% This is file `ltxcheck.tex', generated 
  3. %% on <1995/6/21> with the docstrip utility (2.2i).
  4. %% 
  5. %% The original source files were:
  6. %% 
  7. %% ltdirchk.dtx  (with options: `ltxcheck')
  8. %% 
  9. %% This is a generated file. 
  10. %% 
  11. %% Copyright 1993-1995 the LaTeX3 project and any individual authors 
  12. %% listed elsewhere in this file. All rights reserved. 
  13. %% 
  14. %% For further copyright information see the file legal.txt, and any 
  15. %% other copyright notices in this file. 
  16. %% 
  17. %% This file is part of the LaTeX2e system. 
  18. %% ---------------------------------------- 
  19. %% This system is distributed in the hope that it will be useful, 
  20. %% but WITHOUT ANY WARRANTY; without even the implied warranty of 
  21. %% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
  22. %% 
  23. %% For error reports concerning UNCHANGED versions of this file no more 
  24. %% than one year old, see bugs.txt. 
  25. %% 
  26. %% Please do not request updates from us directly. Primary 
  27. %% distribution is through the CTAN archives. 
  28. %% 
  29. %% 
  30. %% IMPORTANT COPYRIGHT NOTICE: 
  31. %% 
  32. %% You are NOT ALLOWED to distribute this file alone. 
  33. %% 
  34. %% You are allowed to distribute this file under the condition that it is 
  35. %% distributed together with all the files listed in manifest.txt. 
  36. %% 
  37. %% If you receive only some of these files from someone, complain! 
  38. %% 
  39. %% Permission is granted to copy this file to another file with a clearly 
  40. %% different name and to customize the declarations in that copy to serve 
  41. %% the needs of your installation, provided that you comply with 
  42. %% the conditions in the file legal.txt. 
  43. %% 
  44. %% However, NO PERMISSION is granted to generate or to distribute a 
  45. %% modified version of this file under its original name. 
  46. %% 
  47. %% You are NOT ALLOWED to change this file. 
  48. %% 
  49. %% 
  50. %% MODIFICATION ADVICE: 
  51. %% 
  52. %% If you want to customize this file, it is best to make a copy of the 
  53. %% source file(s) from which it was produced. Use a different name for 
  54. %% your copy(ies) and modify the copy(ies); this will ensure that your 
  55. %% modifications do not get overwritten when you install a new release of 
  56. %% the standard system. You should also ensure that your modified source 
  57. %% file does not generate any modified file with the same name as a 
  58. %% standard file. You can then easily distribute your modifications by 
  59. %% distributing the modified and renamed copy of the source file, taking 
  60. %% care to observe the conditions in legal.txt; this will ensure that 
  61. %% other users can safely use your modifications. 
  62. %% 
  63. %% You will also need to produce your own, suitably named, .ins file to 
  64. %% control the generation of files from your source file; this file 
  65. %% should contain your own preambles for the files it generates, not 
  66. %% those in the standard .ins files. 
  67. %% 
  68. %% The names of the source files used are shown above. 
  69. %% 
  70. %% 
  71. %%% File: ltdirchk
  72. \NeedsTeXFormat{LaTeX2e}
  73. \makeatletter
  74. \typeout{^^J%
  75. LaTeX2e installation check file^^J%
  76. ===============================}
  77.  
  78. \typeout{^^J%
  79.  Before running this file through LaTeX2e you should have installed^^J%
  80.  the Standard LaTeX files in their final `system' directories.^^J%
  81.  This file should *not* be run in a directory that contains article.cls}
  82. \def\pause{%
  83.   \typeout{}%
  84.   \message{** Hit return to continue: }%
  85.   \read -1  to \xxx
  86.   \typeout{}}
  87. \typeout{^^J%
  88.   After certain tests, LaTeX will pause so that you can read the^^J%
  89.   output without it scrolling off the screen.^^J%
  90.   When you are ready just hit <return> and LaTeX will continue.^^J%
  91.   When LaTeX pauses, you will see a prompt like the one below.^^J^^J%
  92.   If a test fails, a message will be displayed followed by^^J%
  93.   an error message starting `! BAD'.^^J%
  94.   LaTeX will quit if you try to scroll past some error messages.}
  95. \pause
  96. \typeout{^^J%
  97.   Checking the current directory syntax^^J%
  98.   =====================================}
  99. \newif\iftest\testfalse
  100. \ifx\@currdir\@undefined
  101.   \typeout{^^J%
  102.   \noexpand\@currdir is undefined !!^^J%
  103.   Something is seriously wrong with the LaTeX2e initialisation.^^J%
  104.   Either you have corrupted files or this is a LaTeX bug.}
  105.   \errmessage{BAD LaTeX2e system!!}
  106.   \expandafter\@@end
  107. \fi
  108. \ifx\@currdir\@empty
  109.   \typeout{^^J%
  110.   \noexpand\@currdir is defined to be empty.^^J%
  111.   This means that LaTeX can not distinguish between a file^^J%
  112.   aaaaa.tex^^J%
  113.   that exists in the current directory, and  a file aaaaa.tex^^J%
  114.   in another directory.^^J%
  115.   It may be that this Operating System has no concept of `directory'^^J%
  116.   in which case the setting is correct. If however it is possible to^^J%
  117.   uniquely refer to a file then a suitable definition of
  118.     \noexpand\@currdir^^J%
  119.   should be added to texsys.cfg, and the format remade.}
  120.   \pause
  121. \else
  122.   \typeout{^^J%
  123. \noexpand\@currdir is defined as
  124.     \expandafter\strip@prefix\meaning\@currdir^^J%
  125.   (Testing...)}
  126. \begingroup
  127. \endlinechar=-1
  128. \count@\time
  129. \divide\count@ 60
  130. \count2=-\count@
  131. \multiply\count2 60
  132. \advance\count2 \time
  133. \edef\today{%
  134.   \the\year/\two@digits{\the\month}/\two@digits{\the\day}:%
  135.     \two@digits{\the\count@}:\two@digits{\the\count2}}
  136.   \immediate\openout15=ltxcheck.aux
  137.   \immediate\write15{\today^^J}
  138.   \immediate\closeout15 %
  139.   \openin\@inputcheck\@currdir ltxcheck.aux %
  140.   \ifeof\@inputcheck
  141.     \typeout{\@currdir ltxcheck.aux  not found}%
  142.   \else
  143.     \read\@inputcheck to \reserved@a
  144.     \ifx\reserved@a\today
  145.       \typeout{\@currdir ltxcheck.aux found}
  146.       \testtrue
  147.     \else
  148.       \typeout{BAD: old file \reserved@a(should be \today)}%
  149.       \testfalse
  150.     \fi
  151.   \fi
  152.   \closein\@inputcheck
  153.   \iftest
  154.     \endgroup
  155.     \typeout{\noexpand \@currdir OK!}
  156.   \else
  157.   \endgroup
  158.   \typeout{^^J%
  159.     The LaTeX2e installation has defined \noexpand\@currdir^^J%
  160.     to be \expandafter\strip@prefix\meaning\@currdir.^^J%
  161.     This appears to be incorrect.^^J%
  162.     You should add a correct definition to texsys.cfg^^J%
  163.     and rebuild the format.}
  164.   \errmessage{BAD LaTeX2e system!!}
  165.   \expandafter\expandafter\expandafter\@@end
  166.   \fi
  167.   \pause
  168. \fi
  169. \typeout{^^J%
  170.   Checking the input path^^J%
  171.   =======================^^J}
  172. \begingroup
  173. \let\input@path\@undefined
  174. \ifx\@currdir\@empty\else
  175.   \IfFileExists{\@currdir article.cls}
  176.    {\typeout{%
  177.       article.cls appears to be in current directory!^^J^^J%
  178.       If this is the case, install article.cls into a^^J%
  179.       `standard input directory'^^J%
  180.       and copy ltxcheck.tex to another directory before^^J%
  181.       processing with LaTeX.^^J%
  182.       ^^J%
  183.       If article.cls is not in the current directory,^^J%
  184.       then you need to edit texsys.cfg.^^J%
  185.       Read the comments in that file. If nothing else works, add:^^J%
  186.       \string\let\string\@currdir\string\@empty^^J}%
  187.     \errhelp{Move files, or edit texsys.cfg}
  188.     \def\ArticleClassFoundInCurrentDirectory{%
  189.       This file should not be run in a `standard input directory'}
  190.     \errmessage{BAD: \ArticleClassFoundInCurrentDirectory}}
  191.     {}
  192. \fi
  193. \endgroup
  194. \IfFileExists{article.cls}
  195.   {\typeout{input path OK!}}
  196.   {\typeout{^^J%
  197.      LaTeX claims that article.cls is not on the system.^^J%
  198.      Either LaTeX has been incorrectly installed, or the
  199.      \noexpand\input@path^^J%
  200.      is incorrect. A correct definition should be added to^^J%
  201.      texsys.cfg, and the format remade.}
  202.    \pause
  203.    \typeout{^^J%
  204.      Typical definitions of \noexpand\input@path include:^^J^^J%
  205.      \string\let\string\input@path=\noexpand\@undefined
  206.       (the default definition)^^J^^J%
  207.      \string\def\string\input@path{\@percentchar^^J
  208.        {/usr/lib/tex/inputs/} {/usr/local/lib/tex/inputs/} }^^J^^J%
  209.      \string\def\string\input@path{\@percentchar^^J
  210.        {c:/tex/inputs/} {a:/} }^^J^^J%
  211.      \string\def\string\input@path{\@percentchar^^J
  212.        {tex_inputs:} {[SOMEWHERE.TEX.INPUTS]} }^^J}%
  213.    \pause
  214.    \typeout{^^J%
  215.      Note that \noexpand\input@path should be undefined
  216.        unless your^^J%
  217.      TeX installation does not make
  218.        \noexpand\openin and \noexpand\input^^J%
  219.      search the same directories.^^J%
  220.      If \noexpand\input@path is defined, entries should be^^J%
  221.      in the same syntax as \noexpand\@currdir^^J%
  222.      ie full directory names that may be concatenated with the^^J%
  223.      basename (note the final / and ] in the above examples).^^J%
  224.      Some systems may need more complicated settings.^^J%
  225.      See texsys.cfg for more examples.^^J%
  226.     ! BAD \noexpand\input@path!!}
  227.    \@@end}%
  228. \pause
  229. \typeout{^^J%
  230.   Checking the TeX version^^J%
  231.   ========================}
  232. \dimen@\ifx\@TeXversion\@undefined4\else\@TeXversion\fi\p@%
  233. \ifx\noboundary\relax
  234.   \typeout{^^J%
  235.     This is TeX 2. You will not be able to use all the new features^^J%
  236.     of LaTeX2e with such an old TeX.^^J%
  237.     The current version (1994/10/11) is TeX 3.1415.^^J%
  238.     Consider upgrading your TeX.}
  239.   \ifdim\dimen@<3\p@\else
  240.      \errhelp{Check that texsys.cfg has not defined \@TeXversion}
  241.      \def\OldTeX{%
  242.        BAD: \noexpand\@TeXversion is incorrect: \meaning\@TeXversion}
  243.      \errmessage{\OldTeX}
  244.   \fi
  245. \else
  246.     \ifdim\dimen@>3.14\p@
  247.       \typeout{This appears to be a recent version of TeX!^^J%
  248.        If the following `lines' all appear on the same line,^^J%
  249.        separated by \string^\string^J %
  250.        then there has been an incorrect installation.}
  251.     \else
  252.       \typeout{^^J%
  253.        This appears to be a TeX between 3.0 and 3.14^^J%
  254.        but the current version (1994/10/11) is TeX 3.1415^^J%
  255.        consider upgrading your TeX.^^J%
  256.        The following `lines' will appear on the same line,^^J%
  257.        separated by \string^\string^J;^^J%
  258.        the same problem may affect other messages from LaTeX.}
  259.      \fi
  260. \message{line1^^Jline2^^Jline3}
  261. \pause
  262. \fi
  263. \typeout{^^J%
  264.   Checking fonts^^J%
  265.   =====================================}
  266. \def\checkfont#1{%
  267.   \batchmode
  268.   \font\test=#1\relax
  269.   \errorstopmode
  270.   \ifx\test\nullfont
  271.     \typeout{\@spaces! BAD: #1.tfm not found!}
  272.     \@tempswatrue
  273.   \else
  274.     \typeout{\@spaces OK: #1.tfm found}
  275.   \fi}
  276. \typeout{^^JChecking Standard TeX fonts...}
  277. \@tempswafalse
  278. \checkfont{cmr10}
  279. \checkfont{cmr12}
  280. \checkfont{cmmi10}
  281. \if@tempswa
  282.   \errhelp{Obtain a complete standard TeX font distribution.}
  283.   \errmessage{BAD: Missing Standard Fonts}
  284. \fi
  285. \typeout{^^JChecking LaTeX Picture Mode fonts...}
  286. \@tempswafalse
  287. \checkfont{lcircle10}
  288. \checkfont{lcirclew10}
  289. \if@tempswa
  290.   \@tempswafalse
  291.   \checkfont{circle10}
  292.   \checkfont{circlew10}
  293.   \if@tempswa
  294.     \typeout{^^J! BAD: You do not have the picture mode fonts:^^J%
  295.            lcircle10 and lcirclew10}
  296.   \else
  297.     \typeout{^^J! BAD:%
  298.            You have the picture mode fonts with their old names:^^J%
  299.            circle10 and circlew10 have been renamed to^^J%
  300.            lcircle10 and lcirclew10}
  301.   \fi
  302.   \errhelp{Obtain a complete standard LaTeX font distribution.}
  303.   \errmessage{BAD: Missing LaTeX Fonts}
  304. \fi
  305. \typeout{^^JChecking Extra LaTeX Computer Modern fonts...}
  306. \@tempswafalse
  307. \checkfont{cmmib5}
  308. \checkfont{cmmib7}
  309. \checkfont{cmex7}
  310. \if@tempswa
  311. \typeout{! BAD:^^J%
  312.  LaTeX2e uses a few `extra' Computer Modern fonts produced by^^J%
  313.  The American Mathematical Society.^^J%
  314.  If you install The AMSFONTS font collection, then these, and other,^^J%
  315.  fonts will be available to LaTeX.^^J%
  316.  Although installing AMSFONTS is recommended, LaTeX does not require^^J%
  317.  The full collection; you may obtain a minimal set of extra LaTeX^^J%
  318.  fonts from any ctan archive, in the directory macros/latex/fonts/}
  319. \errhelp{Obtain LaTeX fonts or  the AMSFONTS collection.}
  320. \errmessage{BAD: Missing LaTeX Fonts}
  321. \fi
  322. \@@end
  323. \endinput
  324. %% 
  325. %% End of file `ltxcheck.tex'.
  326.