-- In order to be able to use beta math fonts, we use our own file name and -- always remap. local common = fonts.goodies.load("common-math.lfg") local presets = common.mathematics.tweaks.presets local dimensions, kerns if CONTEXTLMTXMODE == 0 then local kern_150 = { bottomright = { { kern = -150 } } } local kern_200 = { bottomright = { { kern = -200 } } } kerns = { [0x1D449] = kern_150, -- [0x1D44A] = kern_200, -- 𝑊 [0x1D4AB] = { -- topleft = { { kern = -200 } }, bottomright = { { kern = -200 } }, }, } dimensions = { -- always applied -- default = { -- }, -- driven by 'mathdimensions' feature default = { -- the root is quite displaced [0x221A] = { -- 73, -960, 853, 40 yoffset = 960 - 40, height = 960, depth = 40, }, -- [0xFE932] = { xoffset = 50, width = 290 }, -- used prime -- [0x2032] = { xoffset = 50, width = 290 }, -- prime }, -- -- seems ok now -- -- signs = { -- -- [0x00B1] = { -- ± -- -- height = 500, depth = 0, -- -- }, -- -- [0x2213] = { -- ∓ -- -- height = 500, depth = 0, -- -- }, -- -- move in boundingbox -- [0x00B1] = { -- ± -- yoffset = 100, -- }, -- [0x2213] = { -- ∓ -- yoffset = -100, -- }, -- }, } end return { name = "latin modern", version = "1.00", comment = "Goodies that complement latin modern.", author = "Hans Hagen & Mikael Sundqvist", copyright = "ConTeXt development team", mathematics = { parameters = { FractionNumeratorDisplayStyleShiftUp = 600, -- used to be a function NoLimitSupFactor = 0, NoLimitSubFactor = 900, AccentTopShiftUp = -60, FlattenedAccentTopShiftUp = -60, -- AccentExtendMargin = 50, -- AccentBaseHeight = 0, -- AccentBaseDepth = 0, -- AccentTopOvershoot = 66, AccentSuperscriptDrop = 100, -- drop the superscripts if accents are present. Amount in percentage of height of accent(?) AccentSuperscriptPercent = 0, DelimiterPercent = 90, DelimiterShortfall = 400, -- DisplayOperatorMinHeight = 1800, -- 1300 in font (only one) PrimeRaisePercent = 60, PrimeRaiseComposedPercent = 15, -- SubSuperscriptGapMin = 160, -- 160 in font SuperscriptBaselineDropMax = 250, -- 250 in font -- SuperscriptBottomMaxWithSubscript = 344, -- 344 in font -- SuperscriptBottomMin = 108, -- 108 in font SuperscriptShiftUp = 363, -- 363 in font SuperscriptShiftUpCramped = 89, -- 289 in font }, tweaks = { aftercopying = { { tweak = "version", expected = "Version 1.958", }, { tweak = "addmirrors", }, presets.matheulercalligraphic { rscale = 1 }, presets.mathrsfscript { rscale = 1 }, presets.mathxitsarabic { rscale = 0.88 }, presets.moveitalics { correct = true }, { tweak = "dimensions", list = { -- [0x00060] = { yoffset = -0.05 }, -- grave -- [0x000B4] = { yoffset = -0.05 }, -- acute -- [0x002C6] = { yoffset = -0.05 }, -- hat -- [0x002DC] = { yoffset = -0.05 }, -- tilde -- [0x000AF] = { yoffset = -0.075 }, -- bar -- [0x002D8] = { yoffset = -0.05 }, -- breve -- [0x002D9] = { yoffset = -0.05 }, -- dot -- [0x000A8] = { yoffset = -0.05 }, -- ddot -- [0x020DB] = { yoffset = 0.2 }, -- dddot (done below!) -- [0x002DA] = { width = 0 }, -- ring (bounding box is wrong) -- [0x002C7] = { yoffset = -0.05 }, -- check -- [0x020D7] = { yoffset = -0.05 }, -- vec -- [0x00300] = { yoffset = -0.03, all = true }, -- widegrave -- [0x00301] = { yoffset = -0.03, all = true }, -- wideacute -- [0x00302] = { yoffset = -0.075, all = true }, -- widehat -- [0x00303] = { yoffset = -0.05, all = true }, -- widetilde -- [0x00304] = { yoffset = -0.02, all = true }, -- widebar -- [0x00306] = { yoffset = -0.05, all = true }, -- widebreve -- [0x00307] = { yoffset = -0.027, all = true }, -- widedot -- [0x00308] = { yoffset = -0.027, all = true }, -- wideddot -- [0x020DB] = { yoffset = -0.065, all = true }, -- widedddot -- [0x0030C] = { yoffset = -0.05, all = true }, -- widecheck -- [0x0030A] = { yoffset = -0.025, all = true }, -- widering -- [0x0212C] = { width = 0.95, italic = 0.05 }, -- script B -- [0x1D49E] = { width = 0.8, italic = 0.25 }, -- script C -- [0x1D49F] = { width = 0.9, italic = 0.11 }, -- script D -- [0x02130] = { width = 0.85, italic = 0.18 }, -- script E -- [0x02131] = { width = 0.75, italic = 0.3 }, -- script F -- [0x1D4A2] = { width = 0.9, italic = 0.11 }, -- script G -- [0x0210B] = { width = 0.85, italic = 0.18 }, -- script H -- [0x02110] = { width = 0.8, italic = 0.25 }, -- script I -- [0x1D4A5] = { width = 0.8, italic = 0.25 }, -- script J -- [0x1D4A6] = { width = 0.9, italic = 0.11 }, -- script K -- [0x02112] = { width = 0.95, italic = 0.05 }, -- script L -- [0x02133] = { width = 0.9, italic = 0.11 }, -- script M -- [0x1D4A9] = { width = 0.85, italic = 0.18 }, -- script N -- [0x1D4AA] = { width = 0.95, italic = 0.05 }, -- script O -- [0x1D4AB] = { width = 0.8, italic = 0.25 }, -- script P -- [0x1D4AB] = { width = 0.95, italic = 0.05 }, -- script Q -- [0x0211B] = { width = 0.95, italic = 0.05 }, -- script R -- [0x1D4AE] = { width = 0.9, italic = 0.11 }, -- script S -- [0x1D4AF] = { width = 0.75, italic = 0.33 }, -- script T -- [0x1D4B0] = { width = 0.9, italic = 0.11 }, -- script U -- [0x1D4B1] = { width = 0.8, italic = 0.25 }, -- script V -- [0x1D4B2] = { width = 0.8, italic = 0.25 }, -- script W -- [0x1D4B3] = { width = 0.9, italic = 0.11 }, -- script X -- [0x1D4B4] = { width = 0.85, italic = 0.18 }, -- script Y -- [0x1D4B5] = { width = 0.95, italic = 0.05 }, -- script Z -- Setting anchors to shift the location of accents -- Note: Many non-italic alphabets are wiped below -- Todo: Check the less common italic alphabets -- [0x1D483] = { anchor = 1.15 }, -- bold italic b -- [0x1D485] = { anchor = 0.8 }, -- bold italic d [0x1D487] = { anchor = 0.9 }, -- bold italic f [0x1D489] = { anchor = 1.2 }, -- bold italic h [0x1D48C] = { anchor = 1.2 }, -- bold italic k [0x1D48F] = { anchor = 1.1 }, -- bold italic n [0x1D491] = { anchor = 1.2 }, -- bold italic p [0x1D492] = { anchor = 0.9 }, -- bold italic q [0x1D49B] = { anchor = 0.9 }, -- bold italic z [0x1D736] = { anchor = 0.9 }, -- bold italic alpha [0x1D737] = { anchor = 0.9 }, -- bold italic beta [0x1D738] = { anchor = 1.1 }, -- bold italic gamma [0x1D740] = { anchor = 1.2 }, -- bold italic lambda [0x1D744] = { anchor = 1.2 }, -- bold italic omicron [0x1D6FE] = { anchor = 1.1 }, -- italic gamma [0x1D702] = { anchor = 1.1 }, -- italic eta -- [0x1D70A] = { anchor = 1.2 }, -- italic omicron -- no difference -- [0x1D70D] = { anchor = 1.2 }, -- italic varsigma -- no difference [0x1D44F] = { anchor = 1.15 }, -- italic b [0x1D451] = { anchor = 0.8, }, -- italic d [0x1D455] = { anchor = 1.15 }, -- italic h -- [0x1D456] = { anchor = 1.15 }, -- italic i (wrong code?) [0x1D458] = { anchor = 1.15 }, -- italic k [0x1D45B] = { anchor = 1.1 }, -- italic n [0x1D45D] = { anchor = 1.1 }, -- italic p [0x1D45E] = { anchor = 0.9 }, -- italic q [0x1D467] = { anchor = 0.9 }, -- italic z [0x1D6FE] = { anchor = 1.2 }, -- italic gamma [0x1D706] = { anchor = 1.2 }, -- italic lambda [0x1D70A] = { anchor = 1.1 }, -- italic omikron [0x1D70D] = { anchor = 1.1 }, -- italic varsigma [0x1D46A] = { anchor = 0.75 }, -- bold italic C [0x1D46B] = { anchor = 1.1 }, -- bold italic D [0x1D46E] = { anchor = 0.75 }, -- bold italic G [0x1D479] = { anchor = 1.2 }, -- bold italic R [0x1D47A] = { anchor = 0.8 }, -- bold italic S -- uppercaseboldscript could be improved [0x1D435] = { anchor = 1.05 }, -- italic B [0x1D436] = { anchor = 0.7 }, -- italic C [0x1D437] = { anchor = 1.05 }, -- italic D [0x1D43A] = { anchor = 0.8 }, -- italic G [0x1D443] = { anchor = 1.1 }, -- italic P [0x1D445] = { anchor = 1.05 }, -- italic R [0x1D446] = { anchor = 0.85 }, -- italic S [0x1D49C] = { anchor = 0.9 }, -- script A [0x1D49D] = { anchor = 0.95 }, -- script B [0x1D49E] = { anchor = 0.8 }, -- script C [0x1D49F] = { anchor = 0.95 }, -- script D [0x1D4A0] = { anchor = 0.85 }, -- script E [0x1D4A1] = { anchor = 0.75 }, -- script F [0x1D4A2] = { anchor = 0.9 }, -- script G [0x1D4A3] = { anchor = 0.85 }, -- script H [0x1D4A4] = { anchor = 0.8 }, -- script I [0x1D4A5] = { anchor = 0.8 }, -- script J [0x1D4A6] = { anchor = 0.85 }, -- script K [0x1D4A7] = { anchor = 0.75 }, -- script L [0x1D4A8] = { anchor = 0.9 }, -- script M [0x1D4A9] = { anchor = 0.85 }, -- script N [0x1D4AA] = { anchor = 0.95 }, -- script O [0x1D4AB] = { anchor = 0.95 }, -- script P [0x1D4AC] = { anchor = 0.95 }, -- script Q [0x1D4AD] = { anchor = 0.95 }, -- script R [0x1D4AE] = { anchor = 0.9 }, -- script S [0x1D4AF] = { anchor = 0.75 }, -- script T [0x1D4B0] = { anchor = 0.9, }, -- script U [0x1D4B1] = { anchor = 0.95 }, -- script V [0x1D4B2] = { anchor = 0.95 }, -- script W [0x1D4B3] = { anchor = 0.95 }, -- script X [0x1D4B4] = { anchor = 0.9 }, -- script Y [0x1D4B5] = { anchor = 1 }, -- script Z -- [984874] = { squeeze = 0.50, height = 0.50, depth = 0.50 }, -- [984881] = { squeeze = 0.50, height = 0.50, depth = 0.50 }, -- [984888] = { squeeze = 0.50, height = 0.50, depth = 0.50 }, -- [984895] = { squeeze = 0.50, height = 0.50, depth = 0.50 }, -- [984902] = { squeeze = 0.50, height = 0.50, depth = 0.50 }, -- [984909] = { squeeze = 0.50, height = 0.50, depth = 0.50 }, -- [984916] = { squeeze = 0.50, height = 0.50, depth = 0.50 }, -- ["0x7C.variants.*"] = { squeeze = 0.75, height = 0.75, depth = 0.75, extend = 1.15, width = 1.15 }, -- squeeze: glyph, height, depth: bbox -- ["0x7C.variants.*"] = { squeeze = 0.75, height = 0.8, depth = 0.8, extend = 1.1, width = 1.1 }, -- squeeze: glyph, height, depth: bbox ["0x7C.variants.1"]={ squeeze = 0.90, height = 0.90, depth = 0.90 }, ["0x7C.variants.2"]={ squeeze = 0.85, height = 0.85, depth = 0.85 }, ["0x7C.variants.3"]={ squeeze = 0.80, height = 0.80, depth = 0.80 }, ["0x7C.variants.4"]={ squeeze = 0.80, height = 0.80, depth = 0.80 }, ["0x7C.variants.5"]={ squeeze = 0.80, height = 0.80, depth = 0.80 }, ["0x7C.variants.6"]={ squeeze = 0.80, height = 0.80, depth = 0.80 }, ["0x7C.variants.7"]={ squeeze = 0.80, height = 0.80, depth = 0.80 }, -- [utf.byte("1")] = { -- original = utf.byte("2"), -- mode = 1, -- scale = 2, -- }, -- ["lowercasegreeksansserifbolditalic"] = { -- delta = 0x003B1 - 0x1D7AA, -- slant = 0.4, -- slant = -0.2, -- line = 0.1, -- mode = 1, -- width = 1.25, -- width = 0.95, -- scale = 0.975, -- }, }, }, -- Accents are a mess. We migrate the extensibles from the combiners to the base accent -- and then need to tweak the width (which is auto set because it was zero with a large -- accent anchor offset). First we copy and fix. { tweak = "extendaccents", }, { tweak = "fixaccents", }, -- First we set the dimensions of the initial accent which started out as zero but we want -- a proper width. { tweak = "dimensions", list = { -- [0x00300] = { width = 0.8 }, -- widegrave -- [0x00301] = { width = 0.9 }, -- wideacute [0x00302] = { width = 1.4, anchor = 1.20, xoffset = .10 }, -- widehat [0x00303] = { width = 1.4, anchor = 1.20, xoffset = .10 }, -- widetilde [0x00306] = { width = 1.4, anchor = 1.20, xoffset = .10 }, -- widebreve -- [0x0030A] = { width = 0.9, xoffset = -.0 }, -- widering [0x0030C] = { width = 1.4, anchor = 1.20, xoffset = .10 }, -- widecheck }, }, -- Then we deal with all offsets and heights in one go. So we treat the initial accent -- as well as the variants here. { tweak = "dimensions", list = { -- here we want to apply to all -- [0x00300] = { yoffset = -0.02, height = .95, all = true }, -- widegrave : 0x0060 -- [0x00301] = { yoffset = -0.02, height = .95, all = true }, -- wideacute : 0x00B4 -- [0x00302] = { yoffset = -0.03, height = .95, all = true }, -- widehat : 0x02C6 -- [0x00303] = { yoffset = -0.02, height = .95, all = true }, -- widetilde : 0x02DC -- [0x00306] = { yoffset = -0.03, height = .95, all = true }, -- widebre : 0x02D8 -- [0x0030A] = { yoffset = 0.00, height = .95, all = true }, -- widering : 0x02DA -- [0x0030C] = { yoffset = -0.03, height = .95, all = true }, -- widecheck : 0x02C7 -- [0x00304] = { yoffset = -0.05, height = .95, all = true }, -- widebar : 0x00AF -- [0x00307] = { yoffset = -0.03, height = .95, all = true }, -- widedot : 0x02D9 -- [0x00308] = { yoffset = -0.03, height = .95, all = true }, -- wideddot : 0x00A8 [0x020DB] = { yoffset = -0.015, height = .95, all = true }, -- widedddot : 0x20DB (self) }, }, -- We now copy these to the not wide slots so that we can set these to stretch as well, -- if only because it is less confusing and more consistent. { tweak = "copyaccents", }, -- So far for the accents. { -- Here we modify "corner kerns". -- We started with 0x2F, the solidus -- to have the 2 in x^2/5 a bit over the slash tweak = "kerns", list = { [0x2F] = { topleft = -0.2, -- bottomleft = 0, -- topright = 0, bottomright = -0.2, }, -- solidus [0x1D49C] = { bottomright = -0.05, }, -- script A [0x1D49D] = { bottomright = -0.05, }, -- script B [0x1D49E] = { bottomright = -0.25, }, -- script C [0x1D49F] = { bottomright = -0.11, }, -- script D [0x1D4A0] = { bottomright = -0.18, }, -- script E [0x1D4A1] = { bottomright = -0.30, }, -- script F [0x1D4A2] = { bottomright = -0.11, }, -- script G [0x1D4A3] = { bottomright = -0.18, }, -- script H [0x1D4A4] = { bottomright = -0.25, }, -- script I [0x1D4A5] = { bottomright = -0.25, }, -- script J [0x1D4A6] = { bottomright = -0.11, }, -- script K [0x1D4A7] = { bottomright = -0.05, }, -- script L [0x1D4A8] = { bottomright = -0.11, }, -- script M [0x1D4A9] = { bottomright = -0.18, }, -- script N [0x1D4AA] = { bottomright = -0.05, }, -- script O [0x1D4AB] = { bottomright = -0.25, }, -- script P [0x1D4AC] = { bottomright = -0.05, }, -- script Q [0x1D4AD] = { bottomright = -0.05, }, -- script R [0x1D4AE] = { bottomright = -0.11, }, -- script S [0x1D4AF] = { bottomright = -0.33, }, -- script T [0x1D4B0] = { bottomright = -0.11, }, -- script U [0x1D4B1] = { bottomright = -0.25, }, -- script V [0x1D4B2] = { bottomright = -0.25, }, -- script W [0x1D4B3] = { bottomright = -0.11, }, -- script X [0x1D4B4] = { bottomright = -0.18, }, -- script Y [0x1D4B5] = { bottomright = -0.05, }, -- script Z ["0x7D.parts.top"] = { topright = -0.25, }, -- right brace top ["0x7D.parts.bottom"] = { bottomright = -0.25, }, -- right brace bottom ["0x7D.variants.*"] = { topright = -0.25, bottomright = -0.25, }, -- right brace variants ["0x29.parts.top"] = { topright = -0.3, }, -- right parenthesis top ["0x29.parts.bottom"] = { bottomright = -0.3, }, -- right parenthesis bottom ["0x29.variants.*"] = { topright = -0.25, bottomright = -0.25, }, -- right parenthesis variants ["0x221A.parts.top"] = { topright = 0.2, }, -- right radical top ["0x221A.parts.bottom"] = { bottomright = 0.2, }, -- right radical bottom ["0x221A.variants.*"] = { topright = 0.2, bottomright = 0.2, }, -- right radical variants -- angle [0x27E9] = { topright = -0.2, bottomright = -0.2 }, ["0x27E9.variants.*"] = { topright = -0.3, bottomright = -0.3 }, [0x27EB] = { topright = -0.2, bottomright = -0.2 }, ["0x27EB.variants.*"] = { topright = -0.3, bottomright = -0.3 }, }, }, -- { -- tweak = "staircase", -- list = { -- }, -- }, { -- For upright alphabets, we unset the anchor. -- This means that accents are placed -- centered over the character tweak = "wipeanchors", -- list = { 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, -- todo: ranges list = { "digitsbold", "digitsdoublestruck", "digitsmonospace", "digitsnormal", "digitssansserifbold", "digitssansserifnormal", "lowercasebold", "lowercaseboldfraktur", "lowercasedoublestruck", "lowercasefraktur", "lowercasegreekbold", "lowercasegreeknormal", "lowercasegreeksansserifbold", "lowercasemonospace", "lowercasenormal", "lowercasesansserifbold", "lowercasesansserifnormal", "uppercasebold", "uppercaseboldfraktur", "uppercasedoublestruck", "uppercasefraktur", "uppercasegreekbold", "uppercasegreeknormal", "uppercasegreeksansserifbold", "uppercasemonospace", "uppercasenormal", -- they are italic! "uppercasesansserifbold", "uppercasesansserifnormal", }, }, { -- For non-italic alphabets we -- remove italic correction. tweak = "wipeitalics", list = { -- "digitsbold", -- "digitsdoublestruck", -- "digitsmonospace", -- "digitsnormal", -- "digitssansserifbold", -- "digitssansserifnormal", -- "lowercasebold", -- "lowercaseboldfraktur", -- "lowercasedoublestruck", -- "lowercasefraktur", "lowercasemonospace", -- "lowercasenormal", -- "lowercasesansserifbold", -- "lowercasesansserifnormal", -- "lowercasegreeknormal", "uppercasebold", -- "uppercaseboldfraktur", -- "uppercasedoublestruck", -- "uppercasefraktur", -- "uppercasegreekbold", -- "uppercasegreeknormal", -- "uppercasegreeksansserifbold", "uppercasemonospace", "uppercasesansserifbold", "uppercasesanserifnormal", }, }, { -- This one fakes margins to get larger/smaller accents -- with for example \widetilde. tweak = "margins", list = { [0x1D487] = { left = -.2, right = -.2 }, -- bold italic f [0x1D489] = { left = -.2, right = -.2 }, -- bold italic h [0x1D496] = { left = -.1, right = -.1 }, -- bold italic u [0x1D499] = { left = -.1, right = -.1 }, -- bold italic x [0x1D711] = { left = -.1, right = -.1 }, -- italic varphi [0x1D713] = { left = -.1, right = -.1 }, -- italic psi [0x1D659] = { left = -.1, right = -.1 }, -- sans bold italic d [0x1D65C] = { left = -.1, right = -.1 }, -- sans bold italic g [0x1D409] = { left = .1, right = .1 }, -- bold upright J [0x1D412] = { left = .1, right = .1 }, -- bold upright S [0x1D509] = { left = .1, right = .1 }, -- fraktur F [0x1D50C] = { left = .1, right = .1 }, -- fraktur I [0x1D50D] = { left = .1, right = .1 }, -- fraktur J [0x1D51D] = { left = .1, right = .1 }, -- fraktur Z [0x1D538] = { left = .1, right = .1 }, -- doublestruck A [0x1D539] = { left = .1, right = .1 }, -- doublestruck B [0x1D53C] = { left = .1, right = .1 }, -- doublestruck E [0x1D53D] = { left = .1, right = .1 }, -- doublestruck F [0x1D541] = { left = .1, right = .1 }, -- doublestruck J [0x1D542] = { left = .1, right = .1 }, -- doublestruck K [0x1D543] = { left = .1, right = .1 }, -- doublestruck L [0x1D547] = { left = .1, right = .1 }, -- doublestruck P [0x1D549] = { left = .1, right = .1 }, -- doublestruck R [0x1D54A] = { left = .1, right = .1 }, -- doublestruck S [0x1D54B] = { left = .1, right = .1 }, -- doublestruck T [0x1D54D] = { left = .1, right = .1 }, -- doublestruck V [0x1D550] = { left = .1, right = .1 }, -- doublestruck Y [0x1D506] = { left = .1, right = .1 }, -- fraktur C [0x00393] = { left = .1, right = .1 }, -- upfight Gamma [0x00396] = { left = .1, right = .1 }, -- upfight Zeta [0x1D5D8] = { left = .1, right = .1 }, -- sans bold E [0x1D5D9] = { left = .1, right = .1 }, -- sans bold F -- [0x1D5DD] = { left = .2, right = .2 }, -- sans bold J -- nope [0x1D5DF] = { left = .1, right = .1 }, -- sans bold L [0x1D5E6] = { left = .1, right = .1 }, -- sans bold S [0x1D61A] = { left = .1, right = .1 }, -- sans italic S [0x1D5A2] = { left = .1, right = .1 }, -- sans C [0x1D5A4] = { left = .1, right = .1 }, -- sans E [0x1D5A5] = { left = .1, right = .1 }, -- sans F -- [0x1D5AB] = { left = .1, right = .1 }, -- sans L -- nope [0x1D5AF] = { left = .1, right = .1 }, -- sans P [0x1D5B2] = { left = .1, right = .1 }, -- sans S [0x1D5B9] = { left = .1, right = .1 }, -- sans Z [0x1D4A0] = { left = .1, right = .1 }, -- script E [0x1D4AE] = { left = .1, right = .1 }, -- script S [0x1D4B4] = { left = .1, right = .1 }, -- script Y -- [0x4A] = { left = .2, right = .2 }, -- J [0x4C] = { left = .1, right = .1 }, -- L [0x53] = { left = .1, right = .1 }, -- S [0x5A] = { left = .1, right = .1 }, -- Z [0x1D43D] = { left = -.1, right = -.1 }, -- italic J [0x1D409] = { left = -.1, right = -.1 }, -- bold J [0x1D471] = { left = -.1, right = -.1 }, -- bold italic J [0x1D4D9] = { left = -.05, right = -.05 }, -- bold script J }, }, { tweak = "fixprimes", factor = 1.05, -- smaller = true, scale = 0.9, -- fake = 0.6, }, { tweak = "checkspacing", }, { tweak = "fixradicals", }, { tweak = "addprivates", }, { tweak = "addscripts", }, { tweak = "accentdimensions", }, { tweak = "addrules", }, { tweak = "addbars", advance = 0.52, }, { tweak = "addactuarian", }, { tweak = "addfourier", variant = 1, }, { tweak = "addequals", }, -- { -- tweak = "wipevariants", -- list = { -- 0x7C, -- }, -- }, }, }, bigslots = { 1, 3, 5, 7 -- In fact, 6 is the last one. }, -- -- experimental fixes for mkiv: -- dimensions = dimensions, kerns = kerns, }, filenames = { ["latinmodern-math-regular.otf"] = { "latinmodern-math.otf", -- the beta "lmmath-regular.otf", "latinmodernmath-regular.otf", "lmmath-regular.otf", "lmodernmath-regular.otf", "lmodern-math.otf", }, }, designsizes = { ["LMMathRoman-Regular"] = { ["4pt"] = "LMMath5-Regular@lmroman5-math", ["5pt"] = "LMMath5-Regular@lmroman5-math", ["6pt"] = "LMMath6-Regular@lmroman6-math", ["7pt"] = "LMMath7-Regular@lmroman7-math", ["8pt"] = "LMMath8-Regular@lmroman8-math", ["9pt"] = "LMMath9-Regular@lmroman9-math", ["10pt"] = "LMMath10-Regular@lmroman10-math", ["11pt"] = "LMMath10-Regular@lmroman10-math", ["12pt"] = "LMMath12-Regular@lmroman12-math", default = "LMMath10-Regular@lmroman10-math" }, ["LMMathRoman-Bold"] = { -- not yet ready ["4pt"] = "LMMath5-Regular@lmroman5-math", ["5pt"] = "LMMath5-Regular@lmroman5-math", ["6pt"] = "LMMath6-Regular@lmroman6-math", ["7pt"] = "LMMath7-Regular@lmroman7-math", ["8pt"] = "LMMath8-Regular@lmroman8-math", ["9pt"] = "LMMath9-Regular@lmroman9-math", ["10pt"] = "LMMath10-Regular@lmroman10-math", ["11pt"] = "LMMath10-Regular@lmroman10-math", ["12pt"] = "LMMath12-Regular@lmroman12-math", default = "LMMath10-Regular@lmroman10-math" }, ["LMRoman-Regular"] = { ["4pt"] = "file:lmroman5-regular", ["5pt"] = "file:lmroman5-regular", ["6pt"] = "file:lmroman6-regular", ["7pt"] = "file:lmroman7-regular", ["8pt"] = "file:lmroman8-regular", ["9pt"] = "file:lmroman9-regular", ["10pt"] = "file:lmroman10-regular", ["11pt"] = "file:lmroman10-regular", ["12pt"] = "file:lmroman12-regular", default = "file:lmroman10-regular", }, ["LMRoman-Bold"] = { ["4pt"] = "file:lmroman5-bold", ["5pt"] = "file:lmroman5-bold", ["6pt"] = "file:lmroman6-bold", ["7pt"] = "file:lmroman7-bold", ["8pt"] = "file:lmroman8-bold", ["9pt"] = "file:lmroman9-bold", ["10pt"] = "file:lmroman10-bold", ["11pt"] = "file:lmroman10-bold", ["12pt"] = "file:lmroman12-bold", default = "file:lmroman10-bold", }, ["LMRoman-Demi"] = { default = "file:lmromandemi10-regular", }, ["LMRoman-Italic"] = { ["4pt"] = "file:lmroman7-italic", ["5pt"] = "file:lmroman7-italic", ["6pt"] = "file:lmroman7-italic", ["7pt"] = "file:lmroman7-italic", ["8pt"] = "file:lmroman8-italic", ["9pt"] = "file:lmroman9-italic", ["10pt"] = "file:lmroman10-italic", ["11pt"] = "file:lmroman10-italic", ["12pt"] = "file:lmroman12-italic", default = "file:lmroman10-italic", }, ["LMRoman-Oblique"] = { ["4pt"] = "file:lmromanslant8-regular", ["5pt"] = "file:lmromanslant8-regular", ["6pt"] = "file:lmromanslant8-regular", ["7pt"] = "file:lmromanslant8-regular", ["8pt"] = "file:lmromanslant8-regular", ["9pt"] = "file:lmromanslant9-regular", ["10pt"] = "file:lmromanslant10-regular", ["11pt"] = "file:lmromanslant10-regular", ["12pt"] = "file:lmromanslant12-regular", default = "file:lmromanslant10-regular", }, ["LMRoman-BoldItalic"] = { default = "file:lmroman10-bolditalic", }, ["LMRoman-BoldOblique"] = { default = "file:lmromanslant10-bold", }, ["LMRoman-DemiOblique"] = { default = "file:lmromandemi10-oblique", }, ["LMRoman-CapsRegular"] = { default = "file:lmromancaps10-regular", }, ["LMRoman-CapsOblique"] = { default = "file:lmromancaps10-oblique", }, ["LMRoman-Dunhill"] = { default = "file:lmromandunh10-regular", }, ["LMRoman-DunhillOblique"] = { default = "file:lmromandunh10-oblique", }, ["LMRoman-Unslanted"] = { default = "file:lmromanunsl10-regular", }, ["LMSans-Regular"] = { ["8pt"] = "file:lmsans8-regular", ["9pt"] = "file:lmsans9-regular", ["10pt"] = "file:lmsans10-regular", ["11pt"] = "file:lmsans10-regular", ["12pt"] = "file:lmsans12-regular", default = "file:lmsans10-regular", }, ["LMSans-Oblique"] = { ["8pt"] = "file:lmsans8-oblique", ["9pt"] = "file:lmsans9-oblique", ["10pt"] = "file:lmsans10-oblique", ["11pt"] = "file:lmsans10-oblique", ["12pt"] = "file:lmsans12-oblique", default = "file:lmsans10-oblique", }, ["LMSans-Bold"] = { default = "file:lmsans10-bold", }, ["LMSans-BoldOblique"] = { default = "file:lmsans10-boldoblique", }, ["LMSans-DemiCondensed"] = { default = "file:lmsansdemicond10-regular", }, ["LMSans-DemiCondensedOblique"] = { default = "file:lmsansdemicond10-oblique", }, ["LMTypewriter-Regular"] = { ["8pt"] = "file:lmmono8-regular", ["9pt"] = "file:lmmono9-regular", ["10pt"] = "file:lmmono10-regular", ["11pt"] = "file:lmmono10-regular", ["12pt"] = "file:lmmono12-regular", default = "file:lmmono10-regular", }, ["LMTypewriter-Light"] = { default = "file:lmmonolt10-regular", }, ["LMTypewriter-Dark"] = { default = "file:lmmonolt10-bold", }, ["LMTypewriter-Italic"] = { default = "file:lmmono10-italic", }, ["LMTypewriter-LightOblique"] = { default = "file:lmmonolt10-oblique", }, ["LMTypewriter-Oblique"] = { default = "file:lmmonoslant10-regular", }, ["LMTypewriter-DarkOblique"] = { default = "file:lmmonolt10-boldoblique", }, ["LMTypewriter-LightCondensed"] = { default = "file:lmmonoltcond10-regular", }, ["LMTypewriter-LightCondensedOblique"] = { default = "file:lmmonoltcond10-oblique", }, ["LMTypewriterVarWd-Regular"] = { default = "file:lmmonoproplt10-regular", }, ["LMTypewriterVarWd-Oblique"] = { default = "file:lmmonoproplt10-oblique", }, ["LMTypewriterVarWd-Light"] = { default = "file:lmmonoprop10-regular", }, ["LMTypewriterVarWd-LightOblique"] = { default = "file:lmmonoprop10-oblique", }, ["LMTypewriterVarWd-Dark"] = { default = "file:lmmonoproplt10-bold", }, ["LMTypewriterVarWd-DarkOblique"] = { default = "file:lmmonoproplt10-boldoblique", }, ["LMTypewriter-CapsRegular"] = { default = "file:lmmonocaps10-regular", }, ["LMTypewriter-CapsOblique"] = { default = "file:lmmonocaps10-oblique", }, } }