You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
166 lines
4.8 KiB
166 lines
4.8 KiB
% 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.
|
|
|