home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1996 November / VPR9611B.ISO / wintex / ams / amsltx11 / fontsel / tracefnt.sty < prev   
Text File  |  1993-02-24  |  7KB  |  177 lines

  1. %% 
  2. %% This is file `/usr2/distrib/latex209/nfss/tracefnt.sty' generated
  3. %% on <1991/11/22> with the docstrip utility (v1.1k). 
  4. %% 
  5. %% The original source files were:
  6. %% 
  7. %% tracefnt.doc  (with modules: `trace,style')
  8.  
  9. %% 
  10. %% Copyright (C) 1989,1990,1991 by Frank Mittelbach, Rainer Schoepf. 
  11. %% All rights reserved. 
  12. %% 
  13. %% This file is part of the NFSS (New Font Selection Scheme) package. 
  14. %% 
  15. %% IMPORTANT NOTICE: 
  16. %% 
  17. %% You are not allowed to change this file. You may however copy this file 
  18. %% to a file with a different name and then change the copy if you obey 
  19. %% the restrictions on file changes described in readme.mz. 
  20. %% 
  21. %% You are allowed to distribute this file under the condition that it is 
  22. %% distributed together with all files mentioned in readme.mz3. If you 
  23. %% receive only some of these files from someone, complain! 
  24. %% 
  25. %% You are NOT ALLOWED to distribute this file alone. You are NOT ALLOWED 
  26. %% to take money for the distribution or use of either this file or a 
  27. %% changed version, except for a nominal charge for copying etc. 
  28. %% 
  29. %% For error reports in case of UNCHANGED versions see readme files. 
  30. %% 
  31. %% Please do not request updates from us directly. Distribution is done 
  32. %% through Mail-Servers and TeX organizations. 
  33. %% 
  34. \def\fileversion{v1.0r}
  35. \def\filedate{90/08/27}
  36. \def\docdate {90/04/05}
  37.  
  38. %% \CheckSum{336}
  39. %% \CharacterTable
  40. %%  {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
  41. %%   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
  42. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  43. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  44. %%   Dollar        \$     Percent       \%     Ampersand     \&
  45. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  46. %%   Asterisk      \*     Plus          \+     Comma         \,
  47. %%   Minus         \-     Point         \.     Solidus       \/
  48. %%   Colon         \:     Semicolon     \;     Less than     \<
  49. %%   Equals        \=     Greater than  \>     Question mark \?
  50. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  51. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  52. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  53. %%   Right brace   \}     Tilde         \~}
  54. %%
  55. \@ifundefined{new@fontshape}
  56.  {\errmessage{The style option `tracefnt' does not make sense if you
  57.               do not use a format with the new font selection scheme.}
  58.   \endinput}
  59.   {}
  60.  \immediate\write\sixt@@n{Style Option: `tracefnt'
  61.  \fileversion\space <\filedate>  (FMi and RmS)}
  62. \immediate\write\sixt@@n{English Documentation
  63.  \@spaces\@spaces\space  <\docdate>  (FMi and RmS)}
  64. \immediate\write\sixt@@n{Includes module(s):
  65.  trace
  66. }
  67. \def\extract@font{%
  68.     \def\@tempa{\def\extract@fontinfo####1}%
  69.     \edef\@tempb{<\expandafter\strip@prefix\meaning\f@size>}%
  70.     \expandafter\@tempa\@tempb##2##3<##4\@nil{%
  71.       \global\expandafter\font \font@name
  72.            \ifcase0##2##3\relax\or
  73.                    ##3
  74.                     \font@warning{Font/shape
  75.                               `\f@family/\f@series/\f@shape'
  76.                               in size \@tempb\space  not available}%
  77.                     \font@warning{Using external font `##3'
  78.                                     instead}\else
  79.                   \default@errfont \errhelp\nofont@help
  80.                          \errmessage{Font \expandafter
  81.                                     \string\font@name\space
  82.                                     not found}%
  83.                \fi
  84.    \ifnum \tracingfonts >\@ne
  85.    \typeout{Loading external  ##2##3 as \font@name
  86.             \on@line}\fi
  87.               }%
  88.     \edef\font@info{\expandafter\expandafter\expandafter\string
  89.         \csname \f@family/\f@series/\f@shape \endcsname\@tempb}%
  90.     \expandafter\extract@fontinfo\font@info 3<\@nil
  91.     \csname +\f@family \expandafter
  92.        \endcsname \font@name \relax}
  93.  
  94. \def\p@selectfont{%
  95.     \xdef\font@name{%
  96.       \csname\f@family/\f@series/\f@shape/\f@size\endcsname}%
  97.     \pickup@font
  98.     \font@name
  99.  \ifnum \tracingfonts>\tw@
  100.    \typeout{Switching to \font@name \on@line}\fi
  101.     \ifx \glb@currsize \lcl@currsize
  102.      \else
  103.     \setnew@baselineskip
  104.     \baselineskip\baselinestretch\baselineskip
  105.     \setbox\strutbox\hbox{\vrule\@height.7\baselineskip
  106.         \@depth.3\baselineskip \@width\z@}%
  107.     \normalbaselineskip\baselineskip
  108.  \ifnum \tracingfonts>\tw@
  109.    \typeout{Changing size or baselineskip ...}\fi
  110.      \glb@settings \the\every@size
  111.  \ifnum \tracingfonts>\tw@
  112.    \aftergroup\type@restoreinfo \fi
  113.        \aftergroup\glb@settings \fi
  114.  \ifnum \tracingfonts>\tw@
  115.   \gdef\font@restore{\xdef\font@name{%
  116.     \csname\f@family/\f@series/\f@shape/\f@size\endcsname}%
  117.     \typeout{Restoring \space\space\space\font@name \on@line}%
  118.     \global\let\font@restore\@empty}%
  119.    \aftergroup\font@restore
  120.  \fi
  121.     }
  122.  \def\type@restoreinfo{\typeout{Restoring size
  123.                        or baselineskip ...}}
  124. \def\baselinestretch{1}
  125. \newtoks\every@size
  126. \every@size={}
  127. \def\use@mathgroup#1#2{\relax\ifmmode
  128.  \ifnum \tracingfonts>\tw@
  129.    \count@#2\relax
  130.    \typeout{Switching to \string\mathgroup\space #2
  131.             (\the\count@)\on@line}\fi
  132.      \math@bgroup
  133.          #1\mathgroup#2\relax
  134.      \expandafter\math@egroup\fi}%
  135.  \ifx\math@bgroup\begingroup
  136.    \def\math@egroup#1{#1\endgroup
  137.      \ifnum \tracingfonts>\tw@
  138.     \typeout{Restoring \space\space\space\string\mathgroup\space
  139.        (\ifnum\mathgroup=\m@ne default\else \the\mathgroup \fi)%
  140.              \on@line}\fi}
  141.  \fi
  142. \def\getanddefine@fonts#1#2{%
  143.  \ifnum \tracingfonts>\tw@
  144.  \count@#1\relax
  145.    \typeout{Setting up \string\mathgroup\space #1 (\the\count@)
  146.             as \string#2 \f@size/\sf@size/\ssf@size\on@line}\fi
  147.   \xdef\font@name{\csname \string#2/\f@size\endcsname}%
  148.   \pickup@font \let\textfont@name\font@name
  149.   \xdef\font@name{\csname \string#2/\sf@size\endcsname}%
  150.   \pickup@font \let\scriptfont@name\font@name
  151.   \xdef\font@name{\csname \string#2/\ssf@size\endcsname}%
  152.   \pickup@font
  153.   \edef\math@fonts{\math@fonts
  154.                \textfont#1\textfont@name
  155.                \scriptfont#1\scriptfont@name
  156.                \scriptscriptfont#1\font@name}%
  157.     }
  158. \def\tracingfonts{\font@warning{\string\tracingfonts\space
  159.                   command not provided.^^J
  160.                   Use `tracefnt' option in \string\documentstyle\space
  161.                   command.^^J Command found:}%
  162.                   \count@}
  163.    \newcount\tracingfonts
  164.  \tracingfonts=1
  165. \def\font@warning#1{%
  166.  \ifnum\tracingfonts>\z@
  167.  \errhelp{This is only a warning message but it gives you^^J%
  168.           time to think about the font substitution above.}%
  169.  \errmessage{Warning: #1}\else
  170.           \immediate\write\sixt@@n{Warning: #1\on@line.}%
  171.  \fi
  172.           }
  173.  
  174. \endinput
  175. %% 
  176. %% End of file `/usr2/distrib/latex209/nfss/tracefnt.sty'.
  177.