fonts-environment.tex /size: 2626 b    last modification: 2021-10-28 13:50
1% language=us runpath=texruns:manuals/fonts
2
3\startenvironment fonts-environment
4
5    % we need to do this beforehand
6
7    \blockligatures[fi,fl,ff]
8
9    \startbuffer[extraminus]
10    \startluacode
11        fonts.helpers.addextraprivate("smallminus", function(tfmdata)
12            local hchar = tfmdata.characters[0x002D]
13            local mchar = tfmdata.characters[0x2212]
14            if hchar and mchar then
15                return {
16                    width    = hchar.width,
17                    height   = mchar.height,
18                    commands = {
19                        { "down", hchar.height - mchar.height },
20                        { "char", 0x002D },
21                    }
22                }
23            end
24        end)
25        fonts.helpers.addextraprivate("highminus", function(tfmdata)
26            local hchar = tfmdata.characters[0x002D]
27            local mchar = tfmdata.characters[0x2212]
28            local xchar = tfmdata.characters[0x0058]
29            if hchar and mchar and xchar then
30                return {
31                    width    = hchar.width,
32                    height   = mchar.height,
33                    commands = {
34                        { "down", - xchar.height + mchar.height },
35                        { "char", 0x002D },
36                    }
37                }
38            end
39        end)
40    \stopluacode
41    \stopbuffer
42
43    \getbuffer[extraminus]
44
45    % so far for preloading
46
47    \environment manuals-explaining-environment
48    \environment manuals-explaining-cover
49
50    \enabledirectives[visualizers.fraction=2]
51
52    \usemodule [s] [fonts-tables]
53    \usemodule [s] [fonts-missing]
54    \usemodule [s] [fonts-vectors]
55    \usemodule [s] [fonts-features]
56    \usemodule [s] [math-extensibles]
57
58    \definefontfeature[demo-onum][kern=yes,onum=yes]
59    %definefontfeature[demo-lnum][kern=yes,lnum=yes]
60    \definefontfeature[demo-tnum][kern=yes,tnum=yes]
61    \definefontfeature[demo-pnum][kern=yes,pnum=yes]
62    \definefontfeature[demo-zero][zero=yes]
63    \definefontfeature[demo-none][]
64
65    \definefont[DemoOnumLM][file:lmroman10-regular*demo-onum at 42pt]
66    %definefont[DemoLnumLM][file:lmroman10-regular*demo-lnum at 42pt]
67    \definefont[DemoTnumLM][file:lmroman10-regular*demo-tnum at 42pt]
68    \definefont[DemoPnumLM][file:lmroman10-regular*demo-pnum at 42pt]
69
70    \definefont[DemoZeroLM][file:lmroman10-regular*demo-zero at 42pt]
71    \definefont[DemoNoneLM][file:lmroman10-regular*demo-none at 42pt]
72
73    \definefont[DemoZeroLT][file:lmtypewriter10-regular*demo-zero at 42pt]
74    \definefont[DemoNoneLT][file:lmtypewriter10-regular*demo-none at 42pt]
75
76\stopenvironment
77