summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/public/levy/graccent.mf
blob: bd65d29e7c8fa5ccbd7526cecd8e09e114a8d52c (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
if unknown gen_acc : readfrom("gen_acc") fi
     
cmchar "Grave accent";
beginchar("`",9u#,acc_ht#,0);
grave(.5w);
endchar;
     
cmchar "Acute accent";
beginchar("'",9u#,acc_ht#,0);
acute(.5w);
endchar;
     
cmchar "Circumflex accent";
beginchar("~",9u#,circ_ht#,0);
circumflex(.5w);
endchar;
     
cmchar "Diaeresis";
beginchar(oct"042",9u#,circ_ht#,0);
diaeresis(.5w);
endchar;
     
cmchar "Rough breathing";
beginchar("<",9u#,acc_ht#,0);
spirit(.5w)<;
endchar;
     
cmchar "Smooth breathing";
beginchar(">",9u#,acc_ht#,0);
spirit(.5w)>;
endchar;
     
cmchar "Rough breathing with acute";
beginchar(oct"126",9u#,acc_ht#,0);
spirit_acute(.5w)<;
endchar;
     
cmchar "Rough breathing with grave";
beginchar(oct"103",9u#,acc_ht#,0);
spirit_grave(.5w)<;
endchar;
     
cmchar "Rough breathing with circumflex";
beginchar(oct"100",9u#,acc_ht#,0);
spirit_circumflex(.5w)<;
endchar;
     
cmchar "Smooth breathing with acute";
beginchar(oct"136",9u#,acc_ht#,0);
spirit_acute(.5w)>;
endchar;
     
cmchar "Smooth breathing with grave";
beginchar(oct"137",9u#,Circ_ht#,0);
spirit_grave(.5w)>;
endchar;
     
cmchar "Smooth breathing and circumflex";
beginchar(oct"134",9u#,Circ_ht#,0);
spirit_circumflex(.5w)>;
endchar;
     
cmchar "Diaeresis with acute";
beginchar(oct"043",9u#,acc_ht#,0);
diaeresis_acute(.5w);
endchar;
     
cmchar "Diaeresis with grave";
beginchar(oct"044",9u#,acc_ht#,0);
diaeresis_grave(.5w);
endchar;
     
cmchar "Diaeresis with circumflex";
beginchar(oct"040",9u#,Circ_ht#,0);
diaeresis_circumflex(.5w);
endchar;
     
cmchar "Iota subscript";
beginchar("|",9u#,0,.6desc_depth#);
iota_sub(.5w);
endchar;
     
cmchar "Breve accent";
beginchar(oct"036",9u#,min(asc_height#,2x_height#),0);
italcorr h#*slant+.5vair#-1.5u#;
adjust_fit(0,0);
pickup crisp.nib; pos1(vair,-180); pos3(vair,0);
top y1=top y3=h; lft x1r=w-rt x3r=hround(2u-.5vair);
numeric mid_thickness; mid_thickness=vround 1/3[vair,stem];
pos2(mid_thickness,-90); x2=.5w;
bot y2r=vround max(x_height+o+tiny,1/3[x_height,h]+o-.5mid_thickness);
filldraw stroke z1e{down}...z2e{right}...{up}z3e;  % stroke
endchar;
     
cmchar "Macron (bar) accent";
numeric macron_breadth#; macron_breadth#=.2[vair#,stem#];
beginchar(oct"037",9u#,.4[x_height#,asc_height#]+macron_breadth#,0);
italcorr h#*slant-.75u#;
adjust_fit(0,0);
numeric macron_breadth; macron_breadth:=Vround .2[vair,stem];
pickup if serifs: crisp.nib else: fine.nib fi;
pos1(macron_breadth,90); pos2(macron_breadth,90);
top y1r=top y2r=h+o; lft x1=w-rt x2=hround 1.25u;
filldraw stroke z1e--z2e;  % bar
endchar;