ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Taco Hoekwater <taco.hoekwater@wkap.nl>
Subject: Re: Times and MathTimes
Date: Tue, 07 Sep 1999 11:48:09 +0000 (GMT)	[thread overview]
Message-ID: <14292.64377.233656.474639@PC709.wkap.nl> (raw)
In-Reply-To: <3.0.5.32.19990830123529.00b25b20@mail.northcoast.com>

[-- Attachment #1: message body text --]
[-- Type: text/plain, Size: 635 bytes --]

>>>>> "Hans" == Hans Hagen <pragma@wxs.nl> writes:

    Hans> David Arnold wrote:
    >> How do I use my Times and MathTimes fonts in my ConTeXt
    >> document?

    Hans> Times: \setupbodyfont[pos] MathTime: taco is workingon that

Attached is my font-mty.tex file. It's not perfect and not documented
but it should work reasonably well (It assumes you have the mtplus
package as well. If you don't, you might have to install the
metric files)

	\setupbodyfont[mty]

    Hans> (part of a bigger project with free fonts)

This is really something different and has nothing to do with the
MathTimes fonts themselves.

Greetings,

Taco

[-- Attachment #2: font-mty.tex --]
[-- Type: application/octet-stream, Size: 10865 bytes --]

% Adobe Mathpi support removed because
%   the fonts are not worth the money.

\unprotect
\let\cafam\mcfam
\newfam\mdfam     % fam E is upright greek
\let\gbfam\mdfam
\let\gkfam\mdfam
\edef\hexmdfam{\hexnumber\mdfam}
\let\hexcafam\hexmcfam
\let\hexgbfam\hexmdfam
\let\hexgkfam\hexmdfam

\font\tenmd=mtgu at 10pt
\font\sevenmd=mtgu at 7.6pt
\font\fivemd=mtgu at 6pt
\font\tenmc=mtms at 10pt
\font\sevenmc=mtms at 7.6pt
\font\fivemc=mtms at 6pt

\textfont\mdfam\tenmd
\scriptfont\mdfam\sevenmd
\scriptscriptfont\mdfam\fivemd
\textfont\mcfam\tenmc
\scriptfont\mcfam\sevenmc
\scriptscriptfont\mcfam\fivemc

\addtocommalist{ca}\familylist
\addtocommalist{gk}\familylist
\addtocommalist{gb}\familylist

\defineinterfaceconstant {ca} {ca} % boohoo!
\defineinterfaceconstant {gk} {gk} % boohoo!
\defineinterfaceconstant {gb} {gb} % boohoo!
%\def\setmathfamilies{%
%        \setmathfamily\mcfam\textface\scriptface\scriptscriptface
%          {\c!mm\c!ca}{\c!mm\c!ca}%
%        \setskewchar{\textface\c!mm\c!ca}{'55}%
%        \setmathfamily\mdfam\textface\scriptface\scriptscriptface
%          {\c!mm\c!gk}{\c!mm\c!gk}%
%        %\dosetmathfamilies{'55}{'60}%
%        \setskewchar{\textface\c!mm\c!gk}{'55}}

\definealternativestyle[script][\ca][\ca]
\definealternativestyle[greek][\gk][\gk]
\definealternativestyle[boldgreek][\gb][\gb]

\definebodyfont[5pt,6pt,7pt,8pt,9pt,10pt,11pt,12pt,14.4pt][rm]
    [ca=mtms sa 1,
     gk=mtgu sa 1,
     gb=mtgub sa 1]
     
%\startcoding[texnansi]
%
% Presumes existence of tio and tibio. \tfa etc and \sc are left as
% they are. 
%
\def\localcorpsdef#1#2{\definebodyfont[#1][mm]
       [mr=ptmr7t at #2,
        mi=mtmi at #2,
        skewcharmi='177,
        ex=mtex at #2,
        sy=mtsyn at #2,
        skewcharsy='60,
        gk=mtgu at #2,
        gb=mtgu at #2,
        ca=mtms at #2,
        skewcharca='55,
        skewchargb='55,
        skewchargk='55,
        it=ptmri7t at #2, 
        sl=ptmro7t at #2,
        bf=ptmb7t at #2, 
        tf=ptmr7t at #2, 
        bs=ptmbo7t at #2, 
        bi=ptmbi7t at #2]}


% CM uses:  5,   6,   7,   8,   9,   10,   11,   12,   14,   18
% MT uses:  6.0, 6.8, 7.6, 8.4, 9.2, 10.0, 10.8, 11.6, 13.2, --

\localcorpsdef{5pt}{6pt}
\localcorpsdef{6pt}{6.8pt}
\localcorpsdef{7pt}{7.6pt}
\localcorpsdef{8pt}{8.4pt}
\localcorpsdef{9pt}{9.2pt}
\localcorpsdef{10pt}{10pt}
\localcorpsdef{11pt}{10.8pt}
\localcorpsdef{12pt}{11.6pt}
\localcorpsdef{14.4pt}{13.2pt}

\let\localcorpsdef\undefined

%The next lines set up  coding dependant versions of 
%math accents (for texnansi of course). These are needed
%in commands like \bf and \it (which use the text font
%encoding) a opposed to _no spec_ and mi that use the math font 
%encoding. This stuff should be made more general!
 
% \daghex and \ddaghex were wrong in my version of mtmacs
\def\daghex{86}
\def\ddaghex{87}
\def\Shex{A7}
\def\Phex{B6}
\def\barhex{16}
\def\gravehex{12}
\def\acutehex{13}
\def\checkhex{14}
\def\brevehex{15}
\def\hathex{5E}
% \dothex was wrong in my version of mtmacs
\def\dothex{05}
\def\tildehex{7E}
\def\ddothex{7F}

%\stopcoding


% MTMI  has skewchar 45 ('55)
% MTSYN has skewchar 48 ('60)


%% this patch inserted in font-ini.tex
%
%\def\setmathfamilies{\dosetmathfamilies{'177}{'60}}
%\def\dosetmathfamilies#1#2%
%  {\setskewchar{\textface\c!mm\c!mi}{#1}%
%   \setskewchar{\textface\c!mm\c!sy}{#2}%
%   \setmathfamily\mrfam\textface\scriptface\scriptscriptface
%     {\c!mm\c!mr}{\c!rm\c!tf}%
%   \setmathfamily\mifam\textface\scriptface\scriptscriptface
%     {\c!mm\c!mi}{}%
%   \setmathfamily\syfam\textface\scriptface\scriptscriptface
%     {\c!mm\c!sy}{}%
%   \setmathfamily\exfam\textface\textface\textface
%     {\c!mm\c!ex}{}%
%   \setmathfamily\mafam\textface\scriptface\scriptscriptface
%     {\c!mm\c!ma}{}%
%   \setmathfamily\mbfam\textface\scriptface\scriptscriptface
%     {\c!mm\c!mb}{}%
%   \setmathfamily\mcfam\textface\scriptface\scriptscriptface
%     {\c!mm\c!mc}{}}
%%

% MTEX  needs recalc of \p@renwd (done automatically)


% MTMACS.TEX  VERSION 1.1.1	(1996 Dec 8)
% COPYRIGHT (C) 1992, 1993, 1996 BY THE TEXPLORATORS CORPORATION
% ALL RIGHTS RESERVED

% Revision notice: Official final release 1993/Aug/18
% Revision notice: Minor correction in \Calligraphic 1996/Dec/8

% removed all sanity checks that deal with amstex and protection.
\mathchardef\Gamma="0130
\mathchardef\Delta="0131
\mathchardef\Theta="0132
\mathchardef\Lambda="0133
\mathchardef\Xi="0134
\mathchardef\Pi="0135
\mathchardef\Sigma="0136
\mathchardef\Upsilon="0137
\mathchardef\Phi="0138
\mathchardef\Psi="0139
\mathchardef\Omega="017F
\mathchardef\varGamma="0100
\mathchardef\varDelta="0101
\mathchardef\varTheta="0102
\mathchardef\varLambda="0103
\mathchardef\varXi="0104
\mathchardef\varPi="0105
\mathchardef\varSigma="0106
\mathchardef\varUpsilon="0107
\mathchardef\varPhi="0108
\mathchardef\varPsi="0109
\mathchardef\varOmega="010A
\mathchardef\varkappa="017E
\mathcode`\(="412E
\mathcode`\)="512F
\delcode`\(="12E300
\delcode`\)="12F301
\mathcode`\.="013A
\mathcode`\,="613B
\mathchardef\ldotp="613A
\let\mit=\undefined
\mathchardef\triangleleft="2247
\mathchardef\triangleright="2246
\def\vec{\mathaccent"0245 }
\def\t#1{{\edef\next{\the\font}\the\textfont2\accent"41\next#1}}
\mathchardef\comp="2242
\mathcode`\+="2243
\mathcode`\=="3244
\mathchardef\Relbar="3248
\mathcode`\;="6249
\mathchardef\dagger="20\daghex
\mathchardef\ddagger="20\ddaghex
\mathchardef\dotacc"0250


% fam equals -1 unless the user has said something
% like \rm (cf. the texbook page 290)

\def\ifdefaultfamelse#1#2%
       {\ifnum\fam=\m@ne 
          \mathaccent #1 
        \else
          \mathaccent #2
        \fi}
\let\noaccents@\relax

\def\grave{\ifdefaultfamelse{"024A}{"70\gravehex}}
\def\acute{\ifdefaultfamelse{"024B}{"70\acutehex}}
\def\check{\ifdefaultfamelse{"024C}{"70\checkhex}}
\def\breve{\ifdefaultfamelse{"024D}{"70\brevehex}}
\def\bar{\ifdefaultfamelse{"024E}{"70\barhex}}
\def\hat{\ifdefaultfamelse{"024F}{"70\hathex}}
\def\dot{\ifdefaultfamelse{"0250}{"70\dothex}}
\def\tilde{\ifdefaultfamelse{"0251}{"70\tildehex}}
\def\ddot{\ifdefaultfamelse{"0252}{"70\ddothex}}
\def\widebar{\mathaccent"0253 }

\def\mathhexbox@#1#2#3%
        {\relax
        \ifmmode
         \mathpalette{}{\m@th\mathchar"#1#2#3}%
        \else
         \leavevmode
         \hbox{$\m@th\mathchar"#1#2#3$}%
        \fi}

\def\dag{\edef\next@{0\daghex}\expandafter\mathhexbox@\next@}
\def\ddag{\edef\next@{0\ddaghex}\expandafter\mathhexbox@\next@}
\def\S{\edef\next@{0\Shex}\expandafter\mathhexbox@\next@}
\def\P{\edef\next@{0\Phex}\expandafter\mathhexbox@\next@}

\def\vdots{\vbox{\baselineskip4\p@\lineskiplimit\z@
 \kern6\p@\hbox{$\m@th.$}\hbox{$\m@th.$}\hbox{$\m@th.$}}}

\def\ddots{\mathinner{\mkern1mu\raise7\p@\vbox{\kern7\p@
 \hbox{$\m@th.$}}\mkern2mu
 \raise4\p@\hbox{$\m@th.$}\mkern2mu\raise\p@\hbox{$\m@th.$}\mkern1mu}}

\def\hbar{{\mathchoice
 {\hbox{\lower.07em\hbox{$\mathchar"\barhex$}}}
 {\hbox{\lower.07em\hbox{$\mathchar"\barhex$}}}
 {\hbox{\lower.049em\hbox{$\scriptstyle\mathchar"\barhex$}}}
 {\hbox{\lower.035em\hbox{$\scriptscriptstyle\mathchar"\barhex$}}}%
  \mkern-6.3muh}}

\def\angle{{\vbox{\ialign{$\m@th\scriptstyle##$\crcr
      \not\mathrel{\mkern14mu}\crcr
      \noalign{\nointerlineskip}
      \mkern2.5mu\leaders\hrule height.48\p@\hfill\mkern2.5mu\crcr}}}}

\newdimen\amstexex
\amstexex = .2326ex
\def\varinjlim{\mathop{\vtop{\ialign{##\crcr
  \hfil\the\textfont\z@ lim\hfil\crcr
  \noalign{\nointerlineskip}\rightarrowfill\crcr
  \noalign{\nointerlineskip\kern-\amstexex}\crcr}}}}
\def\varprojlim{\mathop{\vtop{\ialign{##\crcr
  \hfil\the\textfont\z@ lim\hfil\crcr
  \noalign{\nointerlineskip}\leftarrowfill\crcr
  \noalign{\nointerlineskip\kern-\amstexex}\crcr}}}}
% next two definitions context-ified
\def\varliminf{\mathop{\underbar{lim}}}
\def\varlimsup{\mathop{\overstrike{lim}}}
\def\spdot{^{\hbox{\raise\amstexex\hbox{\the\textfont\z@.}}}}
\def\spddot{^{\hbox{\raise\amstexex\hbox{\the\textfont\z@..}}}}
\def\spdddot{^{\hbox{\raise\amstexex\hbox{\the\textfont\z@...}}}}
\def\spddddot{^{\hbox{\raise\amstexex\hbox{\the\textfont\z@....}}}}

% merged double code to save strings
\def\domultidot#1#2{%
        \setbox0\hbox{$#1#2$}%
        \setbox2\hbox{$#1\infty$}%
        \dimen0\ht2
        \ifdim\ht0<\dimen0
                \dimen0\ht0
        \fi
        \setbox2\hbox{$#1#2\mathchar"012D$}%
        \dimen2\wd2
        \advance\dimen2-\wd0 
        \setbox0\hbox{$#1\rhook$}%
        \advance\dimen2-\wd0
        \vbox{\offinterlineskip\ialign{\hfil$#1##$\hfil\cr
                \kern\dimen2\dotacc\mkern-2.5mu\dotacc
                \mkern-2.5mu\dotacc\thirddot\cr
                \noalign{\vskip-\dimen0}#2\cr}}}

\def\dddot{\def\thirddot{}\mathpalette\domultidot}
\def\ddddot{\def\thirddot{\mkern-2.5mu\dotacc }
            \mathpalette\domultidot}

\newcount\uproot@
\newcount\leftroot@
\def\nonmatherr#1{\errmessage{\noexpand#1allowed only in math mode}}
\def\uproot#1{\relax\ifmmode\uproot@#1\relax\else\nonmatherr\uproot\fi}
\def\leftroot#1{\relax\ifmmode\leftroot@#1\relax\else\nonmatherr\leftroot\fi}
\def\root#1\of#2{\setbox\rootbox\hbox{$\m@th\scriptscriptstyle{#1}$}%
 \mathpalette\r@@t{#2}}
\def\r@@t#1#2{\setbox\z@\hbox{$\uproot@\z@\leftroot\z@\m@th#1\sqrt{#2}$}%
 \dimen@\ht\z@\advance\dimen@-\dp\z@
 \dimen@ii\dimen@
  \ifdim\dimen@>30\p@\advance\dimen@ii-\sixt@@n\p@\else
  \ifdim\dimen@>24\p@\advance\dimen@ii-8\p@\else
  \ifdim\dimen@>18\p@\advance\dimen@ii-6\p@\else
  \ifdim\dimen@>12\p@\advance\dimen@ii-4\p@\else
  \ifdim\dimen@>10\p@\advance\dimen@ii-\tw@\p@\fi\fi\fi\fi\fi
 \setbox\tw@\hbox{$\m@th#1\mskip\uproot@ mu$}\advance\dimen@ii by1.667\wd\tw@
 \mkern-\leftroot@ mu\mkern5mu\raise.6\dimen@ii\copy\rootbox
 \mkern-8mu\mkern\leftroot@ mu\box\z@\leftroot\z@\uproot\z@}
\def\space@.{\futurelet\space@\relax}
\space@. %

% left as is for the moment. 
\newif\ifsubscriptcorrection \subscriptcorrectiontrue
\ifsubscriptcorrection
\expandafter\let\csname subscript character \string_\endcsname_
\catcode`\_=\active
\def_{\ifmmode\expandafter\sb@\else
 \expandafter\csname subscript character \string_\endcsname\fi}
\let\sb_
\ifnum\catcode`\^^A=8 \catcode`\^^A\active\let^^A_\fi
\def\sb@#1{\csname subscript character \string_\endcsname
 {\futurelet\next\sb@@#1}}
\def\sb@@{%
 \ifx\next\space@\def\next@. {\futurelet\next\sb@@}\else
  \def\next@.{%
   \ifx\next j\mkern-\tw@ mu\else
   \ifx\next f\mkern-\tw@ mu\else
   \ifx\next p\mkern-\@ne mu
   \fi\fi\fi}%
 \fi
 \next@.}
\fi
\def\jadjust{\mkern-\tw@ mu}

\protect



      parent reply	other threads:[~1999-09-07 11:48 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-08-30 19:35 David Arnold
1999-08-31  7:39 ` Hans Hagen
1999-09-07 11:48 ` Taco Hoekwater [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=14292.64377.233656.474639@PC709.wkap.nl \
    --to=taco.hoekwater@wkap.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).