home *** CD-ROM | disk | FTP | other *** search
/ APDL Public Domain 1 / APDL_PD1A.iso / textutil / tex / source / latex_2e_1 / nfssfont.tex < prev    next >
Encoding:
Text File  |  1994-09-26  |  11.9 KB  |  284 lines

  1. %% 
  2. %% This is file `nfssfont.tex', generated 
  3. %% on <1994/9/26> with the docstrip utility (2.2h).
  4. %% 
  5. %% The original source files were:
  6. %% 
  7. %% nfssfont.dtx  (with options: `code')
  8. %% 
  9. %% Copyright 1994 the LaTeX3 project and the individual authors. 
  10. %% All rights reserved. For further copyright information see the file 
  11. %% legal.txt, and any other copyright indicated in this file. 
  12. %% 
  13. %% This file is part of the LaTeX2e system. 
  14. %% ---------------------------------------- 
  15. %% 
  16. %% This system is distributed in the hope that it will be useful, 
  17. %% but WITHOUT ANY WARRANTY; without even the implied warranty of 
  18. %% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
  19. %% 
  20. %% 
  21. %% IMPORTANT NOTICE: 
  22. %% 
  23. %% For error reports in case of UNCHANGED versions see bugs.txt. 
  24. %% 
  25. %% Please do not request updates from us directly. Distribution is 
  26. %% done through Mail-Servers and TeX organizations. 
  27. %% 
  28. %% You are not allowed to change this file. 
  29. %% 
  30. %% You are allowed to distribute this file under the condition that 
  31. %% it is distributed together with all files mentioned in manifest.txt. 
  32. %% 
  33. %% If you receive only some of these files from someone, complain! 
  34. %% 
  35. %% You are NOT ALLOWED to distribute this file alone. You are NOT 
  36. %% ALLOWED to take money for the distribution or use of either this 
  37. %% file or a changed version, except for a nominal charge for copying 
  38. %% etc. 
  39. \def\fileversion{v2.0c}
  40. \def\filedate{1994/02/26}
  41. \def\docdate {1993/02/26}
  42.  
  43. %% \CharacterTable
  44. %%  {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
  45. %%   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
  46. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  47. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  48. %%   Dollar        \$     Percent       \%     Ampersand     \&
  49. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  50. %%   Asterisk      \*     Plus          \+     Comma         \,
  51. %%   Minus         \-     Point         \.     Solidus       \/
  52. %%   Colon         \:     Semicolon     \;     Less than     \<
  53. %%   Equals        \=     Greater than  \>     Question mark \?
  54. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  55. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  56. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  57. %%   Right brace   \}     Tilde         \~}
  58. \documentstyle{article}               %FMi
  59. \nofiles                              %FMi
  60. \textwidth=470pt                      %FMi
  61. \oddsidemargin=0pt                    %FMi
  62. \textheight=1000pt                    %FMi
  63. \def\sevenrm{\fontsize{7}{9pt}\rmfamily}    %FMi
  64.  
  65. \typeout{**********************************************}
  66. \typeout{* NFSS font test program version <\fileversion>}
  67. \typeout{*}
  68. \typeout{* Follow the instructions}
  69. \typeout{**********************************************}
  70. \typeout{}
  71.  
  72. \tracinglostchars=0
  73. \tolerance=1000
  74. \raggedbottom
  75. \parindent=0pt
  76. \hyphenpenalty=200
  77. \doublehyphendemerits=30000
  78. \newcount\m \newcount\n \newcount\p \newdimen\dim
  79. \chardef\other=12
  80.  
  81. \def\today{\ifcase\month\or
  82.   January\or February\or March\or April\or May\or June\or
  83.   July\or August\or September\or October\or November\or December\fi
  84.   \space\number\day, \number\year}
  85. \def\hours{\n=\time \divide\n 60
  86.   \m=-\n \multiply\m 60 \advance\m \time
  87.   \twodigits\n\twodigits\m}
  88. \def\twodigits#1{\ifnum #1<10 0\fi \number#1}
  89.  
  90. \def\init{\message{^^JName of the font to test = }
  91.   \read-1 to\fontname \startfont
  92.   \message{Now type a test command (\string\help\space for help):}}
  93. \def\startfont{\font\testfont=\fontname
  94.   \leftline{\sevenrm Test of \fontname\unskip\ on \today\ at \hours}
  95.   \medskip
  96.   \testfont \setbaselineskip
  97.   \ifdim\fontdimen6\testfont<10pt \rightskip=0pt plus 20pt
  98.   \else\rightskip=0pt plus 2em \fi
  99.   \spaceskip=\fontdimen2\testfont % space between words (\raggedright)
  100.   \xspaceskip=\fontdimen2\testfont \advance\xspaceskip
  101.   by\fontdimen7\testfont}
  102. {\catcode`\|=0 \catcode`\\=\other
  103. |gdef|help{|message{%
  104. \init switches to another font;^^J%
  105. \end or \bye finishes the run;^^J%
  106. \table prints the font layout in tabular format;^^J%
  107. \text prints a sample text, assuming TeX text font conventions;^^J%
  108. \sample combines \table and \text;^^J%
  109. \mixture mixes a background character with a series of others;^^J%
  110. \alternation interleaves a background character with a series;^^J%
  111. \alphabet prints all lowercase letters within a given background;^^J%
  112. \ALPHABET prints all uppercase letters within a given background;^^J%
  113. \series prints a series of letters within a given background;^^J%
  114. \lowers prints a comprehensive test of lowercase;^^J%
  115. \uppers prints a comprehensive test of uppercase;^^J%
  116. \digits prints a comprehensive test of numerals;^^J%
  117. \math prints a comprehensive test of TeX math italic;^^J%
  118. \names prints a text that mixes upper and lower case;^^J%
  119. \punct prints a punctuation test;^^J%
  120. \bigtest combines many of the above routines;^^J%
  121. \help repeats this message;^^J%
  122. and you can use ordinary TeX commands (e.g., to \input a file).}}}
  123.  
  124. \def\setbaselineskip{\setbox0=\hbox{\n=0
  125. \loop\char\n \ifnum \n<255 \advance\n 1 \repeat}
  126. \baselineskip=6pt \advance\baselineskip\ht0 \advance\baselineskip\dp0 }
  127. \def\setchar#1{{\escapechar-1\message{\string#1 character = }%
  128.   \def\do##1{\catcode`##1=\other}\dospecials
  129.   \read-1 to\next
  130.   \expandafter\finsetchar\next\next#1}}
  131. \def\finsetchar#1#2\next#3{\global\chardef#3=`#1
  132.   \ifnum #3=`\# \global\chardef#3=#2 \fi}
  133. \def\promptthree{\setchar\background
  134.   \setchar\starting \setchar\ending}
  135.  
  136. \def\mixture{\promptthree \domix\mixpattern}
  137. \def\alternation{\promptthree \domix\altpattern}
  138. \def\mixpattern{\0\1\0\0\1\1\0\0\0\1\1\1\0\1}
  139. \def\altpattern{\0\1\0\1\0\1\0\1\0\1\0\1\0\1\0\1\0}
  140. \def\domix#1{\par\chardef\0=\background \n=\starting
  141.   \loop \chardef\1=\n #1\endgraf
  142.   \ifnum \n<\ending \advance\n 1 \repeat}
  143.  
  144. \def\!{\discretionary{\background}{\background}{\background}}
  145. \def\series{\promptthree \!\doseries\starting\ending\par}
  146. \def\doseries#1#2{\n=#1\loop\char\n\!\ifnum\n<#2\advance\n 1 \repeat}
  147. \def\complower{\!\doseries{`a}{`z}\doseries{'31}{'34}\par}
  148. \def\compupper{\!\doseries{`A}{`Z}\doseries{'35}{'37}\par}
  149. \def\compdigs{\!\doseries{`0}{`9}\par}
  150. \def\alphabet{\setchar\background\complower}
  151. \def\ALPHABET{\setchar\background\compupper}
  152.  
  153. \def\lowers{\docomprehensive\complower{`a}{`z}{'31}{'34}}
  154. \def\uppers{\docomprehensive\compupper{`A}{`Z}{'35}{'37}}
  155. \def\digits{\docomprehensive\compdigs{`0}{`4}{`5}{`9}}
  156. \def\docomprehensive#1#2#3#4#5{\par\chardef\background=#2
  157.   \loop{#1} \ifnum\background<#3\m=\background\advance\m 1
  158.   \chardef\background=\m \repeat \chardef\background=#4
  159.   \loop{#1} \ifnum\background<#5\m=\background\advance\m 1
  160.   \chardef\background=\m \repeat}
  161. \def\names{ {\AA}ngel\aa\ Beatrice Claire
  162.   Diana \'Erica Fran\c{c}oise Ginette H\'el\`ene Iris
  163.   Jackie K\=aren {\L}au\.ra Mar{\'\i}a N\H{a}ta{\l}{\u\i}e {\O}ctave
  164.   Pauline Qu\^eneau Roxanne Sabine T\~a{\'\j}a Ur\v{s}ula
  165.   Vivian Wendy Xanthippe Yv{\o}nne Z\"azilie\par}
  166. \def\punct{\par\dopunct{min}\dopunct{pig}\dopunct{hid}
  167.   \dopunct{HIE}\dopunct{TIP}\dopunct{fluff}
  168.   \$1,234.56 + 7/8 = 9\% @ \#0\par}
  169. \def\dopunct#1{#1,\ #1:\ #1;\ `#1'\ ?`#1?\ !`#1!\ (#1)\ [#1]\
  170.                #1*\ #1.\par}
  171.  
  172. \def\bigtest{\sample
  173.   hamburgefonstiv HAMBURGEFONSTIV\par
  174.   \names \punct \lowers \uppers \digits}
  175.  
  176. \def\math{\textfont1=\testfont \skewchar\testfont=\skewtrial
  177.  \mathchardef\Gamma="100 \mathchardef\Delta="101
  178.  \mathchardef\Theta="102 \mathchardef\Lambda="103 \mathchardef\Xi="104
  179.  \mathchardef\Pi="105 \mathchardef\Sigma="106 \mathchardef\Upsilon="107
  180.  \mathchardef\Phi="108 \mathchardef\Psi="109 \mathchardef\Omega="10A
  181.  \def\ii{i} \def\jj{j}
  182.  \def\\##1{|##1|+}\mathtrial
  183.  \def\\##1{##1_2+}\mathtrial
  184.  \def\\##1{##1^2+}\mathtrial
  185.  \def\\##1{##1/2+}\mathtrial
  186.  \def\\##1{2/##1+}\mathtrial
  187.  \def\\##1{##1,{}+}\mathtrial
  188.  \def\\##1{d##1+}\mathtrial
  189.  \let\ii=\imath \let\jj=\jmath \def\\##1{\hat##1+}\mathtrial}
  190. \newcount\skewtrial \skewtrial='177
  191. \def\mathtrial{$\\A \\B \\C \\D \\E \\F \\G \\H \\I \\J \\K \\L \\M \\N
  192.  \\O \\P \\Q \\R \\S \\T \\U \\V \\W \\X \\Y \\Z \\a \\b \\c \\d \\e \\f
  193.  \\g \\h \\\ii \\\jj \\k \\l \\m \\n \\o \\p \\q \\r \\s \\t \\u \\v \\w
  194.  \\x \\y \\z \\\alpha \\\beta \\\gamma \\\delta \\\epsilon \\\zeta
  195.  \\\eta \\\theta \\\iota \\\kappa \\\lambda \\\mu \\\nu \\\xi \\\pi
  196.  \\\rho \\\sigma \\\tau \\\upsilon \\\phi \\\chi \\\psi \\\omega
  197.  \\\vartheta \\\varpi \\\varphi \\\Gamma \\\Delta \\\Theta \\\Lambda
  198.  \\\Xi \\\Pi \\\Sigma \\\Upsilon \\\Phi \\\Psi \\\Omega \\\partial
  199.  \\\ell \\\wp$\par}
  200. \def\mathsy{\begingroup\skewtrial='060 % for math symbol font tests
  201.  \def\mathtrial{$\\A \\B \\C \\D \\E \\F \\G \\H \\I \\J \\K \\L
  202.   \\M \\N \\O \\P \\Q \\R \\S \\T \\U \\V \\W \\X \\Y \\Z$\par}
  203.  \math\endgroup}
  204. \def\oct#1{\hbox{\rmfamily\'{}\kern-.2em\itshape
  205.            #1\/\kern.05em}} % octal constant
  206. \def\hex#1{\hbox{\rmfamily\H{}\ttfamily#1}} % hexadecimal constant
  207. \def\setdigs#1"#2{\gdef\h{#2}% \h=hex prefix; \0\1=corresponding octal
  208.  \m=\n \divide\m by 64 \xdef\0{\the\m}%
  209.  \multiply\m by-64 \advance\m by\n \divide\m by 8 \xdef\1{\the\m}}
  210. \def\testrow{\setbox0=\hbox{\penalty 1\def\\{\char"\h}%
  211.  \\0\\1\\2\\3\\4\\5\\6\\7\\8\\9\\A\\B\\C\\D\\E\\F%
  212.  \global\p=\lastpenalty}} % \p=1 if none of the characters exist
  213. \def\oddline{\cr
  214.   \noalign{\nointerlineskip}
  215.   \multispan{19}\hrulefill&
  216.   \setbox0=\hbox{\lower 2.3pt\hbox{\hex{\h x}}}\smash{\box0}\cr
  217.   \noalign{\nointerlineskip}}
  218. \newif\ifskipping
  219. \def\evenline{\loop\skippingfalse
  220.  \ifnum\n<256 \m=\n \divide\m 16 \chardef\next=\m
  221.  \expandafter\setdigs\meaning\next \testrow
  222.  \ifnum\p=1 \skippingtrue \fi\fi
  223.  \ifskipping \global\advance\n 16 \repeat
  224.  \ifnum\n=256 \let\next=\endchart\else\let\next=\morechart\fi
  225.  \next}
  226. \def\morechart{\cr\noalign{\hrule\penalty5000}
  227.  \chartline \oddline \m=\1 \advance\m 1 \xdef\1{\the\m}
  228.  \chartline \evenline}
  229. \def\chartline{&\oct{\0\1x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&&\:&&}
  230. \def\chartstrut{\lower4.5pt\vbox to14pt{}}
  231. \def\table{$$\global\n=0
  232.   \halign to\hsize\bgroup
  233.     \chartstrut##\tabskip0pt plus10pt&
  234.     &\hfil##\hfil&\vrule##\cr
  235.     \lower6.5pt\null
  236.     &&&\oct0&&\oct1&&\oct2&&\oct3&&\oct4&&\oct5&&\oct6&&\oct7&\evenline}
  237. \def\endchart{\cr\noalign{\hrule}
  238.   \raise11.5pt\null&&&\hex 8&&\hex 9&&\hex A&&\hex B&
  239.   &\hex C&&\hex D&&\hex E&&\hex F&\cr\egroup$$\par}
  240. \def\:{\setbox0=\hbox{\char\n}%
  241.   \ifdim\ht0>7.5pt\reposition
  242.   \else\ifdim\dp0>2.5pt\reposition\fi\fi
  243.   \box0\global\advance\n 1 }
  244. \def\reposition{\setbox0=\vbox{\kern2pt\box0}\dim=\dp0
  245.   \advance\dim 2pt \dp0=\dim}
  246. \def\centerlargechars{
  247.   \def\reposition{\setbox0=\hbox{$\vcenter{\kern2pt\box0\kern2pt}$}}}
  248. \def\text{{\advance\baselineskip-4pt
  249. \setbox0=\hbox{abcdefghijklmnopqrstuvwxyz}
  250. \ifdim\hsize>2\wd0
  251.    \ifdim 15pc>2\wd0 \hsize=15pc \else \hsize=2\wd0 \fi
  252. \fi
  253. On November 14, 1885, Senator \& Mrs.~Leland Stanford called together
  254. at their San Francisco mansion the 24~prominent men who had been
  255. chosen as the first trustees of The Leland Stanford Junior University.
  256. They handed to the board the Founding Grant of the University, which
  257. they had executed three days before. This document---with various
  258. amendments, legislative acts, and court decrees---remains as the
  259. University's charter.  In bold, sweeping language it stipulates that
  260. the objectives of the University are ``to qualify students for
  261. personal success and direct usefulness in life; and to promote the
  262. publick welfare by exercising an influence in behalf of humanity and
  263. civilization, teaching the blessings of liberty regulated by law, and
  264. inculcating love and reverence for the great principles of government
  265. as derived from the inalienable rights of man to life, liberty, and
  266. the pursuit of happiness.'' \moretext
  267. (!`THE DAZED BROWN FOX QUICKLY GAVE 12345--67890 JUMPS!)\par}}
  268. \def\moretext{?`But aren't Kafka's Schlo{\ss} and {\AE}sop's
  269. {\OE}uvres often na{\"\i}ve vis-\`a-vis the d{\ae}monic ph{\oe}nix's
  270. official r\^ole in fluffy souffl\'es? }
  271. \def\omitaccents{\let\moretext=\relax}
  272.  
  273. \def\sample{\table\text}
  274. \def\bye{\end{document}}       %FMi
  275. \let\oldtypeout\typeout        %FMi
  276. \def\typeout#1{}               %FMi
  277. \begin{document}               %FMi
  278. \let\typeout\oldtypeout        %FMi
  279.  
  280. \ifx\noinit!\else\init\fi
  281. \endinput
  282. %% 
  283. %% End of file `nfssfont.tex'.
  284.