blob: e40fb0dc19cfe6616dfbdc84194fde658a9cba05 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
% blackboard typefaces by Anthony Phan.
% file: mbbsmcdr.mf (small caps driver file)
% last modification: 25.10.2001.
mode_setup; font_setup;
font_coding_scheme:="mbb small caps";
% desserves much more care.
% encoding
bbes_zet=hex"19";
bbslash_o=hex"1C"; bbslash_O=hex"1F";
bbae=hex"1A"; bbAE=hex"1D";
bboe=hex"1B"; bbOE=hex"1E";
bbgrave=hex"12"; bbacute=hex"13";
bbcircumflex=hex"5E"; bbhacheck=hex"14"; bbtilde=hex"7E";
bbbreve=hex"15"; bbmacron=hex"16";
bbdotaccent=hex"5F"; bbumlaut=hex"7F";bbcirc_accent=hex"17";
bbcedilla=hex"18";
% bblong_umlaut:=hex"7D";
bbleft_slanted_cross=hex"20";
% bbogonek=hex"22";% Polish
bbrough=hex"9E"; bbsmooth=hex"9F";% Greek
% bbstraight_accent=hex"E0";% Greek
bbstar=hex"2A"; bbcomma=hex"2C"; bbperiod=hex"2E";
bbcolon=hex"3A"; bbsemicolon=hex"3B";
bbquestion_mark=hex"3F"; bbexclamation_point=hex"21";
bbspanish_shriek=hex"05"; bbspanish_query=hex"06";
bbslash=hex"2F"; bbback_slash=hex"5C";
vertical=hex"7C";
parenthesis_left=hex"28"; parenthesis_right=hex"29";
bracket_left=hex"5B"; bracket_right=hex"5D";
brace_left=hex"7B"; brace_right=hex"7D";
bbapostrophe=hex"27"; bbreverse_apostrophe=hex"60";
bbopening_quotes=hex"02"; bbclosing_quotes=hex"03";
bbgerman_opening_quotes=hex"04";
bbstraight_quotes=hex"22"; % ASCII location
bbdash=hex"2D"; bben_dash=hex"00"; bbem_dash=hex"01";
ligtable bbdash: bbdash=:bben_dash;
ligtable bben_dash: bbdash=:bbem_dash;
ligtable bbreverse_apostrophe: bbreverse_apostrophe=:bbopening_quotes;
ligtable bbapostrophe: bbapostrophe=:bbclosing_quotes;
ligtable bbcomma: bbcomma=:bbgerman_opening_quotes;
ligtable bbexclamation_point: bbreverse_apostrophe=:bbspanish_shriek;
ligtable bbquestion_mark: bbreverse_apostrophe=:bbspanish_query;
% bbhash_mark=hex"23";
bbdollar=hex"24";
% bbpercent=hex"25";
bbesperluette=hex"26";
% bbat_sign=hex"40";
% bbpartial_derivative=hex"A0";
% bbperthousand=hex"E8";
% bbeuro=hex"E9"; bbpound=hex"EA"; bbcent=hex"EB"; bbyen=hex"EC";
bbAlpha=hex"81"; bbBeta=hex"82"; bbGamma=hex"83"; bbDelta=hex"84";
bbEpsilon=hex"85"; bbZeta=hex"86"; bbEta=hex"87"; bbTheta=hex"88";
bbIota=hex"89"; bbKappa=hex"8A"; bbLambda=hex"8B"; bbMu=hex"8C";
bbNu=hex"8D"; bbXi=hex"8E"; bbOmicron=hex"8F"; bbPi=hex"90";
bbRho=hex"91"; bbSigma=hex"92"; bbTau=hex"93"; bbUpsilon=hex"94";
bbPhi=hex"95"; bbChi=hex"96"; bbPsi=hex"97"; bbOmega=hex"98";
boolean variant_Upsilon; variant_Upsilon=false;
bbslash_Sigma=hex"9A"; bbnabla=hex"9B"; bbcoprod=hex"9C";
bbmho=hex"9D";
% bbDigamma=hex"E1"; bbKoppa=hex"E2"; bbSampi=hex"E3";
% Activate to allow characters with undefined code.
% (for proof mode compilation)
%def iff expr b=
% if b: let next_=use_it else: let next_=use_it fi; next_
%enddef;
extra_endchar:=extra_endchar&";charcode:=charcode+code_offset;";
code_offset:=0;
% let the show begin:
input mbbromup;
input mbbromxu;
input mbbdigit;
input mbbaccnt;
input mbbpunct;
input mbbsymbl;
input mbbgrkup;
forsuffixes $=u,letter_fit,body_height,cap_height,x_height,o:
$.#:=lower.$.#;
endfor
thin2#:=thin1#; thick2#:=thick1#;
font_setup;
code_offset:=ASCII"a"-ASCII"A";
input mbbromup;
input mbbgrkup;
code_offset:=-3;
input mbbromxu;
% parameters for TFM files.
font_slant=slant;
font_x_height=x_height#;
font_normal_stretch=3u#;
font_normal_shrink=2u#;
font_quad=18u#+4letter_fit#;
font_extra_space=2u#;
font_normal_space=6u#+2letter_fit#;
bye.
|