diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-17 21:41:51 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-17 21:41:51 +0000 |
commit | 487ca4806cc046076293cf6cc5fbba0db282bac7 (patch) | |
tree | 847b412ab5158dd7bdd7ed7e5a4cc3fbca94be32 /Build/source/texk/dvipsk/contrib/timesmat.sty | |
parent | a3d3111bfe26b8e5f5bc6049dfb2a4ca2edc7881 (diff) |
texk 1
git-svn-id: svn://tug.org/texlive/trunk@1485 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/dvipsk/contrib/timesmat.sty')
-rw-r--r-- | Build/source/texk/dvipsk/contrib/timesmat.sty | 291 |
1 files changed, 291 insertions, 0 deletions
diff --git a/Build/source/texk/dvipsk/contrib/timesmat.sty b/Build/source/texk/dvipsk/contrib/timesmat.sty new file mode 100644 index 00000000000..94a4edd2044 --- /dev/null +++ b/Build/source/texk/dvipsk/contrib/timesmat.sty @@ -0,0 +1,291 @@ +\message{timesmat.sty - original by KHC, edited by DIL for pt sizes} +% This style uses Times Roman as much as possible in math mode. +% It is a replacement for times.sty, not an addition +% +\def\fileversion{PSNFSS 2.4} +\def\filedate{16.7.93} +\immediate\write\sixt@@n{File: `timesmat.sty' +\fileversion\ <\filedate> (KHC, DIL, SH)} +% Copyright 1993 by Kin Hoong Chung. +% +% You are allowed to distribute this file. You are not allowed to +% charge money for the distribution of this file. +% +% May need further hacking, depending on the version of Times encoding +% that you use. The version I use has the various capital Greek +% letters hacked in from Symbol. This is not fully tested... it may +% be missing some other maths characters or text characters for TeX. +% Seems to be compatible with AMS-LaTeX. +% +% Altered by Dave Laurenson (dil@castle.ed.ac.uk) to work with +% oldlfont.sty and 10pt, 11pt and 12pt document styles. +% The same changes also made by Sven Heemeyer. Thanks to both. +% +% merged together by S Rahtz July 1993 +% ------------------------------------------------------------ +% Known bugs: +% +% Times italic maths characters should have their own TFM, AFM, etc, for +% better spacing of fonts. +% +% Room for directly addressable maths mode fonts seems to be limited, I +% don't know why yet... +% +% Postscript accents behave in a different way to CMR accents, so that +% there is \mathaccent fails. Present correction merely replaces the +% Times accents with CMR ones. Accents in maths mode should be Times accents. + +% check if nfss exists +\@ifundefined{selectfont} + {\@latexerr{`timesmat' style option can only be used + with the new font selection scheme}\@eha + \endinput}{} +% +\ifx\declare@font\undefined + \input{psnfss.sup}\fi +% +% load required PostScript (tm) fonts. +\def\load@courier{% +\postscript@fontdef{Courier}{courier}% +{pcrr}{pcrro}{pcrb}{pcrbo}{pcrr}{pcrr} +} +\def\load@helvetica{% +\postscript@fontdef[.85333]{Helvetica}{helvetica}% +{phvr}{phvro}{phvb}{phvbo}{phvrc}{phvro} +} +\def\load@times{% +\postscript@fontdef{Times}{times}% +{ptmr}{ptmri}{ptmb}{ptmbi}{ptmrc}{ptmro} +} +% +\romanfont{times} %make default Roman font Times-Roman. +\sansfont{helvetica} %Sans serif is Helvetica +\typewriterfont{courier} %\tt is Courier + +\def\default@family{times} %Tell AMS-LaTeX that Times-Roman is default. + +% put back dotless i,j +% \def\i{{\family{cmr}\selectfont\char"10}} +\def\j{{\family{cmr}\selectfont\char"11}} + +% Make Times the default maths font. +\late@define@mathgroup\mv@normal{0} + {times}{m}{n} +\late@define@mathgroup\mv@normal{1} + {times}{m}{it} +% Tell TeX that Times is the default maths font. + +\expandafter\font\csname times/m/n/10\endcsname=ptmr +\textfont0=\csname times/m/n/10\endcsname +\scriptfont0=\csname times/m/n/10\endcsname +\scriptscriptfont0=\csname times/m/n/10\endcsname + +\expandafter\font\csname times/m/it/10\endcsname=ptmri +\textfont1=\csname times/m/it/10\endcsname +\scriptfont1=\csname times/m/it/10\endcsname +\scriptscriptfont1=\csname times/m/it/10\endcsname + +% make the \boldmath option work in Times. +\late@define@mathgroup\mv@bold{0} + {times}{bx}{n} +\late@define@mathgroup\mv@bold{1} + {times}{bx}{it} + +% Put cmmi back into TeX, as a new maths alphabet, so that we can get +% back the Greek & other characters missing in Times. +\def\cmmath{\protect\pcmmath} +\def\pcmmath{\RIfM@\expandafter\cmmath@\else + \expandafter\nonmatherr@\expandafter\cmmath\fi} +\late@newmathalphabet\cmmath@ +% find out which \textfont holds cmmi +\edef\@tempa{\number\cmmath@@group}% +% Tell TeX where cmmi is. +% Assumes \@ptsize is defined by article, report, book +\ifcase \@ptsize + \textfont\@tempa=\csname cmm/m/it/10\endcsname + \scriptfont\@tempa=\csname cmm/m/it/7\endcsname + \scriptscriptfont\@tempa=\csname cmm/m/it/5\endcsname +\or + \textfont\@tempa=\csname cmm/m/it/11\endcsname + \scriptfont\@tempa=\csname cmm/m/it/7\endcsname + \scriptscriptfont\@tempa=\csname cmm/m/it/5\endcsname +\or + \textfont\@tempa=\csname cmm/m/it/12\endcsname + \scriptfont\@tempa=\csname cmm/m/it/8\endcsname + \scriptscriptfont\@tempa=\csname cmm/m/it/6\endcsname +\fi +% make sure bold version gets bold characters +\late@define@mathgroup\mv@normal{\@tempa} + {cmm}{m}{it} +\late@define@mathgroup\mv@bold{\@tempa} + {cmm}{b}{it} +\edef\@tempa{\hexnumber@\cmmath@@group}% + +% cmmi and Times-italic have different positions for some punctuation marks +% \mathcode`\ ="8000 % \space +% \mathcode`\!="5021 +% \mathcode`\'="8000 % ^\prime +% \mathcode`\(="4028 +% \mathcode`\)="5029 +% \mathcode`\*="22.4 % \ast +% \mathcode`\+="202B +\mathcode`\,="602C +% \mathcode`\-="2200 +\mathcode`\.="002E +\mathcode`\/="002F +% \mathcode`\:="303A +% \mathcode`\;="603B +\mathcode`\<="303C +% \mathcode`\=="303D +\mathcode`\>="303E +% \mathcode`\?="503F +% \mathcode`\[="405B +% \mathcode`\\="026E % \backslash +% \mathcode`\]="505D +% \mathcode`\_="8000 % \_ +% \mathcode`\{="4266 +% \mathcode`\|="026A +% \mathcode`\}="5267 +\mathchardef\ldotp="602E % ldot as a punctuation mark + +% Put back the missing lowercase Greek characters. +\mathchardef\alpha="0\@tempa 0B +\mathchardef\beta="0\@tempa 0C +\mathchardef\gamma="0\@tempa 0D +\mathchardef\delta="0\@tempa 0E +\mathchardef\epsilon="0\@tempa 0F +\mathchardef\zeta="0\@tempa 10 +\mathchardef\eta="0\@tempa 11 +\mathchardef\theta="0\@tempa 12 +\mathchardef\iota="0\@tempa 13 +\mathchardef\kappa="0\@tempa 14 +\mathchardef\lambda="0\@tempa 15 +\mathchardef\mu="0\@tempa 16 +\mathchardef\nu="0\@tempa 17 +\mathchardef\xi="0\@tempa 18 +\mathchardef\pi="0\@tempa 19 +\mathchardef\rho="0\@tempa 1A +\mathchardef\sigma="0\@tempa 1B +\mathchardef\tau="0\@tempa 1C +\mathchardef\upsilon="0\@tempa 1D +\mathchardef\phi="0\@tempa 1E +\mathchardef\chi="0\@tempa 1F +\mathchardef\psi="0\@tempa 20 +\mathchardef\omega="0\@tempa 21 +\mathchardef\varepsilon="0\@tempa 22 +\mathchardef\vartheta="0\@tempa 23 +\mathchardef\varpi="0\@tempa 24 +\mathchardef\varrho="0\@tempa 25 +\mathchardef\varsigma="0\@tempa 26 +\mathchardef\varphi="0\@tempa 27 + +% Put back other missing characters. +\mathchardef\imath="0110 +\mathchardef\jmath="0\@tempa 7C +\mathchardef\ell="0\@tempa 60 +\mathchardef\wp="0\@tempa 7D +\mathchardef\partial="0\@tempa 40 +\mathchardef\flat="0\@tempa 5B +\mathchardef\natural="0\@tempa 5C +\mathchardef\sharp="0\@tempa 5D +\mathchardef\smile="3\@tempa 5E +\mathchardef\frown="3\@tempa 5F +\mathchardef\leftharpoonup="3\@tempa 28 +\mathchardef\leftharpoondown="3\@tempa 29 +\mathchardef\rightharpoonup="3\@tempa 2A +\mathchardef\rightharpoondown="3\@tempa 2B +\mathchardef\lhook="3\@tempa 2C \def\hookrightarrow{\lhook\joinrel\rightarrow} +\mathchardef\rhook="3\@tempa 2D \def\hookleftarrow{\leftarrow\joinrel\rhook} +\mathchardef\star="2\@tempa 3F +\mathchardef\vecMC="0\@tempa 7E +\def\vec{\mathaccent\the\vecMC } + +% Get all the missing cmr characters back for maths mode +\def\cmrmath{\protect\pcmrmath} +\def\pcmrmath{\RIfM@\expandafter\cmrmath@\else + \expandafter\nonmatherr@\expandafter\cmrmath\fi} +\late@newmathalphabet\cmrmath@ +% find out which \textfont holds cmr +\edef\@tempa{\number\cmrmath@@group}% +% Tell TeX where cmr is. +\ifcase\@ptsize + \textfont\@tempa=\csname cmr/m/n/10\endcsname + \scriptfont\@tempa=\csname cmr/m/n/7\endcsname + \scriptscriptfont\@tempa=\csname cmr/m/n/5\endcsname% +\or + \textfont\@tempa=\csname cmr/m/n/11\endcsname + \scriptfont\@tempa=\csname cmr/m/n/7\endcsname + \scriptscriptfont\@tempa=\csname cmr/m/n/5\endcsname% +\or + \textfont\@tempa=\csname cmr/m/n/12\endcsname + \scriptfont\@tempa=\csname cmr/m/n/8\endcsname + \scriptscriptfont\@tempa=\csname cmr/m/n/6\endcsname +\fi +% make sure bold version gets bold characters +\late@define@mathgroup\mv@normal{\@tempa} + {cmr}{m}{n} +\late@define@mathgroup\mv@bold{\@tempa} + {cmr}{bx}{n} +\edef\@tempa{\hexnumber@\cmrmath@@group}% + +% %Put back the missing capital Greek letters. +% \mathchardef\Gamma="7\@tempa 00 +% \mathchardef\Delta="7\@tempa 01 +% \mathchardef\Theta="7\@tempa 02 +% \mathchardef\Lambda="7\@tempa 03 +% \mathchardef\Xi="7\@tempa 04 +% \mathchardef\Pi="7\@tempa 05 +% \mathchardef\Sigma="7\@tempa 06 +% \mathchardef\Upsilon="7\@tempa 07 +% \mathchardef\Phi="7\@tempa 08 +% \mathchardef\Psi="7\@tempa 09 +% \mathchardef\Omega="7\@tempa 0A + +% Postscript accents behave differently to the way TeX expects... and +% \mathaccent is a primitive command, so it cannot be changed!!! +\mathchardef\acuteMC="7\@tempa 13 +\def\acute{\mathaccent\the\acuteMC } +\mathchardef\graveMC="7\@tempa 12 +\def\grave{\mathaccent\the\graveMC } +\mathchardef\ddotMC="7\@tempa 7F +\def\ddot{\mathaccent\the\ddotMC } +\mathchardef\tildeMC="7\@tempa 7E +\def\tilde{\mathaccent\the\tildeMC } +\mathchardef\barMC="7\@tempa 16 +\def\bar{\mathaccent\the\barMC } +\mathchardef\breveMC="7\@tempa 15 +\def\breve{\mathaccent\the\breveMC } +\mathchardef\checkMC="7\@tempa 14 +\def\check{\mathaccent\the\checkMC } +\mathchardef\hatMC="7\@tempa 5E +\def\hat{\mathaccent\the\hatMC } +\mathchardef\dotMC="7\@tempa 5F +\def\dot{\mathaccent\the\dotMC } + +\ifx\csname amstex.sty\endcsname\relax +{} +\else +\def\Makeacce@#1#2{\def#1{\RIfM@\DN@{\mathaccent@ + {#2 }}\else\DN@{\nonmatherr@{#1}}\fi\next@}} + +\Makeacce@\Hat{\the\hatMC } +\Makeacce@\Check{\the\checkMC } +\Makeacce@\Tilde{\the\tildeMC } +\Makeacce@\Acute{\the\acuteMC } +\Makeacce@\Grave{\the\graveMC } +\Makeacce@\Dot{\the\dotMC } +\Makeacce@\Ddot{\the\ddotMC } +\Makeacce@\Breve{\the\breveMC } +\Makeacce@\Bar{\the\barMC } +\def\Vec{\RIfM@\DN@{\mathaccent@{\the\vecMC }}} +\fi + +% fix \bold in AMS-LaTeX so it produces bold Times-Roman text rather than +% bold Computer-Modern-Roman. If you are not using AMS-LaTeX, you may get +% \bold as a new maths mode operator for free. +\late@newmathalphabet*{\timesrmbf}{times}{bx}{n} +\def\bold{\timesrmbf} + +\def\hbar{{\mathchar'26\mkern-7muh}} +\def\neq{{\not\mkern1.5mu=}} \let\ne=\neq +\endinput |