summaryrefslogtreecommitdiff
path: root/tex/context/fonts/mkiv/libertinus-math.lfg
blob: f0b542f426d316de3e134fd246e2c4a26d704f49 (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
-- Well, here we have yet another math font that does things differently: a huge prime in the ssty1
-- slot (not an alternate but a single) and a small one in the normal location. Actually, only primes
-- have an ssty feature. Now, because we have some magic with primes in ConTeXt we cannot use some
-- fix-feature or just disable ssty, but we have to revert to a runtime fix. Lucky me that I didn't
-- remove that hardly needed 'tweaks' mechanism yet.

return {
    name = "libertinus-math",
    version = "1.00",
    comment = "Goodies that complement libertinus.",
    author = "Hans Hagen & Mikael Sundqvist",
    copyright = "ConTeXt development team",
    mathematics = {
        parameters = {
            NoLimitSupFactor                =    0,
            NoLimitSubFactor                = 1000,
            FractionRuleThickness           =   50,
            OverbarRuleThickness            =   50,
         -- RadicalRuleThickness            =   50,
            UnderbarRuleThickness           =   50,
         -- AccentTopShiftUp                =    0,
            AccentBaseDepth                 =   10,
            RadicalDegreeBottomRaisePercent =   60,
            RadicalKernAfterDegree          = -425,
         -- RadicalRuleThickness            =   40, -- 40 in font
            DelimiterPercent                =   90,
            DelimiterShortfall              =  400,
         -- DisplayOperatorMinHeight        = 1800, -- 1250 in font (only one)
            PrimeRaisePercent               =  70, -- 50 default
            PrimeRaiseComposedPercent       =  10, -- 25 default
        },
        tweaks = {
            aftercopying = {
                {
                    tweak    = "version",
                 -- expected = "Version 6.8",
                    expected = "Version 7.040",
                },
                {
                    tweak = "dimensions",
                    list  = {
                        [0x00060] = { yoffset = -0.075 },                    -- grave
                        [0x000B4] = { yoffset = -0.075 },                    -- acute
                        [0x002C6] = { yoffset = -0.075 },                    -- hat
                        [0x002DC] = { yoffset = -0.075 },                    -- tilde
                     -- [0x000AF] = { yoffset = -0.1 },                      -- bar
                        [0x002D8] = { yoffset = -0.075 },                    -- breve
                        [0x002D9] = { yoffset = -0.05 },                     -- dot
                        [0x000A8] = { yoffset = -0.02 },                     -- ddot
                        [0x020DB] = { yoffset = -0.02 },                     -- dddot
                        [0x002DA] = { yoffset = -0.1 },                      -- ring
                     -- [0x002C7] = { yoffset = -0.1 },                      -- check
                        [0x020D7] = { yoffset = -0.1 },                      -- vec

                        [0x00300] = { yoffset = -0.1,  all = true },         -- widegrave
                        [0x00301] = { yoffset = -0.1,  all = true },         -- wideacute
                        [0x00302] = { yoffset = -0.1,  all = true },         -- widehat
                        [0x00303] = { yoffset = -0.09, all = true },         -- widetilde
                     -- [0x00304] = { yoffset = -0.12, all = true },         -- widebar
                        [0x00306] = { yoffset = -0.05, all = true },         -- widebreve
                        [0x00307] = { yoffset = -0.02, all = true },         -- widedot
                        [0x00308] = { yoffset = -0.02, all = true },         -- wideddot
                     -- [0x020DB] = { yoffset = -0.1,  all = true },         -- widedddot
                        [0x0030A] = { yoffset = -0.12, all = true },         -- widering
                        [0x0030C] = { yoffset = -0.04, all = true },         -- widecheck

                     -- [0x1D44F] = { width = 1, italic = 0, anchor = 1.5 }, -- b (6.8)
                     -- [0x1D451] = { width = 1, italic = 0, anchor = 1.2 }, -- d (6.8)
                     -- [0x0210E] = { width = 1, italic = 0, anchor = 1.5 }, -- h (6.8)
                     -- [0x1D458] = { width = 1, italic = 0, anchor = 1.5 }, -- k (6.8)
                    },
                },
                {
                    tweak = "kerns",
                    list  = {
                        [0x2F] = {
                            topleft     = -0.15,
                         -- bottomleft  =  0,
                         -- topright    =  0,
                            bottomright =  -0.15,
                       },
                    },
                },
                {
                    tweak   = "fixprimes",
                    scale   = 0.9,
                 -- smaller = true,
                    factor  = 0.9,
                },
                {
                    tweak = "checkspacing",
                },
                {
                    tweak = "addscripts",
                },
                {
                    tweak = "accentdimensions",
                },
                {
                    tweak = "addrules",
                },
            },
        },
        bigslots = {
            1, 3, 5, 7
        },
    },
}