Current File : //usr/share/texlive/texmf-dist/fonts/source/public/tipa/tipa.mf |
% tipa.mf: TIPA driver file
% Copyright 1996-2003 FUKUI Rei
%
% This program may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.2
% 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.2 or later is part of all distributions of LaTeX
% version 1999/12/01 or later.
%
% This program consists of all files listed in Manifest.txt.
%
% Version 1.2 2003/01/01
%
% This file is based on:
% Computer Modern font series by D. E. Knuth and
% TSIPA by KOBAYASHI Hajime, FUKUI Rei and SHIRAKAWA Shun.
%
font_coding_scheme:="TeX IPA";
mode_setup;
font_setup;
input tipanew % new materials for testing
input tipadiac % accents and diacritics
input tipapnct % punctuation marks
input tiparoml % lower case (minuscules)
input tipasym1 % ipa symbols (1)
input tipasym2 % ipa symbols (2)
input tipasym3 % ipa symbols (3)
input tipasym4 % ipa symbols (4)
input tipagerm % symbols for germanic languages
input tipatone % parts of tone letters
smallcap_setup;
input tipasc % ipa small capitals
restore_normal_setup;
font_slant slant; font_x_height x_height#;
% Modified on 2001/12/24 for the Times Roman compatibility;
% The values for Times_Compat are calculated from the data
% from ptmr7t.tfm.
if monospace:
font_normal_space 9u#; % no stretching or shrinking
font_quad 18u#;
font_extra_space 9u#;
else:
if Times_Compat:
font_normal_space 5u#+2letter_fit#;
font_normal_stretch 2.2u#; font_normal_shrink 1.2u#;
font_quad 20u#+4letter_fit#;
font_extra_space 1.2u#;
else:
font_normal_space 6u#+2letter_fit#;
font_normal_stretch 3u#; font_normal_shrink 2u#;
font_quad 18u#+4letter_fit#;
font_extra_space 2u#;
fi
fi
% ligatures made by ligtables
ligtable oct"047": oct"047" kern -1.5u#; % ' + ' -> ''
ligtable oct"140": oct"140" kern -1.5u#; % ` + ` => ``
ligtable "|": "|" =: oct"173"; % Pipe + Pipe -> Double Pipe
ligtable oct"042": oct"042" =: oct"177"; % Prim. Stress + Prim. Stress -> Sec. Stress
% kernings (need to modify)
numeric itc#; % modified italic correction on `f'
itc#=if serifs: max(0,flare#-.25u#) else: 1.25u# fi;
k#:=-.5u#; kk#:=-1.5u#; kkk#:=-2u#; % three degrees of kerning
ligtable "f":
"'" kern itc#, "?" kern itc#, "!" kern itc#, ")" kern itc#, "]" kern itc#;
ligtable "y":
"o" kern k#, "e" kern k#, "a" kern k#, "." kern kk#, "," kern kk#,
"2" kern -u#, "L" kern -u#, oct"300" kern -u#, oct"373" kern -u#;
ligtable "g":
"j" kern -k#; % logjam
if serifs:
ligtable "k":
"a" kern -u#, "e" kern k#, "a" kern k#, "o" kern k#, "c" kern k#;
ligtable "v":
"a" kern -u#, "e" kern k#, "a" kern k#, "o" kern k#, "c" kern k#,
"2" kern -u#, "L" kern -u#, oct"300" kern -u#, oct"373" kern -u#;
ligtable "w":
"e" kern k#, "a" kern k#, "o" kern k#, "c" kern k#,
"2" kern -u#, "L" kern -u#, oct"300" kern -u#, oct"373" kern -u#;
ligtable "h": "m": "n":
"t" kern k#, "u" kern k#, "b" kern k#, "y" kern k#, "v" kern k#,
"w" kern k#;
ligtable "c":
"h" kern k#, "k" kern k#;
ligtable "o": "b": "p":
"e" kern -k#, "o" kern -k#, "x" kern k#, "d" kern -k#, "c" kern -k#,
"q" kern -k#, "v" kern k#, "j" kern u#, "y" kern k#, "w" kern k#;
ligtable "a":
"v" kern k#, "j" kern u#, "y" kern k#, "w" kern k#;
ligtable "t":
"y" kern k#, "w" kern k#;
ligtable "u":
"w" kern k#;
else:
ligtable "k":
"e" kern k#, "a" kern k#, "o" kern k#, "c" kern k#;
ligtable "w":
"e" kern k#, "a" kern k#, "o" kern k#, "c" kern k#,
"2" kern -u#, "L" kern -u#, oct"300" kern -u#, oct"373" kern -u#;
ligtable "v":
"2" kern -u#, "L" kern -u#, oct"300" kern -u#, oct"373" kern -u#;
ligtable "o": "b": "p":
"e" kern -k#, "o" kern -k#, "x" kern k#, "d" kern -k#, "c" kern -k#,
"q" kern -k#, "r" kern k#, "y" kern k#, "w" kern k#;
ligtable "a":
"r" kern k#, "y" kern k#, "w" kern k#;
ligtable "t":
"y" kern k#, "w" kern k#;
ligtable "u":
"w" kern k#;
fi
ligtable "2": "L": oct"300": oct"373": % Turned V, SC A, Turned y, Turned W
"v" kern -u#, "w" kern -u#, "y" kern -u#;
ligtable "S": oct"342": oct"344": oct"352": oct"301": oct"311":
oct"323": oct"264": oct"331": % symbols with hooktop
"b" kern -kk#, "f" kern -k#, "h" kern -kk#, "i" kern -kk#,
"j" kern -kk#, "k" kern -kk#, "P" kern -kk#, "Q" kern -kk#,
"]" kern -kk#, ")" kern -kk#;
ligtable oct"343": oct"355": oct"357": oct"365": oct"374": % symbols with right-tail
"g" kern -k#, "j" kern -kk#, "p" kern -kk#, "y" kern -kk#, "S" kern -kk#,
"B" kern -kk#, "J" kern -kk#, oct"351" kern -kk#, oct"361" kern -kk#,
"]" kern -kk#, ")" kern -kk#;
ligtable "[": "(":
"S" kern -kk#, oct"361" kern -kk#, "j" kern -kk#, oct"351" kern -kk#,
oct"352" kern -kk#, oct"315" kern -kk#;
bye.