summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf')
-rw-r--r--Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf341
1 files changed, 341 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf b/Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf
new file mode 100644
index 00000000000..8ba304b8b52
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf
@@ -0,0 +1,341 @@
+% exrligtb.mf
+%
+% (c) Copyright 1995, 1996, 1997 J"org Knappen
+% (c) Copyright 1990, 1992 Norbert Schwarz
+%
+% This file is part of ecfonts version 1.0
+%
+% Please read the files 00readme.txt, 00inst.txt, 00error.txt, and
+% copyrite.txt for further information
+%
+% You find some documentation in ecdoc.tex (needs LaTeX2e)
+%
+% Content:
+%
+% ligtable and kerning programs for roman style fonts
+%
+% This file should not be called for monospaced fonts !
+%
+% The following ligatures are integrated:
+%
+% fi
+% fl
+% ff
+% ffi
+% ffl
+%
+% --
+% ---
+% -<hyphenchar>
+% >>
+% <<
+% ``
+% ''
+% ,,
+% !` and ?`
+
+version_check(1,0); % |version_check| was introduced in dc1.3
+
+ligtable
+ "f": "i"=:oct"034",
+ "f"=:oct"033",
+ "l"=:oct"035",
+ "'" kern itc#,
+ "`" kern itc#,
+ oct"020" kern itc#,
+ oct"021" kern itc#,
+ "?" kern itc#,
+ "!" kern itc#,
+ ")" kern itc#,
+ "]" kern itc#;
+ligtable
+ oct"033": % ff
+ "i"=:oct"036",
+ "l"=:oct"037",
+ "'" kern itc#,
+ "`" kern itc#,
+ oct"020" kern itc#,
+ oct"021" kern itc#,
+ "?" kern itc#,
+ "!" kern itc#,
+ ")" kern itc#,
+ "]" kern itc#;
+ligtable
+ "`": "`"=:oct"020",
+ oct"020" kern 2u#,
+ "?" kern 2u#,
+ "!" kern 2u#;
+
+ligtable
+ "'": "'"=:oct"021",
+ oct"021" kern 2u#,
+ "?" kern 2u#,
+ "!" kern 2u#;
+
+ligtable
+ "-": "-" =: oct"025",
+ oct"177" =: oct"177"; % <hyphen><hyphenchar> => <hyphenchar>
+
+ligtable
+ oct"025": "-"=:oct"026"; % "---" => emdash
+
+ligtable "<": "<" =: oct"023"; % "<<"
+ligtable ">": ">" =: oct"024"; % ">>"
+ligtable ",": "," =: oct"022"; % ",,"
+ligtable "!": "`" =: oct"275"; % spanish shriek
+ligtable "?": "`" =: oct"276"; % spanish query
+
+
+def lig_o_table (expr k) =
+ "o" kern k, oct"256" kern k, oct"362" kern k, oct"363" kern k,
+ oct"364" kern k, oct"365" kern k, oct"366" kern k,
+ oct"367" kern k, oct"370" kern k
+enddef;
+
+def lig_a_table (expr k) =
+ "a" kern k, oct"240" kern k, oct"241" kern k, oct"340" kern k,
+ oct"341" kern k, oct"342" kern k, oct"342" kern k,
+ oct"343" kern k, oct"344" kern k, oct"345" kern k,
+ oct"346" kern k
+enddef;
+
+def lig_c_table (expr k) =
+ "c" kern k, oct"242" kern k, oct"243" kern k, oct"347" kern k
+enddef;
+
+def lig_e_table (expr k)=
+ "e" kern k, oct"245" kern k, oct"246" kern k, oct"350" kern k,
+ oct"351" kern k, oct"352" kern k, oct"353" kern k
+enddef;
+
+def lig_u_table (expr k)=
+ "u" kern k, oct"266" kern k, oct"267" kern k, oct"371" kern k,
+ oct"372" kern k, oct"373" kern k, oct"374" kern k
+enddef;
+
+def lig_A_table (expr k)=
+ "A" kern k, oct"200" kern k, oct"201" kern k, oct"300" kern k,
+ oct"301" kern k, oct"302" kern k, oct"303" kern k,
+ oct"304" kern k, oct"305" kern k, oct"306" kern k
+enddef;
+
+def lig_O_table (expr k)=
+ "O" kern k, oct"216" kern k, oct"322" kern k, oct"323" kern k,
+ oct"324" kern k, oct"325" kern k, oct"326" kern k,
+ oct"327" kern k, oct"330" kern k
+enddef;
+
+def lig_CGQ_table (expr k)=
+ "C" kern k, "G" kern k, oct"202" kern k, oct"203" kern k,
+ oct"207" kern k, oct"307" kern k, "Q" kern k
+enddef;
+
+def lig_U_table (expr k)=
+ "U" kern k, oct"226" kern k, oct"227" kern k, oct"331" kern k,
+ oct"332" kern k, oct"333" kern k, oct"334" kern k
+enddef;
+
+def lig_cA_table =
+ "A": oct"200": oct"300": oct"301": oct"302":
+ oct"303": oct"304": oct"305":
+enddef;
+
+k#:=-.5u#; ku#:=-1u#; kk#:=-1.5u#; kkk#:=-2u#; % four degrees of kerning
+
+ligtable boundarychar:
+ oct"020" kern -kk#, oct"021" kern -kk#, oct"022" kern -kk#,
+ oct"055" kern -kk#, oct"140" kern -kk#, oct"047" kern -kk#;
+
+ligtable oct"022":
+ oct"015" kern 2u#, "," kern 2u#,
+ oct"015":
+ oct"022" kern 2u#,
+ "j" kern -kkk#, oct"032" kern -kkk#, "g" kern -ku#, oct"247" kern -ku#,
+ "y" kern -ku#, oct"270" kern -ku#, oct"375" kern -ku#,
+ "v" kern kk#, "w" kern ku#, "V" kern kkk#, "W" kern kk#,
+ "Y" kern kk#, oct"230" kern kk#, oct"335" kern kk#,
+ lig_O_table(k#), lig_CGQ_table(k#),
+ boundarychar kern -kk#;
+
+ligtable oct"020":
+ oct"140" kern 2u#, oct"020" kern 2u#, boundarychar kern -kk#;
+
+ligtable oct"021":
+ oct"047" kern 2u#, oct"021" kern 2u#, boundarychar kern -kk#;
+
+ligtable oct"024": % ">>"
+ "." kern kk#, "," kern kk#;
+
+ligtable
+ "k": "W" kern kk#, "V" kern kk#,
+ if serifs: "v": lig_a_table(-u#), fi
+ "w": lig_e_table(k#),
+ lig_a_table(k#),
+ lig_o_table(k#),
+ lig_c_table(k#);
+
+ligtable
+ "P": lig_A_table(kk#),
+ "y": oct"270": oct"375": % \"y, \'y
+ lig_o_table(k#),
+ lig_e_table(k#),
+ lig_a_table(k#),
+ "." kern kk#,
+ "," kern kk#;
+ligtable
+ "F":"V": "W":
+ if serifs:
+ "o" kern kk#,
+ "a" kern kk#,
+ "e" kern kk#,
+ "y" kern kk#,
+ "u" kern kk#,
+ "r" kern kk#,
+ "v" kern kk#,
+ "s" kern kk#,
+ "c" kern kk#,
+ "d" kern kk#,
+ "g" kern kk#,
+ "m" kern kk#,
+ "n" kern kk#,
+ "p" kern kk#,
+ "w" kern kk#,
+ "z" kern kk#,
+ oct"346" kern kk#,
+ oct"370" kern kk#,
+ lig_A_table(kkk#),
+ else:
+ "o" kern k#,
+ "a" kern k#,
+ "e" kern k#,
+ "y" kern k#,
+ "u" kern k#,
+ "r" kern k#,
+ "v" kern k#,
+ "s" kern k#,
+ "c" kern k#,
+ "d" kern k#,
+ "g" kern k#,
+ "m" kern k#,
+ "n" kern k#,
+ "p" kern k#,
+ "w" kern k#,
+ "z" kern k#,
+ oct"346" kern k#,
+ oct"370" kern k#,
+ lig_A_table(kk#),
+ fi
+ "X": lig_O_table(k#),
+ lig_CGQ_table(k#);
+
+ligtable "K": if serifs:
+ "v" kern kk#,
+ "w" kern k#,
+ else:
+ "v" kern k#,
+ fi
+ lig_o_table(k#),
+ lig_CGQ_table(k#);
+
+ligtable
+ "T": oct"224": oct"225": % \v{T}, \c{T}
+ "y" kern if serifs: k# else: kk# fi,
+ "Y": oct"230": oct"335": % \"Y, \'Y
+ "e" kern kk#,
+ "o" kern kk#,
+ "r" kern kk#,
+ "a" kern kk#,
+ "u" kern kk#,
+ "n" kern kk#,
+ oct"031" kern kk#, % \i
+ "c" kern kk#,
+ "d" kern kk#,
+ "g" kern kk#,
+ "p" kern kk#,
+ "s" kern kk#,
+ "v" kern kk#,
+ "w" kern kk#,
+ "x" kern kk#,
+ "z" kern kk#,
+ lig_A_table(kk#);
+ligtable
+ "O": oct"216": oct"322": oct"323": oct"324": oct"325": oct"326": oct"330":
+ "D": oct"204": oct"320":
+ "X" kern k#,
+ "W" kern k#,
+ lig_A_table(k#),
+ "V" kern k#,
+ "Y" kern k#, oct"230" kern k#, oct"335" kern k#;
+if serifs:
+ligtable
+ "m": "n": "h":
+ "W" kern kk#, "V" kern kk#,
+ oct"253": oct"254": oct"255": oct"361": % \'n, \v{n}, \ng, \~n
+ "t" kern k#,
+ lig_u_table(k#),
+ "b" kern k#,
+ "y" kern k#,
+ "v" kern k#,
+ "w" kern k#;
+ligtable
+ "c": oct"242": oct"243": oct"347": % \'c, \v{c}, \c{c}
+ "h" kern k#,
+ "k" kern k#;
+fi
+ligtable
+ "o": oct"256": oct"362": oct"363": oct"364": oct"365": oct"366": oct"370":
+ "b": "p": lig_e_table(-k#),
+ lig_o_table(-k#),
+ "x" kern k#,
+ "d" kern -k#,
+ lig_c_table(-k#),
+ "q" kern -k#,
+ "a": oct"240": oct"340": oct"341": oct"342": oct"343": oct"344": oct"345":
+ if serifs:
+ "v" kern k#,
+ "j" kern u#,
+ else:
+ "r" kern k#,
+ fi
+ "t": oct"264": oct"265":
+ "y" kern k#, oct"270" kern k#, oct"375" kern k#,
+ "u": oct"266": oct"267": oct"371": oct"372": oct"373": oct"374":
+ "w" kern k#;
+ligtable
+ lig_cA_table
+ "y" kern if serifs: kk# else: k# fi,
+ oct"270" kern if serifs: kk# else: k# fi,
+ oct"375" kern if serifs: kk# else: k# fi,
+ oct"202": %\k{A}
+ "v" kern if serifs: kkk# else: k# fi,
+ "w" kern if serifs: kk# else: k# fi,
+ lig_c_table(k#),
+ "d" kern k#, oct"244" kern k#,
+ oct"236" kern k#, oct"360" kern k#,
+ lig_e_table(k#),
+ lig_o_table(k#),
+ "q" kern k#,
+ if serifs: "R": oct"217": fi
+ "t" kern k#, oct"264" kern k#, oct"265" kern k#,
+ lig_CGQ_table(k#),
+ lig_O_table(k#),
+ lig_U_table(k#),
+ "L": oct"210": oct"211": oct"212":
+ "T" kern kk#, oct"224" kern kk#, oct"225" kern kk#,
+ "Y" kern kk#, oct"230" kern kk#, oct"335" kern kk#,
+ "V" kern kkk#,
+ "W" kern kkk#;
+ligtable "g": "j" kern -k#; % logjam
+ligtable "I": "I" kern -k#; % Richard III
+ligtable "e": "V" kern kk#; % eV
+ligtable oct"241": % \k{a}
+ if serifs: "g" kern -k# , "p" kern -k#, fi\\ "w" kern k#;
+ligtable oct"252": % \l
+ "'" kern -k#
+ if not serifs: ,
+ "a" kern k#, oct"241" kern k#, "c" kern k#, oct"242" kern k#,
+ "d" kern k#, "e" kern k#, oct"246" kern k#, "g" kern k#,
+ "o" kern k#, oct"363" kern k#, "s" kern k#, oct"261" kern k#
+ fi;
+
+endinput;