summaryrefslogtreecommitdiff
path: root/tex/context/fonts/mkiv/pagella-math.lfg
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/fonts/mkiv/pagella-math.lfg')
-rw-r--r--tex/context/fonts/mkiv/pagella-math.lfg126
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 = {