diff options
Diffstat (limited to 'tex/context/fonts/mkiv/pagella-math.lfg')
-rw-r--r-- | tex/context/fonts/mkiv/pagella-math.lfg | 126 |
1 files changed, 82 insertions, 44 deletions
diff --git a/tex/context/fonts/mkiv/pagella-math.lfg b/tex/context/fonts/mkiv/pagella-math.lfg index f03c10d65..9be98adcf 100644 --- a/tex/context/fonts/mkiv/pagella-math.lfg +++ b/tex/context/fonts/mkiv/pagella-math.lfg @@ -9,7 +9,7 @@ local dimensions, kerns if CONTEXTLMTXMODE == 0 then -- [0x1D453] = offset_f, -- 𝑓 -- ["1:0x1D453"] = offset_f, -- needed for compact -- ["2:0x1D453"] = offset_f, -- needed for compact --- ["*:0x1D453"] = offset_f, -- 𝑓 + -- ["*:0x1D453"] = offset_f, -- 𝑓 }, } @@ -28,8 +28,9 @@ local dimensions, kerns if CONTEXTLMTXMODE == 0 then end -- When set this will bypass the italic correction hackery! + local integral_variants = { bottomright = -0.20 } --- local integral_top = { topright = 0.05 } +----- integral_top = { topright = 0.05 } local integral_bottom = { bottomright = -0.20 } @@ -43,11 +44,13 @@ return { parameters = { NoLimitSupFactor = 0, NoLimitSubFactor = 900, - AccentTopShiftUp = 30, + AccentTopShiftUp = 10, + FlattenedAccentTopShiftUp = 10, -- now also set, the wide ones (so we can move in one go) + -- AccentExtendMargin = 50, -- AccentBaseHeight = 0, AccentBaseDepth = 80, --- SpaceAfterScript = 0, --- SpaceAfterScript = 30, + -- SpaceAfterScript = 0, + -- SpaceAfterScript = 30, RadicalDegreeBottomRaisePercent = 60, RadicalKernAfterDegree = -500, RadicalRuleThickness = 54, -- 60 in font @@ -78,36 +81,7 @@ return { { tweak = "dimensions", list = { -- offset width italic - -- [0x002C6] = { scale=.85, yoffset = .1, width = .85, height = .935 }, -- hat - -- [0x00302] = { scale=.85, yoffset = .1, width = .85, height = .935 }, -- hat - -- [0x002C6] = { scale=.75, yoffset = .2, advance = .75, width = .75, height = .90 }, -- hat - -- [0x00302] = { scale=.75, yoffset = .2, advance = .75, width = .75, height = .90 }, -- hat - - [0x00060] = { yoffset = -0.035 }, -- grave - [0x000B4] = { yoffset = -0.035 }, -- acute - [0x002C6] = { yoffset = -0.035 }, -- hat - [0x002DC] = { yoffset = -0.035 }, -- tilde - [0x000AF] = { yoffset = -0.05 }, -- bar - [0x002D8] = { yoffset = -0.035 }, -- breve - [0x002D9] = { yoffset = -0.035 }, -- dot - [0x000A8] = { yoffset = -0.05 }, -- ddot - [0x020DB] = { yoffset = -0.06 }, -- dddot - -- [0x002DA] = { yoffset = -0.05 }, -- ring - -- [0x002C7] = { yoffset = -0.05 }, -- check [0x020D7] = { yoffset = -0.05 }, -- vec - - -- [0x00300] = { yoffset = -0.07, all=true }, -- widegrave - -- [0x00301] = { yoffset = -0.07, all=true }, -- wideacute - [0x00302] = { yoffset = -0.02, all=true }, -- widehat - [0x00303] = { yoffset = -0.02, all=true }, -- widetilde - [0x00304] = { yoffset = -0.05, all=true }, -- widebar - [0x00306] = { yoffset = -0.03, all=true }, -- widebreve - [0x00307] = { yoffset = -0.03, all=true }, -- widedot - [0x00308] = { yoffset = -0.03, all=true }, -- wideddot - -- [0x020DB] = { yoffset = 0, all=true }, -- widedddot - -- [0x0030A] = { yoffset = -0.05, all=true }, -- widering - [0x0030C] = { yoffset = -0.03, all=true }, -- widecheck - [0x1D44E] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- a [0x1D44F] = { xoffset = 0, width = 1, italic = 0, anchor = 1.3 }, -- b [0x1D450] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- c @@ -132,6 +106,62 @@ return { [0x1D71D] = { xoffset = 0, width = 1, italic = 0, anchor = 0.7 }, -- \varpi }, }, + + -- 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.9 }, -- 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.01, 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. + + { + tweak = "fixslashes", + }, + { tweak = "kerns", list = { @@ -141,16 +171,7 @@ return { -- bottomleft = 0, -- topright = 0, bottomright = -0.2, - }, - --- [0x1D453] = { --- topleft = 3, --- bottomleft = 3, --- topright = 3, --- bottomright = 3, --- }, - - + }, ["0x7D.parts.top"] = { topright = -0.15, }, -- right brace top @@ -223,6 +244,23 @@ return { { tweak = "addrules", }, + { + tweak = "addarrows", + }, + { + tweak = "addbars", + advance = 0.2, + }, + { + tweak = "addactuarian", + }, + { + tweak = "addequals", + }, + { + tweak = "addfourier", + variant = 1, + }, }, }, bigslots = { |