summaryrefslogtreecommitdiff
path: root/tex/context/fonts/mkiv/xits-math.lfg
blob: 374f03a0e77d0ecf386c0f7f0a8400d5ba37038f (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
-- When testing XITS in LMTX one has to do this:
--
-- \definefilesynonym [type-imp-xits.mkiv] [type-imp-xits.mkiv]

return {
    name = "xits-math",
    version = "1.00",
    comment = "Goodies that complement xits (by Khaled Hosny).",
    author = "Hans Hagen & Mikael Sundqvist",
    copyright = "ConTeXt development team",
    filenames = {
        ["xitsmath-regular.otf"] = {
            "xitsmath-regular.otf",
            "xits-math.otf",
        },
        ["xitsmath-bold.otf"] = {
            "xitsmath-bold.otf",
            "xits-mathbold.otf",
        },
    },
    mathematics = {
        parameters = {
            NoLimitSupFactor                =    0,
            NoLimitSubFactor                = 1000,
         -- AccentBaseHeight                =    0,
            AccentBaseDepth                 =   30,
            FlattenedAccentTopShiftUp       =   0, -- now also set, the wide ones (so we can move in one go)
         -- AccentExtendMargin              =   50,
            RadicalDegreeBottomRaisePercent =   65,
         -- RadicalKernBeforeDegree         =  500,
            RadicalKernAfterDegree          = -500,
            RadicalVerticalGap              =   10,
         -- RadicalRuleThickness            =   68, -- 68 in font (but shifted down)
            DelimiterPercent                =   90,
            DelimiterShortfall              =  400,
            DisplayOperatorMinHeight        = 1800, -- 1800 in font
            PrimeRaisePercent               =   75, -- 50 default
            PrimeRaiseComposedPercent       =   10, -- 25 default

        },
        tweaks = {
            aftercopying = {
                {
                    tweak    = "version",
                    expected = "Version 1.302",
                },
                {
                    tweak = "kerns",
                    list  = {
                        [0x2F] = {
                            topleft     = -0.1,
                         -- bottomleft  =  0,
                         -- topright    =  0,
                            bottomright =  -0.1,
                       },
                    },
                },
                -- 0xFEOO should be chancery style, if present
                {
                    tweak    = "variants",
                    kind     = "script",
                    feature  = "ss01",-- this changes to chancery style for xits
                 -- feature  = false, -- use the saved ones (see typescript)
                    selector = 0xFE00,
                },
                -- 0xFEO1 should be roundhand style, if present
                {
                    tweak    = "variants",
                    kind     = "script",
                    selector = 0xFE01,
                },
                {
                    tweak = "dimensions",
                    list  = {
                        -- nothing yet
                    },
                },
                {
                    tweak  = "fixprimes",
                 -- smaller = true,
                    factor = 0.85,
                },
                {
                    tweak = "checkspacing",
                },
                {
                    tweak = "addscripts",
                },
                {
                    tweak = "accentdimensions",
                },
                {
                    tweak = "addrules",
                },
                {
                    tweak = "setoptions",
                    set   = { "ignorekerndimensions" }
                },
            },
        },
        alternates = {
            calligraphic = { feature = 'ss01', value = 1, comment = "Mathematical Calligraphic Alphabet" },
            greekssup    = { feature = 'ss02', value = 1, comment = "Mathematical Greek Sans Serif Alphabet" },
            greekssit    = { feature = 'ss03', value = 1, comment = "Mathematical Italic Sans Serif Digits" },
            monobfnum    = { feature = 'ss04', value = 1, comment = "Mathematical Bold Monospace Digits" },
            mathbbbf     = { feature = 'ss05', value = 1, comment = "Mathematical Bold Double-Struck Alphabet" },
            mathbbit     = { feature = 'ss06', value = 1, comment = "Mathematical Italic Double-Struck Alphabet" },
            mathbbbi     = { feature = 'ss07', value = 1, comment = "Mathematical Bold Italic Double-Struck Alphabet" },
            upint        = { feature = 'ss08', value = 1, comment = "Upright Integrals" },
            vertnot      = { feature = 'ss09', value = 1, comment = "Negated Symbols With Vertical Stroke" },
        },
    }
}