diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-12 23:51:55 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-12 23:51:55 +0000 |
commit | 184c6126d990c544f34b1db967c1d91c4973dfb7 (patch) | |
tree | 338df2ad299e47342b2b8bef05a95c7f1c802555 /Master/texmf-dist/tex/latex/base/tracefnt.sty | |
parent | 5a275789faf2cac524744b203794259d7b974c36 (diff) |
base
git-svn-id: svn://tug.org/texlive/trunk@694 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/base/tracefnt.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/base/tracefnt.sty | 249 |
1 files changed, 249 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/base/tracefnt.sty b/Master/texmf-dist/tex/latex/base/tracefnt.sty new file mode 100644 index 00000000000..e678281f999 --- /dev/null +++ b/Master/texmf-dist/tex/latex/base/tracefnt.sty @@ -0,0 +1,249 @@ +%% +%% This is file `tracefnt.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% ltfsstrc.dtx (with options: `package,trace') +%% +%% This is a generated file. +%% +%% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 +%% The LaTeX3 Project and any individual authors listed elsewhere +%% in this file. +%% +%% This file was generated from file(s) of the LaTeX base system. +%% -------------------------------------------------------------- +%% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2003/12/01 or later. +%% +%% This file has the LPPL maintenance status "maintained". +%% +%% This file may only be distributed together with a copy of the LaTeX +%% base system. You may however distribute the LaTeX base system without +%% such generated files. +%% +%% 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. +%%% From File: ltfsstrc.dtx +%% Copyright (C) 1989-97 by Frank Mittelbach and Rainer Sch\"opf. +%% Copyright (C) 1994-97 by LaTeX3 project. All rights reserved. +\NeedsTeXFormat{LaTeX2e}[1995/05/16] +\ProvidesPackage{tracefnt} + [1997/05/29 v3.0j Standard LaTeX package (font tracing)] +\newcount\tracingfonts +\tracingfonts=0 +\DeclareOption{errorshow}{% + \def\@font@info#1{% + \GenericInfo{(Font)\@spaces\@spaces\@spaces\space\space}% + {LaTeX Font Info: \space\space\space#1}}% + \def\@font@warning#1{% + \GenericInfo{(Font)\@spaces\@spaces\@spaces\space\space}% + {LaTeX Font Warning: #1}}% + } +\DeclareOption{warningshow}{% + \def\@font@info#1{% + \GenericInfo{(Font)\@spaces\@spaces\@spaces\space\space}% + {LaTeX Font Info: \space\space\space#1}}% + \def\@font@warning#1{% + \GenericWarning{(Font)\@spaces\@spaces\@spaces\space\space}% + {LaTeX Font Warning: #1}}% + } +\DeclareOption{infoshow}{% + \def\@font@info#1{% + \GenericWarning{(Font)\@spaces\@spaces\@spaces\space\space}% + {LaTeX Font Info: \space\space\space#1}}% + \def\@font@warning#1{% + \GenericWarning{(Font)\@spaces\@spaces\@spaces\space\space}% + {LaTeX Font Warning: #1}}% + } +\DeclareOption{loading}{% + \tracingfonts\tw@ + } +\DeclareOption{debugshow}{% + \ExecuteOptions{infoshow}% + \tracingfonts\thr@@ + } +\DeclareOption{pausing}{% + \def\@font@warning#1{% + \GenericError + {(Font)\@spaces\@spaces\@spaces\space\space}% + {LaTeX Font Warning: #1}% + {See the LaTeX Companion for details.}% + {I'll stop for every LaTeX Font Warning because + you requested\MessageBreak the `pausing' option + to the tracefnt package.}}% + } +\ExecuteOptions{infoshow} +\ProcessOptions +\def\extract@font{% + \get@external@font + \global\expandafter\font\font@name\external@font\relax + \ifnum \tracingfonts >\@ne + \@font@info{External font `\external@font' + loaded as\MessageBreak \font@name}\fi + \font@name \relax + \csname \f@encoding+\f@family\endcsname + \csname\curr@fontshape\endcsname + \relax + } +\DeclareRobustCommand\selectfont + {% + \ifx\f@linespread\baselinestretch \else + \set@fontsize\baselinestretch\f@size\f@baselineskip \fi + \xdef\font@name{% + \csname\curr@fontshape/\f@size\endcsname}% + \pickup@font + \font@name + \ifnum \tracingfonts>\tw@ + \@font@info{Switching to \font@name}\fi + \size@update + \enc@update + } +\def\set@fontsize#1#2#3{% + \@defaultunits\@tempdimb#2pt\relax\@nnil + \edef\f@size{\strip@pt\@tempdimb}% + \@defaultunits\@tempskipa#3pt\relax\@nnil + \edef\f@baselineskip{\the\@tempskipa}% + \edef\f@linespread{#1}% + \let\baselinestretch\f@linespread + \def\size@update{% + \baselineskip\f@baselineskip\relax + \baselineskip\f@linespread\baselineskip + \normalbaselineskip\baselineskip + \setbox\strutbox\hbox{% + \vrule\@height.7\baselineskip + \@depth.3\baselineskip + \@width\z@}% + \ifnum \tracingfonts>\tw@ + \ifx\f@linespread\@empty + \let\reserved@a\@empty + \else + \def\reserved@a{\f@linespread x}% + \fi + \@font@info{Changing size to \f@size/\reserved@a + \f@baselineskip}% + \aftergroup\type@restoreinfo \fi + \let\size@update\relax}% + } +\let\size@update\relax + \def\type@restoreinfo{% + \ifx\f@linespread\@empty + \let\reserved@a\@empty + \else + \def\reserved@a{\f@linespread x}% + \fi + \@font@info{Restoring size to + \f@size/\reserved@a\f@baselineskip}} +\def\glb@settings{% + \expandafter\ifx\csname S@\f@size\endcsname\relax + \calculate@math@sizes + \fi + \csname S@\f@size\endcsname + \ifmath@fonts + \ifnum \tracingfonts>\tw@ + \@font@info{Setting up math fonts for + \f@size/\f@baselineskip}\fi + \begingroup + \escapechar\m@ne + \csname mv@\math@version \endcsname + \globaldefs\@ne + \math@fonts + \let \glb@currsize \f@size + \endgroup + \the\every@math@size + \else + \ifnum \tracingfonts>\tw@ + \@font@info{No math setup for + \f@size/\f@baselineskip}\fi + \fi +} +\def\check@mathfonts{% + \ifx \glb@currsize \f@size + \ifnum \tracingfonts>\thr@@ + \@font@info{*** MATH: no change \f@size\space + curr/global (\curr@math@size/\glb@currsize)}\fi + \else + \ifnum \tracingfonts>\thr@@ + \@font@info{*** MATH: setting up \f@size\space + curr/global (\curr@math@size/\glb@currsize)}\fi + \glb@settings + \init@restore@glb@settings + \fi + \let\curr@math@size\f@size + \def\init@restore@glb@settings{\aftergroup\restglb@settings}% +} +\def\init@restore@glb@settings{% + \ifnum \tracingfonts>\thr@@ + \@font@info{*** MATH: no resetting (not in + nested math)}\fi +} +\def\restglb@settings{% + \ifnum \tracingfonts>\thr@@ + \@font@info{*** MATH: restoring}\fi + \begingroup + \let\f@size\curr@math@size + \ifx\glb@currsize \f@size + \ifnum \tracingfonts>\thr@@ + \@font@info{*** MATH: ... already okay (\f@size)}\fi + \else + \ifnum \tracingfonts>\thr@@ + \@font@info{*** MATH: ... to \f@size}\fi + \glb@settings + \fi + \endgroup +} +\def\use@mathgroup#1#2{\relax\ifmmode + \ifnum \tracingfonts>\tw@ + \count@#2\relax + \@font@info{Using \noexpand\mathgroup + (\the\count@) #2}\fi + \math@bgroup + \expandafter\ifx\csname M@\f@encoding\endcsname#1\else + #1\fi + \mathgroup#2\relax + \expandafter\math@egroup\fi}% + \ifx\math@bgroup\bgroup + \def\math@egroup#1{#1\egroup + \ifnum \tracingfonts>\tw@ + \@font@info{Restoring \noexpand\mathgroup + (\ifnum\mathgroup=\m@ne default\else \the\mathgroup \fi)% + }\fi} + \fi +\def\getanddefine@fonts#1#2{% + \ifnum \tracingfonts>\tw@ + \count@#1\relax + \@font@info{\noexpand\mathgroup (\the\count@) #1 :=\MessageBreak + \string#2 \tf@size/\sf@size/\ssf@size}\fi + \xdef\font@name{\csname \string#2/\tf@size\endcsname}% + \pickup@font \let\textfont@name\font@name + \xdef\font@name{\csname \string#2/\sf@size\endcsname}% + \pickup@font \let\scriptfont@name\font@name + \xdef\font@name{\csname \string#2/\ssf@size\endcsname}% + \pickup@font + \edef\math@fonts{\math@fonts + \textfont#1\textfont@name + \scriptfont#1\scriptfont@name + \scriptscriptfont#1\font@name}% + } +\def\execute@size@function#1{% %%% could be added to autoload as well + \@ifundefined{s@fct@#1}% + {\errmessage{Undefined font size function #1}% + \s@fct@}% + {\csname s@fct@#1\endcsname}% +} +\def\fontsubfuzz{0pt} +\endinput +%% +%% End of file `tracefnt.sty'. |