diff options
Diffstat (limited to 'tex/context/fonts/mkiv')
24 files changed, 1289 insertions, 496 deletions
diff --git a/tex/context/fonts/mkiv/asana-math.lfg b/tex/context/fonts/mkiv/asana-math.lfg index 6177cb831..afa59d40a 100644 --- a/tex/context/fonts/mkiv/asana-math.lfg +++ b/tex/context/fonts/mkiv/asana-math.lfg @@ -1,34 +1,28 @@ -- This patch code is moved from font-pat.lua to this goodies -- files as it does not belong in the core code. +-- +-- local patches = fonts.handlers.otf.enhancers.patches +-- +-- local function patch(data,filename,threshold) +-- local m = data.metadata.math +-- if m then +-- local d = m.DisplayOperatorMinHeight or 0 +-- if d < threshold then +-- patches.report("DisplayOperatorMinHeight(%s -> %s)",d,threshold) +-- m.DisplayOperatorMinHeight = threshold +-- end +-- end +-- end +-- +-- patches.register("after","analyze math","asana",function(data,filename) patch(data,filename,1350) end) +-- +-- local function less(value,target,original) +-- -- officially we should check the original +-- return 0.25 * value +-- end -local patches = fonts.handlers.otf.enhancers.patches - -local function patch(data,filename,threshold) - local m = data.metadata.math - if m then - local d = m.DisplayOperatorMinHeight or 0 - if d < threshold then - patches.report("DisplayOperatorMinHeight(%s -> %s)",d,threshold) - m.DisplayOperatorMinHeight = threshold - end - end -end - -patches.register("after","analyze math","asana",function(data,filename) patch(data,filename,1350) end) - -local function less(value,target,original) - -- officially we should check the original - return 0.25 * value -end - -local function more(value,target,original) - local o = original.mathparameters.DisplayOperatorMinHeight - if o < 2800 then - return 2800 * target.parameters.factor - else - return value -- already scaled - end -end +-- Just don't use this font. It's not good enough for production unless we patch it +-- a lot, which we will not do unless we need it. return { name = "asana-math", @@ -38,30 +32,24 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - -- DisplayOperatorMinHeight = 0, -- more - -- StackBottomDisplayStyleShiftDown = 0, - -- StackBottomShiftDown = 0, - -- StackDisplayStyleGapMin = 0, - -- StackGapMin = 0, - -- StackTopDisplayStyleShiftUp = 0, - -- StackTopShiftUp = 0, - -- StretchStackBottomShiftDown = 0, - -- StretchStackGapAboveMin = 0, - -- StretchStackGapBelowMin = 0, - -- StretchStackTopShiftUp = 0, - StackBottomDisplayStyleShiftDown = less, - StackBottomShiftDown = less, - StackDisplayStyleGapMin = less, - StackGapMin = less, - StackTopDisplayStyleShiftUp = less, - StackTopShiftUp = less, - StretchStackBottomShiftDown = less, - StretchStackGapAboveMin = less, - StretchStackGapBelowMin = less, - StretchStackTopShiftUp = less, - NoLimitSupFactor = 0, + -- StackBottomDisplayStyleShiftDown = less, + -- StackBottomShiftDown = less, + -- StackDisplayStyleGapMin = less, + -- StackGapMin = less, + -- StackTopDisplayStyleShiftUp = less, + -- StackTopShiftUp = less, + -- StretchStackBottomShiftDown = less, + -- StretchStackGapAboveMin = less, + -- StretchStackGapBelowMin = less, + -- StretchStackTopShiftUp = less, + NoLimitSupFactor = -200, NoLimitSubFactor = 1200, AccentBaseDepth = 300, + RadicalDegreeBottomRaisePercent = 70, + RadicalRuleThickness = 66, -- 59 in font + DelimiterPercent = 90, + DelimiterShortfall = 400, + DisplayOperatorMinHeight = 1800, -- 1250 in font }, tweaks = { aftercopying = { diff --git a/tex/context/fonts/mkiv/bonum-math.lfg b/tex/context/fonts/mkiv/bonum-math.lfg index f946e2a80..3b3f02343 100644 --- a/tex/context/fonts/mkiv/bonum-math.lfg +++ b/tex/context/fonts/mkiv/bonum-math.lfg @@ -25,9 +25,16 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 900, - AccentBaseDepth = 50, + NoLimitSupFactor = 0, + NoLimitSubFactor = 900, + AccentBaseDepth = 50, + RadicalDegreeBottomRaisePercent = 60, + RadicalRuleThickness = 66, -- 72 in font + DelimiterPercent = 90, + DelimiterShortfall = 400, + DisplayOperatorMinHeight = 1900, -- 1250 in font + -- AccentSuperscriptDrop = 100, + -- AccentSuperscriptPercent = 20, }, tweaks = { aftercopying = { @@ -37,136 +44,334 @@ return { }, { tweak = "dimensions", - list = { -- offset width italic - [0x00393] = { -0.05, 0.875, 0 }, -- \Gamma - [0x00394] = { -0.05, 0.875, 0 }, -- \Delta - [0x00398] = { -0.05, 0.9, 0 }, -- \Theta - [0x0039B] = { -0.075, 0.85, 0 }, -- \Lambda - [0x0039E] = { -0.075, 0.85, 0 }, -- \Xi - [0x003A0] = { -0.075, 0.85, 0 }, -- \Pi - [0x003A3] = { -0.075, 0.85, 0 }, -- \Sigma - [0x003A5] = { -0.075, 0.85, 0 }, -- \Upsilon - [0x003A6] = { -0.05, 0.9, 0 }, -- \Phi - [0x003A8] = { -0.05, 0.9, 0 }, -- \Psi - [0x003A9] = { -0.05, 0.9, 0 }, -- \Omega - [0x02202] = { -0.075, 0.825, 0 }, -- \partial - [0x1D436] = { -0.1, 1, 0 }, -- C - [0x1D43A] = { -0.1, 1, 0 }, -- G - [0x1D442] = { -0.1, 1, 0 }, -- O - [0x1D444] = { -0.05, 1.025, 0 }, -- Q - [0x1D445] = { -0.025, 1.05, 0 }, -- R - [0x1D446] = { -0.05, 1, 0 }, -- S - [0x1D447] = { -0.05, 1.05, 0.7 }, -- T - [0x1D448] = { -0.125, 1, 0.3 }, -- U - [0x1D449] = { -0.125, 1, 0.3 }, -- V - [0x1D44A] = { -0.075, 1, 0.3 }, -- W - [0x1D44B] = { 0.05, 1.1, 0.35 }, -- X - [0x1D44C] = { -0.075, 1.1, 0.35 }, -- Y - [0x1D44E] = { -0.05, 1.1, 0, 0.8 }, -- a - [0x1D44F] = { -0.05, 1.1, 0 }, -- b - [0x1D450] = { -0.05, 1.1, 0, 0.9 }, -- c - [0x1D451] = { -0.05, 1.1, 0, 0.75 }, -- d - [0x1D452] = { -0.05, 1.1, 0, 0.9 }, -- e - [0x1D453] = { 0.45, 1.85, 0.45 }, -- f - [0x1D454] = { 0.05, 1.1, 0, 0.9 }, -- g - [0x0210E] = { -0.1, 1.05, 0, 1.15 }, -- h - [0x1D456] = { -0.2, 1.1, 0 }, -- i - [0x1D457] = { 0.6, 1.7, 0.45 }, -- j - [0x1D458] = { -0.05, 1.1, 0, 1.15 }, -- k - [0x1D459] = { -0.15, 1.1, 0, 0.8 }, -- l - [0x1D45A] = { -0.05, 1, 0 }, -- m - [0x1D45B] = { -0.1, 1, 0, 0.9 }, -- n - [0x1D45C] = { -0.05, 1.1, 0, 0.9 }, -- o - [0x1D45D] = { 0, 1.05, 0 }, -- p - [0x1D45E] = { -0.05, 1.05, 0, 0.9 }, -- q - [0x1D45F] = { -0.1, 1.15, 0, 0.9 }, -- r - [0x1D460] = { -0.05, 1.05, 0 }, -- s - [0x1D461] = { -0.15, 1.1, 0, 0.9 }, -- t - [0x1D462] = { -0.1, 1.05, 0, 0.85 }, -- u - [0x1D463] = { -0.1, 1.05, 0, 0.85 }, -- v - [0x1D464] = { -0.05, 1.05, 0, 0.95 }, -- w - [0x1D465] = { 0, 1.175, 0, 0.9 }, -- x - [0x1D466] = { -0.05, 1.05, 0 }, -- y - [0x1D467] = { -0.05, 1.1, 0, 0.9 }, -- z - [0x1D6FC] = { -0.075, 0.825, 0 }, -- \alpha - [0x1D6FD] = { 0, 0.85, 0, 1.1 }, -- \beta - [0x1D6FE] = { -0.075, 0.825, 0.05, 1.05 }, -- \gamma - [0x1D6FF] = { -0.1, 0.8, 0 }, -- \delta - [0x1D716] = { -0.1, 0.8, 0 }, -- \epsilon - [0x1D700] = { -0.1, 0.8, 0 }, -- \varepsilon - [0x1D701] = { -0.1, 0.8, 0 }, -- \zeta - [0x1D702] = { -0.1, 0.8, 0, 1.05 }, -- \eta - [0x1D703] = { -0.1, 0.8, 0 }, -- \theta - [0x1D717] = { -0.075, 0.85, 0, 1.03 }, -- \vartheta - [0x1D704] = { -0.1, 0.8, 0, 1.05 }, -- \iota - [0x1D705] = { -0.075, 0.825, 0 }, -- \kappa - [0x1D706] = { -0.075, 0.825, 0, 1.05 }, -- \lambda - [0x1D707] = { -0.075, 0.825, 0, 1.03 }, -- \mu - [0x1D708] = { -0.075, 0.825, 0, 1.03 }, -- \nu - [0x1D709] = { -0.075, 0.825, 0 }, -- \xi - [0x1D70A] = { -0.075, 0.825, 0, 1.03 }, -- \omicron - [0x1D70B] = { -0.075, 0.825, 0 }, -- \pi - [0x1D71B] = { -0.07, 0.85, 0 }, -- \varpi - [0x1D70C] = { -0.075, 0.85, 0 }, -- \rho - [0x1D71A] = { -0.075, 0.85, 0 }, -- \varrho - [0x1D70D] = { -0.075, 0.85, 0, 1.02 }, -- \varsigma - [0x1D70E] = { -0.075, 0.85, 0 }, -- \sigma - [0x1D70F] = { -0.08, 0.825, 0, 1.05 }, -- \tau - [0x1D710] = { -0.08, 0.825, 0, 1.03 }, -- \upsilon - [0x1D719] = { -0.075, 0.85, 0 }, -- \phi - [0x1D711] = { -0.075, 0.85, 0, 1.02 }, -- \varphi - [0x1D712] = { -0.075, 0.85, 0 }, -- \chi - [0x1D713] = { -0.075, 0.85, 0 }, -- \psi - [0x1D714] = { -0.05, 0.875, 0 }, -- \omega - -- [0x1D718] = { -0.075, 0.825, 0, 1.03 }, -- \varkappa - [0x1D719] = { -0.075, 0.85, 0 }, -- \phi - [0x1D41B] = { 0, 1, 0, 1.5 }, -- bold lowercase upright b - [0x1D41D] = { 0, 1, 0, 0.6 }, -- bold lowercase upright d - [0x1D41F] = { 0, 1.25, 0, 0.8 }, -- bold lowercase upright f - [0x1D420] = { 0, 1, 0, 0.6 }, -- bold lowercase upright g - [0x1D421] = { 0, 1, 0, 1.5 }, -- bold lowercase upright h - [0x1D424] = { 0, 1, 0, 1.5 }, -- bold lowercase upright k - [0x1D425] = { 0, 1, 0, 0.75 }, -- bold lowercase upright l - [0x1D42A] = { 0, 1, 0, 0.9 }, -- bold lowercase upright q - [0x1D42B] = { 0, 1, 0, 0.9 }, -- bold lowercase upright r - [0x1D42C] = { 0, 1, 0, 0.9 }, -- bold lowercase upright s - [0x1D482] = { 0, 1, 0, 0.9 }, -- bold lowercase italic a - [0x1D483] = { 0, 1, 0, 1.1 }, -- bold lowercase italic b - [0x1D484] = { 0, 1, 0, 0.95 }, -- bold lowercase italic c - [0x1D485] = { 0, 1, 0, 0.75 }, -- bold lowercase italic d - [0x1D486] = { 0, 1, 0, 0.95 }, -- bold lowercase italic e - -- [0x1D487] = { 0, 1, 0, 0.95 }, -- bold lowercase italic f - [0x1D488] = { 0, 1, 0, 0.9 }, -- bold lowercase italic g - [0x1D489] = { 0, 1, 0, 1.2 }, -- bold lowercase italic h - -- [0x1D48A] = { 0, 1, 0, 0.6 }, -- bold lowercase italic i - -- [0x1D48B] = { 0, 1, 0, 0.8 }, -- bold lowercase italic j - [0x1D48C] = { 0, 1, 0, 1.2 }, -- bold lowercase italic k - [0x1D48D] = { 0, 1, 0, 0.9 }, -- bold lowercase italic l - [0x1D492] = { 0, 1, 0, 0.85 }, -- bold lowercase italic q - [0x1D493] = { 0, 1, 0, 0.9 }, -- bold lowercase italic r - [0x1D497] = { 0, 1, 0, 0.9 }, -- bold lowercase italic v - [0x1D499] = { 0, 1, 0, 0.9 }, -- bold lowercase italic x - [0x1D49A] = { 0, 1, 0, 0.95 }, -- bold lowercase italic y - [0x1D49B] = { 0, 1, 0, 1.1 }, -- bold lowercase italic z - [0x1D743] = { 0, 1, 0, 1.7 }, -- bold lowercase italic greek xi + list = { + [0x00393] = { xoffset = -0.05, width = 0.875, italic = 0 }, -- \Gamma + [0x00394] = { xoffset = -0.05, width = 0.875, italic = 0 }, -- \Delta + [0x00398] = { xoffset = -0.05, width = 0.9, italic = 0 }, -- \Theta + [0x0039B] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \Lambda + [0x0039E] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \Xi + [0x003A0] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \Pi + [0x003A3] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \Sigma + [0x003A5] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \Upsilon + [0x003A6] = { xoffset = -0.05, width = 0.9, italic = 0 }, -- \Phi + [0x003A8] = { xoffset = -0.05, width = 0.9, italic = 0 }, -- \Psi + [0x003A9] = { xoffset = -0.05, width = 0.9, italic = 0 }, -- \Omega + [0x02202] = { xoffset = -0.075, width = 0.825, italic = 0 }, -- \partial + [0x1D43A] = { xoffset = -0.1, width = 1, italic = 0 }, -- G + [0x1D442] = { xoffset = -0.1, width = 1, italic = 0 }, -- O + [0x1D444] = { xoffset = -0.05, width = 1.025, italic = 0 }, -- Q + [0x1D44E] = { xoffset = -0.05, width = 1.1, italic = 0, anchor = 0.8 }, -- a + [0x1D44F] = { xoffset = -0.05, width = 1.1, italic = 0 }, -- b + [0x1D450] = { xoffset = -0.05, width = 1.1, italic = 0, anchor = 0.9 }, -- c + [0x1D451] = { xoffset = -0.05, width = 1.1, italic = 0, anchor = 0.75 }, -- d + [0x1D452] = { xoffset = -0.05, width = 1.1, italic = 0, anchor = 0.9 }, -- e + [0x1D453] = { xoffset = 0.45, width = 1.9, italic = 0.45 }, -- f + [0x1D454] = { xoffset = 0.05, width = 1.1, italic = 0, anchor = 0.9 }, -- g + [0x0210E] = { xoffset = -0.1, width = 1.05, italic = 0, anchor = 1.15 }, -- h + [0x1D456] = { xoffset = -0.2, width = 1.1, italic = 0 }, -- i + [0x1D457] = { xoffset = 0.6, width = 1.7, italic = 0.45 }, -- j + [0x1D458] = { xoffset = -0.05, width = 1.1, italic = 0, anchor = 1.15 }, -- k + [0x1D459] = { xoffset = -0.15, width = 1.1, italic = 0, anchor = 0.8 }, -- l + [0x1D45A] = { xoffset = -0.05, width = 1, italic = 0 }, -- m + [0x1D45B] = { xoffset = -0.1, width = 1, italic = 0, anchor = 0.9 }, -- n + [0x1D45C] = { xoffset = -0.05, width = 1.1, italic = 0, anchor = 0.9 }, -- o + [0x1D45D] = { xoffset = 0, width = 1.05, italic = 0 }, -- p + [0x1D45E] = { xoffset = -0.05, width = 1.05, italic = 0, anchor = 0.9 }, -- q + [0x1D45F] = { xoffset = -0.1, width = 1.15, italic = 0, anchor = 0.9 }, -- r + [0x1D460] = { xoffset = -0.05, width = 1.05, italic = 0 }, -- s + [0x1D461] = { xoffset = -0.15, width = 1.2, italic = 0, anchor = 0.9 }, -- t + [0x1D462] = { xoffset = -0.1, width = 1.05, italic = 0, anchor = 0.85 }, -- u + [0x1D463] = { xoffset = -0.1, width = 1.05, italic = 0, anchor = 0.85 }, -- v + [0x1D464] = { xoffset = -0.05, width = 1.05, italic = 0, anchor = 0.95 }, -- w + [0x1D465] = { xoffset = 0, width = 1.175, italic = 0, anchor = 0.9 }, -- x + [0x1D466] = { xoffset = -0.05, width = 1.05, italic = 0 }, -- y + [0x1D467] = { xoffset = -0.05, width = 1.1, italic = 0, anchor = 0.9 }, -- z + [0x1D6FC] = { xoffset = -0.075, width = 0.825, italic = 0 }, -- \alpha + [0x1D6FD] = { xoffset = 0, width = 0.9, italic = 0, anchor = 1.05 }, -- \beta + [0x1D6FE] = { xoffset = -0.075, width = 0.85, italic = 0.05, anchor = 1.05 }, -- \gamma + [0x1D6FF] = { xoffset = -0.1, width = 0.85, italic = 0 }, -- \delta + [0x1D716] = { xoffset = -0.1, width = 0.85, italic = 0 }, -- \epsilon + [0x1D700] = { xoffset = -0.1, width = 0.85, italic = 0 }, -- \varepsilon + [0x1D701] = { xoffset = -0.1, width = 0.85, italic = 0 }, -- \zeta + [0x1D702] = { xoffset = -0.1, width = 0.85, italic = 0, anchor = 1.05 }, -- \eta + [0x1D703] = { xoffset = -0.1, width = 0.85, italic = 0 }, -- \theta + [0x1D717] = { xoffset = -0.075, width = 0.85, italic = 0, anchor = 1.03 }, -- \vartheta + [0x1D704] = { xoffset = -0.1, width = 0.9, italic = 0, anchor = 1.05 }, -- \iota + [0x1D705] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \kappa + [0x1D706] = { xoffset = -0.075, width = 0.85, italic = 0, anchor = 1.05 }, -- \lambda + [0x1D707] = { xoffset = -0.075, width = 0.85, italic = 0, anchor = 1.03 }, -- \mu + [0x1D708] = { xoffset = -0.075, width = 0.85, italic = 0, anchor = 1.03 }, -- \nu + [0x1D709] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \xi + [0x1D70A] = { xoffset = -0.075, width = 0.85, italic = 0, anchor = 1.03 }, -- \omicron + [0x1D70B] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \pi + [0x1D71B] = { xoffset = -0.07, width = 0.85, italic = 0 }, -- \varpi + [0x1D70C] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \rho + [0x1D71A] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \varrho + [0x1D70D] = { xoffset = -0.075, width = 0.85, italic = 0, anchor = 1.02 }, -- \varsigma + [0x1D70E] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \sigma + [0x1D70F] = { xoffset = -0.08, width = 0.85, italic = 0, anchor = 1.05 }, -- \tau + [0x1D710] = { xoffset = -0.08, width = 0.85, italic = 0, anchor = 1.03 }, -- \upsilon + [0x1D719] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \phi + [0x1D711] = { xoffset = -0.075, width = 0.85, italic = 0, anchor = 1.02 }, -- \varphi + [0x1D712] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \chi + [0x1D713] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \psi + [0x1D714] = { xoffset = -0.05, width = 0.875, italic = 0 }, -- \omega + -- [0x1D718] = { xoffset = -0.075, width = 0.85, italic = 0, anchor = 1.03 }, -- \varkappa + [0x1D719] = { xoffset = -0.075, width = 0.85, italic = 0 }, -- \phi + [0x1D41B] = { xoffset = 0, width = 1, italic = 0, anchor = 1.5 }, -- bold lowercase upright b + [0x1D41D] = { xoffset = 0, width = 1, italic = 0, anchor = 0.6 }, -- bold lowercase upright d + [0x1D41F] = { xoffset = 0, width = 1.25, italic = 0, anchor = 0.8 }, -- bold lowercase upright f + [0x1D420] = { xoffset = 0, width = 1, italic = 0, anchor = 0.6 }, -- bold lowercase upright g + [0x1D421] = { xoffset = 0, width = 1, italic = 0, anchor = 1.5 }, -- bold lowercase upright h + [0x1D424] = { xoffset = 0, width = 1, italic = 0, anchor = 1.5 }, -- bold lowercase upright k + [0x1D425] = { xoffset = 0, width = 1, italic = 0, anchor = 0.75 }, -- bold lowercase upright l + [0x1D42A] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- bold lowercase upright q + [0x1D42B] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- bold lowercase upright r + [0x1D42C] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- bold lowercase upright s + -- [0x1D482] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- bold lowercase italic a + -- [0x1D483] = { xoffset = 0, width = 1, italic = 0, anchor = 1.1 }, -- bold lowercase italic b + -- [0x1D484] = { xoffset = 0, width = 1, italic = 0, anchor = 0.95 }, -- bold lowercase italic c + -- [0x1D485] = { xoffset = 0, width = 1, italic = 0, anchor = 0.75 }, -- bold lowercase italic d + -- [0x1D486] = { xoffset = 0, width = 1, italic = 0, anchor = 0.95 }, -- bold lowercase italic e + -- [0x1D487] = { xoffset = 0, width = 1, italic = 0, anchor = 0.95 }, -- bold lowercase italic f + -- [0x1D488] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- bold lowercase italic g + -- [0x1D489] = { xoffset = 0, width = 1, italic = 0, anchor = 1.2 }, -- bold lowercase italic h + -- [0x1D48A] = { xoffset = 0, width = 1, italic = 0, anchor = 0.6 }, -- bold lowercase italic i + -- [0x1D48B] = { xoffset = 0, width = 1, italic = 0, anchor = 0.8 }, -- bold lowercase italic j + -- [0x1D48C] = { xoffset = 0, width = 1, italic = 0, anchor = 1.2 }, -- bold lowercase italic k + -- [0x1D48D] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- bold lowercase italic l + -- [0x1D492] = { xoffset = 0, width = 1, italic = 0, anchor = 0.85 }, -- bold lowercase italic q + -- [0x1D493] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- bold lowercase italic r + -- [0x1D497] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- bold lowercase italic v + -- [0x1D499] = { xoffset = 0, width = 1.1, italic = 0, anchor = 0.9 }, -- bold lowercase italic x + -- [0x1D49A] = { xoffset = 0, width = 1, italic = 0, anchor = 0.95 }, -- bold lowercase italic y + -- [0x1D49B] = { xoffset = 0, width = 1, italic = 0, anchor = 1.1 }, -- bold lowercase italic z + [0x1D743] = { xoffset = 0, width = 1, italic = 0, anchor = 1.7 }, -- bold lowercase italic greek xi + [0x1D435] = { anchor = 1.05 }, -- italic B + [0x1D436] = { xoffset = -0.1, anchor = 0.7 }, -- italic C + [0x1D437] = { anchor = 1.25 }, -- italic D + [0x1D43A] = { anchor = 0.8 }, -- italic G + [0x1D442] = { anchor = 0.85 }, -- italic O + [0x1D443] = { anchor = 1.1 }, -- italic P + [0x1D444] = { anchor = 0.85 }, -- italic Q + [0x1D445] = { xoffset = -0.025, width = 1.05, anchor = 1.05 }, -- italic R + [0x1D446] = { xoffset = -0.05, anchor = 0.85 }, -- italic S + [0x1D447] = { xoffset = -0.05, width = 1.05, italic = 0.7, anchor = 0.9, }, -- italic T + [0x1D448] = { xoffset = -0.125, italic = 0.3, anchor = 0.9, }, -- italic U + [0x1D449] = { xoffset = -0.125, italic = 0.3, anchor = 0.9, }, -- italic V + [0x1D44A] = { xoffset = -0.075, italic = 0.3, anchor = 0.9, }, -- italic W + [0x1D44C] = { xoffset = -0.075, width = 1.1, italic = 0.35, anchor = 0.9, }, -- italic Y + + ["lowercasefraktur"] = { + width = 1.25, + extend = 1.25, + height = 1.15, + depth = 1.15, + squeeze = 1.15, + }, + + ["lowercasescript"] = { + width = 1.2, + extend = 1.2, + height = 1.2, + depth = 1.2, + squeeze = 1.2, + }, }, }, { tweak = "kerns", list = { [0x2F] = { - topleft = -0.15, - -- bottomleft = 0, - -- topright = 0, - bottomright = -0.15, - }, + topleft = -0.2, + bottomright = -0.2, + }, + -- [0x28] = { -- left parenthesis. No! + -- topleft = -0.1, + -- bottomleft = -0.1, + -- }, + -- [0x29] = { -- right parenthesis. No! + -- topright = -0.1, + -- bottomright = -0.1, + -- all = true, + -- }, + }, + }, + { + -- For upright alphabets, we unset the anchor. + -- This means that accents are placed + -- centered over the character. + -- Should be on top + tweak = "wipeanchors", + 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", + "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", -- some remain + }, + }, + { + -- This one fakes margins to get larger/smaller accents + -- with for example \widetilde. + tweak = "margins", + list = { + [0x1D7DC] = { left = -.1, right = -.1 }, -- doublestruck 4 + + [0x1D712] = { left = -.1, right = -.1 }, -- italic chi + [0x1D713] = { left = -.1, right = -.1 }, -- italic psi + [0x1D714] = { left = -.1, right = -.1 }, -- italic omega + + [0x003B1] = { left = -.1, right = -.1 }, -- upfight alpha + [0x003B3] = { left = -.1, right = -.1 }, -- upfight gamma + [0x003BA] = { left = -.1, right = -.1 }, -- upfight kappa + [0x003BC] = { left = -.1, right = -.1 }, -- upfight mu + [0x003C0] = { left = -.1, right = -.1 }, -- upfight pi + [0x003C3] = { left = -.1, right = -.1 }, -- upfight sigma + [0x003C5] = { left = -.1, right = -.1 }, -- upfight upsilon + [0x003C6] = { left = -.1, right = -.1 }, -- upfight phi + [0x003C8] = { left = -.1, right = -.1 }, -- upfight psi + [0x003C9] = { left = -.1, right = -.1 }, -- upfight omega + + -- Greek lowercase sans (bold, italic) can be improved + + [0x1D451] = { left = -.1, right = -.1 }, -- italic d + [0x1D453] = { left = -.1, right = -.1 }, -- italic f + + [0x00394] = { left = .1, right = .1 }, -- upfight Delta + [0x003A3] = { left = .1, right = .1 }, -- upfight Sigma + + -- [0x0004A] = { left = .1, right = .1 }, -- J + [0x00046] = { left = .1, right = .1 }, -- F + [0x0004C] = { left = .1, right = .1 }, -- L + [0x00050] = { left = .1, right = .1 }, -- P + [0x00053] = { left = .1, right = .1 }, -- S + [0x00054] = { left = .1, right = .1 }, -- T + [0x0005A] = { left = .1, right = .1 }, -- Z + + [0x1D43D] = { left = -.1, right = -.1 }, -- italic J + -- [0x1D448] = { left = -.05, right = -.05 }, -- italic U + -- [0x1D449] = { left = -.05, right = -.05 }, -- italic V + [0x1D44B] = { left = -.05, right = -.05 }, -- italic X + + -- [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 }, }, { tweak = "fixprimes", -- scale = 0.8, -- smaller = true, - factor = 1.1, + factor = 1,--1.1 }, { tweak = "addscripts", @@ -193,6 +398,9 @@ return { -- experimental fixes for mkiv: -- dimensions = dimensions, - kerns = kerns, + kerns = kerns, }, } + +-- \alpha is looking like an italic a. The one from Dejavu could perhaps be an alternative? +-- No hvariants in 772 diff --git a/tex/context/fonts/mkiv/cambria-math.lfg b/tex/context/fonts/mkiv/cambria-math.lfg index a97a3f709..7a28eb2b6 100644 --- a/tex/context/fonts/mkiv/cambria-math.lfg +++ b/tex/context/fonts/mkiv/cambria-math.lfg @@ -1,11 +1,3 @@ --- This patch code is moved from font-pat.lua to this goodies --- files as it does not belong in the core code. - --- This is a fix to the font itself i.e. the cached instance will --- be patched. When the goodie file is loaded the patch will be --- added to the patch list. No goodies setting is needed with --- the filename. - local dimensions, kerns, kernpairs if CONTEXTLMTXMODE == 0 then kernpairs = { -- \setupmathematics[kernpairs=yes] @@ -56,41 +48,50 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 1000, - DisplayOperatorMinHeight = 2800, - AccentBaseDepth = 300, + NoLimitSupFactor = 0, + NoLimitSubFactor = 1000, + AccentBaseDepth = 300, + RadicalDegreeBottomRaisePercent = 65, + RadicalKernAfterDegree = -900, + RadicalRuleThickness = 128, -- 133 in font + DelimiterPercent = 90, + DelimiterShortfall = 400, + DisplayOperatorMinHeight = 2800, -- 2500 in font }, tweaks = { aftercopying = { { tweak = "dimensions", list = { - -- [0x00060] = { yoffset = -0.1 }, -- grave - -- [0x000B4] = { yoffset = -0.1 }, -- acute - -- [0x002C6] = { yoffset = -0.1 }, -- hat - -- [0x002DC] = { yoffset = -0.1 }, -- tilde - -- [0x000AF] = { yoffset = -0.1 }, -- bar + + -- [0x00060] = { yoffset = -0.1 }, -- grave + -- [0x000B4] = { yoffset = -0.1 }, -- acute + -- [0x002C6] = { yoffset = -0.1 }, -- hat + -- [0x002DC] = { yoffset = -0.1 }, -- tilde + -- [0x000AF] = { yoffset = -0.1 }, -- bar -- [0x002D8] = { yoffset = -0.15 }, -- breve -- [0x002D9] = { yoffset = -0.15 }, -- dot - -- [0x000A8] = { yoffset = -0.1 }, -- ddot + -- [0x000A8] = { yoffset = -0.1 }, -- ddot [0x020DB] = { yoffset = -0.05 }, -- dddot - -- [0x002C7] = { yoffset = -0.1 }, -- check + -- [0x002C7] = { yoffset = -0.1 }, -- check [0x020D7] = { yoffset = -0.05 }, -- vec - -- [0x00300] = { yoffset = -0.12 , all=true }, -- widegrave - -- [0x00301] = { yoffset = -0.12 , all=true }, -- wideacute - -- [0x00302] = { yoffset = -0.12 , all=true }, -- widehat - -- [0x00303] = { yoffset = -0.12 , all=true }, -- widetilde - -- [0x00304] = { yoffset = -0.12 , all=true }, -- widebar - -- [0x00306] = { yoffset = -0.12 , all=true }, -- widebreve - [0x00307] = { yoffset = -0.025 , all=true }, -- widedot - [0x00308] = { yoffset = -0.025 , all=true }, -- wideddot - -- [0x020DB] = { yoffset = -0.1 , all=true }, -- widedddot - -- [0x0030A] = { yoffset = -0.12 , all=true }, -- widering - -- [0x0030C] = { yoffset = -0.12 , all=true }, -- widecheck - [0x1D43D] = { 0.25, 1.15, 0.2 }, -- J - [0x1D487] = { anchor = 0.8 }, -- bold lower case italic f - -- [0x1D487] = { 0, 1, 0, 1.3}, -- bold lower case italic f + + -- [0x00300] = { yoffset = -0.12, all=true }, -- widegrave + -- [0x00301] = { yoffset = -0.12, all=true }, -- wideacute + -- [0x00302] = { yoffset = -0.12, all=true }, -- widehat + -- [0x00303] = { yoffset = -0.12, all=true }, -- widetilde + -- [0x00304] = { yoffset = -0.12, all=true }, -- widebar + -- [0x00306] = { yoffset = -0.12, all=true }, -- widebreve + [0x00307] = { yoffset = -0.025, all=true }, -- widedot + [0x00308] = { yoffset = -0.025, all=true }, -- wideddot + -- [0x020DB] = { yoffset = -0.1, all=true }, -- widedddot + -- [0x0030A] = { yoffset = -0.12, all=true }, -- widering + -- [0x0030C] = { yoffset = -0.12, all=true }, -- widecheck + + [0x1D43D] = { xoffset = 0.25, width = 1.15, italic = 0.2 }, -- J + [0x1D487] = { anchor = 0.8 }, -- bold lower case italic f + -- [0x1D487] = { xoffset = 0, width = 1, italic = 0, anchor = 1.3 }, -- bold lower case italic f + }, }, { @@ -100,14 +101,14 @@ return { topleft = -0.2, -- bottomleft = 0, -- topright = 0, - bottomright = -0.2, + bottomright = -0.2, }, }, }, { tweak = "fixprimes", scale = 0.9, - -- smaller = true, + -- smaller = true, factor = 0.9, }, { @@ -145,7 +146,7 @@ return { -- experimental fixes for mkiv: -- dimensions = dimensions, - kerns = kerns, - kernpairs = kernpairs, + kerns = kerns, + kernpairs = kernpairs, }, } diff --git a/tex/context/fonts/mkiv/concrete-math.lfg b/tex/context/fonts/mkiv/concrete-math.lfg index 59ea0f2ea..f7e5f3dda 100644 --- a/tex/context/fonts/mkiv/concrete-math.lfg +++ b/tex/context/fonts/mkiv/concrete-math.lfg @@ -8,8 +8,11 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 900, + NoLimitSupFactor = 0, + NoLimitSubFactor = 900, + DelimiterPercent = 90, + DelimiterShortfall = 400, + -- DisplayOperatorMinHeight = 1800, -- 1400 in font (one size) }, tweaks = { aftercopying = { @@ -24,7 +27,7 @@ return { topleft = -0.2, -- bottomleft = 0, -- topright = 0, - bottomright = -0.2, + bottomright = -0.2, }, }, }, diff --git a/tex/context/fonts/mkiv/dejavu-math.lfg b/tex/context/fonts/mkiv/dejavu-math.lfg index 01eaefd80..6f5dfc7b3 100644 --- a/tex/context/fonts/mkiv/dejavu-math.lfg +++ b/tex/context/fonts/mkiv/dejavu-math.lfg @@ -18,10 +18,15 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 900, - FractionRuleThickness = 60, - AccentBaseDepth = 30, + NoLimitSupFactor = 0, + NoLimitSubFactor = 900, + FractionRuleThickness = 60, + AccentBaseDepth = 30, + RadicalDegreeBottomRaisePercent = 62, + RadicalRuleThickness = 46, -- 52 in font + DelimiterPercent = 90, + DelimiterShortfall = 400, + DisplayOperatorMinHeight = 1800, -- 1333 in font }, tweaks = { aftercopying = { @@ -32,9 +37,9 @@ return { { tweak = "dimensions", list = { - -- [0x1D449] = { 0, .8, .2 }, - -- [0x1D44A] = { 0, .8, .2 }, - ["0x1D449:0x1D44A"] = { 0, .8, .2 }, + -- [0x1D449] = { xoffset = 0, width = .8, italic = .2 }, + -- [0x1D44A] = { xoffset = 0, width = .8, italic = .2 }, + ["0x1D449:0x1D44A"] = { xoffset = 0, width = .8, italic = .2 }, } }, { diff --git a/tex/context/fonts/mkiv/erewhon-math.lfg b/tex/context/fonts/mkiv/erewhon-math.lfg index 0924f7f13..ff0b8dac4 100644 --- a/tex/context/fonts/mkiv/erewhon-math.lfg +++ b/tex/context/fonts/mkiv/erewhon-math.lfg @@ -1,4 +1,4 @@ --- this file might go away and is for experiments only +-- This file might go away and is for experiments only. return { name = "erewhon-math", @@ -8,10 +8,16 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 900, - AccentBaseHeight = 0, - AccentBaseDepth = 60, + NoLimitSupFactor = 0, + NoLimitSubFactor = 900, + AccentBaseHeight = 0, + AccentBaseDepth = 60, + RadicalDegreeBottomRaisePercent = 55, + RadicalKernAfterDegree = -600, + RadicalRuleThickness = 45, -- 55 in font + DelimiterPercent = 90, + DelimiterShortfall = 400, + -- DisplayOperatorMinHeight = 1800, -- 1300 in font (one size) }, tweaks = { aftercopying = { @@ -44,7 +50,7 @@ return { tweak = "addrules", }, }, - }, + }, bigslots = { 1, 2, 3, 4 }, diff --git a/tex/context/fonts/mkiv/euler-math.lfg b/tex/context/fonts/mkiv/euler-math.lfg index cb3ec36a0..9e5efa680 100644 --- a/tex/context/fonts/mkiv/euler-math.lfg +++ b/tex/context/fonts/mkiv/euler-math.lfg @@ -7,6 +7,10 @@ return { author = "Hans Hagen", copyright = "ConTeXt development team", mathematics = { + parameters = { + DelimiterPercent = 901, + DelimiterShortfall = 500, + }, tweaks = { aftercopying = { { diff --git a/tex/context/fonts/mkiv/garamond-math.lfg b/tex/context/fonts/mkiv/garamond-math.lfg index e6778d4b7..d385b6c7a 100644 --- a/tex/context/fonts/mkiv/garamond-math.lfg +++ b/tex/context/fonts/mkiv/garamond-math.lfg @@ -10,12 +10,15 @@ return { NoLimitSubFactor = 1200, FractionRuleThickness = 60, OverbarRuleThickness = 60, - -- RadicalRuleThickness = 60, UnderbarRuleThickness = 60, -- AccentBaseHeight = 0, AccentBaseDepth = 75, -- AccentTopShiftUp = -75, -- FlattenedAccentTopShiftUp = -100, + -- RadicalRuleThickness = 50, -- 50 in font + DelimiterPercent = 90, + DelimiterShortfall = 400, + -- DisplayOperatorMinHeight = 1800, -- 1300 in font (only one) }, tweaks = { aftercopying = { @@ -27,70 +30,73 @@ return { tweak = "dimensions", list = { -- offset width italic - -- [0x00060] = { yoffset = -0.1 }, -- grave - -- [0x000B4] = { yoffset = -0.1 }, -- acute - [0x002C6] = { yoffset = -0.1 }, -- hat - [0x002DC] = { yoffset = -0.1 }, -- tilde - -- [0x000AF] = { yoffset = -0.1 }, -- bar - [0x002D8] = { yoffset = -0.15 }, -- breve - [0x002D9] = { yoffset = -0.15 }, -- dot - -- [0x000A8] = { yoffset = -0.1 }, -- ddot + -- [0x00060] = { yoffset = -0.1 }, -- grave + -- [0x000B4] = { yoffset = -0.1 }, -- acute + [0x002C6] = { yoffset = -0.1 }, -- hat + [0x002DC] = { yoffset = -0.1 }, -- tilde + -- [0x000AF] = { yoffset = -0.1 }, -- bar + [0x002D8] = { yoffset = -0.15 }, -- breve + [0x002D9] = { yoffset = -0.15 }, -- dot + -- [0x000A8] = { yoffset = -0.1 }, -- ddot [0x020DB] = { yoffset = -0.115 }, -- dddot - [0x002C7] = { yoffset = -0.1 }, -- check - [0x020D7] = { yoffset = -0.1 }, -- vec - [0x00300] = { yoffset = -0.12 , all=true }, -- widegrave - [0x00301] = { yoffset = -0.12 , all=true }, -- wideacute - [0x00302] = { yoffset = -0.12 , all=true }, -- widehat - [0x00303] = { yoffset = -0.12 , all=true }, -- widetilde - [0x00304] = { yoffset = -0.12 , all=true }, -- widebar - [0x00306] = { yoffset = -0.12 , all=true }, -- widebreve - [0x00307] = { yoffset = -0.12 , all=true }, -- widedot - [0x00308] = { yoffset = -0.12 , all=true }, -- wideddot - -- [0x020DB] = { yoffset = -0.1 , all=true }, -- widedddot - [0x0030A] = { yoffset = -0.12 , all=true }, -- widering - [0x0030C] = { yoffset = -0.12 , all=true }, -- widecheck - -- [0x002C6] = { scale=.85, yoffset = .1, width = .85, height = .935 }, -- hat - [0x00393] = { 0.05, 1.05, 0.075 }, -- \Gamma - -- [0x003A6] = { 0.05, 1.05, 0 }, -- \Phi difficult! - [0x003A8] = { 0.05, 1.05, 0.075 }, -- \Psi - [0x02113] = { 0, 1, 0.075 }, -- \ell - [0x1D436] = { 0, 1, 0.05 }, -- C - [0x1D43D] = { 0.3, 1.4, 0.1 }, -- J - [0x1D44B] = { 0, 1, 0.05 }, -- X - [0x1D44F] = { 0, 1, 0, 1.25 }, -- b - [0x1D450] = { 0, 1.1, 0 }, -- c - [0x1D451] = { 0, 1, 0.05, 0.8 }, -- d - [0x1D452] = { 0, 1.1, 0.05 }, -- e - [0x1D453] = { 0.15, 1.15, 0.1, 1.2 }, -- f - [0x1D454] = { 0.1, 1.2, 0.1 }, -- g - [0x0210E] = { 0, 1.1, 0, 1.4 }, -- h - [0x1D457] = { 0.2, 1.25, 0.05 }, -- j - [0x1D458] = { 0, 1, 0, 1.25 }, -- k - [0x1D459] = { 0, 1, 0.05 }, -- l - [0x1D45D] = { 0.15, 1.15, 0, 1.4 }, -- p - [0x1D45E] = { 0, 1.05, 0 }, -- q - [0x1D45F] = { 0, 1.05, 0 }, -- r - [0x1D461] = { 0, 1, 0.1 }, -- t - [0x1D465] = { 0.05, 1.1, 0.05 }, -- x - [0x1D466] = { 0.2, 1.2, 0, 1.35 }, -- y - [0x1D6FD] = { 0.05, 1.1, 0.05 }, -- \beta - [0x1D6FE] = { 0, 1.05, 0 }, -- \gamma - [0x1D6FF] = { 0, 1, 0.1 }, -- \delta - [0x1D716] = { 0, 1.1, 0 }, -- \epsilon - [0x1D700] = { 0, 1.1, 0 }, -- \varepsilon - [0x1D701] = { 0, 1, 0.15 }, -- \zeta - [0x1D703] = { 0, 1, 0.1 }, -- \theta - [0x1D705] = { 0, 1, 0.1 }, -- \kappa - [0x1D706] = { 0.05, 1.1, 0 }, -- \lambda - [0x1D707] = { 0.05, 1.05, 0 }, -- \mu - [0x1D708] = { 0, 1.1, 0 }, -- \nu - [0x1D709] = { 0, 1.1, 0 }, -- \xi - [0x1D70B] = { 0, 1.05, 0 }, -- \pi - [0x1D70C] = { 0.2, 1.2, 0 }, -- \rho - [0x1D70E] = { 0, 1, 0.1 }, -- \sigma - [0x1D70F] = { 0.05, 1.05, 0.1 }, -- \tau - [0x1D712] = { 0.15, 1.2, 0.05 }, -- \chi - [0x1D713] = { 0.05, 1.05, 0.05 }, -- \psi + [0x002C7] = { yoffset = -0.1 }, -- check + [0x020D7] = { yoffset = -0.1 }, -- vec + + [0x00300] = { yoffset = -0.12 , all = true }, -- widegrave + [0x00301] = { yoffset = -0.12 , all = true }, -- wideacute + [0x00302] = { yoffset = -0.12 , all = true }, -- widehat + [0x00303] = { yoffset = -0.12 , all = true }, -- widetilde + [0x00304] = { yoffset = -0.12 , all = true }, -- widebar + [0x00306] = { yoffset = -0.12 , all = true }, -- widebreve + [0x00307] = { yoffset = -0.12 , all = true }, -- widedot + [0x00308] = { yoffset = -0.12 , all = true }, -- wideddot + -- [0x020DB] = { yoffset = -0.1 , all = true }, -- widedddot + [0x0030A] = { yoffset = -0.12 , all = true }, -- widering + [0x0030C] = { yoffset = -0.12 , all = true }, -- widecheck + + -- [0x002C6] = { scale =.85, yoffset = .1, width = .85, height = .935 }, -- hat + + [0x00393] = { xoffset = 0.05, width = 1.05, italic = 0.075 }, -- \Gamma + -- [0x003A6] = { xoffset = 0.05, width = 1.05, italic = 0 }, -- \Phi difficult! + [0x003A8] = { xoffset = 0.05, width = 1.05, italic = 0.075 }, -- \Psi + [0x02113] = { xoffset = 0, width = 1, italic = 0.075 }, -- \ell + [0x1D436] = { xoffset = 0, width = 1, italic = 0.05 }, -- C + [0x1D43D] = { xoffset = 0.3, width = 1.4, italic = 0.1 }, -- J + [0x1D44B] = { xoffset = 0, width = 1, italic = 0.05 }, -- X + [0x1D44F] = { xoffset = 0, width = 1, italic = 0, 1.25 }, -- b + [0x1D450] = { xoffset = 0, width = 1.1, italic = 0 }, -- c + [0x1D451] = { xoffset = 0, width = 1, italic = 0.05, 0.8 }, -- d + [0x1D452] = { xoffset = 0, width = 1.1, italic = 0.05 }, -- e + [0x1D453] = { xoffset = 0.15, width = 1.15, italic = 0.1, 1.2 }, -- f + [0x1D454] = { xoffset = 0.1, width = 1.2, italic = 0.1 }, -- g + [0x0210E] = { xoffset = 0, width = 1.1, italic = 0, 1.4 }, -- h + [0x1D457] = { xoffset = 0.2, width = 1.25, italic = 0.05 }, -- j + [0x1D458] = { xoffset = 0, width = 1, italic = 0, 1.25 }, -- k + [0x1D459] = { xoffset = 0, width = 1, italic = 0.05 }, -- l + [0x1D45D] = { xoffset = 0.15, width = 1.15, italic = 0, 1.4 }, -- p + [0x1D45E] = { xoffset = 0, width = 1.05, italic = 0 }, -- q + [0x1D45F] = { xoffset = 0, width = 1.05, italic = 0 }, -- r + [0x1D461] = { xoffset = 0, width = 1, italic = 0.1 }, -- t + [0x1D465] = { xoffset = 0.05, width = 1.1, italic = 0.05 }, -- x + [0x1D466] = { xoffset = 0.2, width = 1.2, italic = 0, 1.35 }, -- y + [0x1D6FD] = { xoffset = 0.05, width = 1.1, italic = 0.05 }, -- \beta + [0x1D6FE] = { xoffset = 0, width = 1.05, italic = 0 }, -- \gamma + [0x1D6FF] = { xoffset = 0, width = 1, italic = 0.1 }, -- \delta + [0x1D716] = { xoffset = 0, width = 1.1, italic = 0 }, -- \epsilon + [0x1D700] = { xoffset = 0, width = 1.1, italic = 0 }, -- \varepsilon + [0x1D701] = { xoffset = 0, width = 1, italic = 0.15 }, -- \zeta + [0x1D703] = { xoffset = 0, width = 1, italic = 0.1 }, -- \theta + [0x1D705] = { xoffset = 0, width = 1, italic = 0.1 }, -- \kappa + [0x1D706] = { xoffset = 0.05, width = 1.1, italic = 0 }, -- \lambda + [0x1D707] = { xoffset = 0.05, width = 1.05, italic = 0 }, -- \mu + [0x1D708] = { xoffset = 0, width = 1.1, italic = 0 }, -- \nu + [0x1D709] = { xoffset = 0, width = 1.1, italic = 0 }, -- \xi + [0x1D70B] = { xoffset = 0, width = 1.05, italic = 0 }, -- \pi + [0x1D70C] = { xoffset = 0.2, width = 1.2, italic = 0 }, -- \rho + [0x1D70E] = { xoffset = 0, width = 1, italic = 0.1 }, -- \sigma + [0x1D70F] = { xoffset = 0.05, width = 1.05, italic = 0.1 }, -- \tau + [0x1D712] = { xoffset = 0.15, width = 1.2, italic = 0.05 }, -- \chi + [0x1D713] = { xoffset = 0.05, width = 1.05, italic = 0.05 }, -- \psi }, }, { diff --git a/tex/context/fonts/mkiv/generic-math.lfg b/tex/context/fonts/mkiv/generic-math.lfg index c14067cc5..d50d49af9 100644 --- a/tex/context/fonts/mkiv/generic-math.lfg +++ b/tex/context/fonts/mkiv/generic-math.lfg @@ -1,8 +1,10 @@ +-- We will add a few more examplex to this file. + return { name = "generic-math", version = "1.00", comment = "A starting point.", - author = "Hans Hagen", + author = "Hans Hagen & Mikael Sundqvist", copyright = "ConTeXt development team", mathematics = { parameters = { @@ -22,6 +24,9 @@ return { AccentBottomShiftDown = 0, AccentBaseDepth = 0, AccentFlattenedBaseDepth = 0, + DelimiterPercent = 90, + DelimiterShortfall = 400, + DisplayOperatorMinHeight = 1800, -- XXXX in font }, tweaks = { aftercopying = { diff --git a/tex/context/fonts/mkiv/kpfonts-math.lfg b/tex/context/fonts/mkiv/kpfonts-math.lfg index 490b7b297..ffec77b56 100644 --- a/tex/context/fonts/mkiv/kpfonts-math.lfg +++ b/tex/context/fonts/mkiv/kpfonts-math.lfg @@ -6,10 +6,15 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 900, - -- AccentBaseHeight = 0, - AccentBaseDepth = 30, + NoLimitSupFactor = 0, + NoLimitSubFactor = 900, + -- AccentBaseHeight = 0, + AccentBaseDepth = 30, + RadicalDegreeBottomRaisePercent = 70, + -- RadicalRuleThickness = 50, -- 50 in font + DelimiterPercent = 90, + DelimiterShortfall = 400, + -- DisplayOperatorMinHeight = 1800, -- 1500 in font (only one) }, tweaks = { aftercopying = { diff --git a/tex/context/fonts/mkiv/libertinus-math.lfg b/tex/context/fonts/mkiv/libertinus-math.lfg index 2d683cc3c..c5a4bcbcb 100644 --- a/tex/context/fonts/mkiv/libertinus-math.lfg +++ b/tex/context/fonts/mkiv/libertinus-math.lfg @@ -12,14 +12,20 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 1000, - FractionRuleThickness = 50, - OverbarRuleThickness = 50, - -- RadicalRuleThickness = 50, - UnderbarRuleThickness = 50, - -- AccentTopShiftUp = 0, - AccentBaseDepth = 10, + 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) }, tweaks = { aftercopying = { @@ -31,33 +37,35 @@ return { { 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] = { 0, 1, 0, 1.5 }, -- b (6.8) - -- [0x1D451] = { 0, 1, 0, 1.2 }, -- d (6.8) - -- [0x0210E] = { 0, 1, 0, 1.5 }, -- h (6.8) - -- [0x1D458] = { 0, 1, 0, 1.5 }, -- k (6.8) + [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) }, }, { diff --git a/tex/context/fonts/mkiv/lm.lfg b/tex/context/fonts/mkiv/lm.lfg index 5ea043b55..0c0b0a1dc 100644 --- a/tex/context/fonts/mkiv/lm.lfg +++ b/tex/context/fonts/mkiv/lm.lfg @@ -9,6 +9,11 @@ local dimensions, kerns if CONTEXTLMTXMODE == 0 then kerns = { [0x1D449] = kern_150, -- [0x1D44A] = kern_200, -- 𝑊 + + [0x1D4AB] = { + -- topleft = { { kern = -200 } }, + bottomright = { { kern = -200 } }, + }, } dimensions = { @@ -24,6 +29,7 @@ local dimensions, kerns if CONTEXTLMTXMODE == 0 then height = 960, depth = 40, }, + -- [0xFE932] = { xoffset = 50, width = 290 }, -- used prime -- [0x2032] = { xoffset = 50, width = 290 }, -- prime }, @@ -64,41 +70,367 @@ return { { 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.1 }, -- bar - [0x002D8] = { yoffset = -0.05 }, -- breve - [0x002D9] = { yoffset = -0.05 }, -- dot - [0x000A8] = { yoffset = -0.05 }, -- ddot - [0x020DB] = { yoffset = -0.15 }, -- dddot (seem to hit some max) - [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.1, all = true }, -- widehat - [0x00303] = { yoffset = -0.09, all = true }, -- widetilde - [0x00304] = { yoffset = -0.1, all = true }, -- widebar - [0x00306] = { yoffset = -0.07, all = true }, -- widebreve - [0x00307] = { yoffset = -0.05, all = true }, -- widedot - [0x00308] = { yoffset = -0.05, all = true }, -- wideddot - [0x020DB] = { yoffset = -0.075, all = true }, -- widedddot - [0x0030A] = { yoffset = -0.05, all = true }, -- widering - [0x0030C] = { yoffset = -0.075, all = true }, -- widecheck + -- [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, +-- -- line = 0.4, +-- mode = 1, +-- width = 1.25, +-- width = 0.95, +-- scale = 0.975, +-- }, }, }, { + -- 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, - }, + 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 + }, + }, + -- { + -- 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", @@ -122,17 +454,29 @@ return { { tweak = "addrules", }, + -- { + -- tweak = "wipevariants", + -- list = { + -- 0x7C, + -- }, + -- }, }, }, parameters = { FractionNumeratorDisplayStyleShiftUp = 600, -- used to be a function NoLimitSupFactor = 0, NoLimitSubFactor = 900, - -- AccentBaseHeight = 0, - AccentBaseDepth = 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) }, bigslots = { - 1, 3, 5, 7 + 1, 3, 5, 7 -- In fact, 6 is the last one. }, -- -- experimental fixes for mkiv: diff --git a/tex/context/fonts/mkiv/lucida-opentype-math.lfg b/tex/context/fonts/mkiv/lucida-opentype-math.lfg index 44d470650..20dc3aeb1 100644 --- a/tex/context/fonts/mkiv/lucida-opentype-math.lfg +++ b/tex/context/fonts/mkiv/lucida-opentype-math.lfg @@ -2,7 +2,6 @@ local dimensions, kerns if CONTEXTLMTXMODE == 0 then -- local kern_250 = { bottomright = { { kern = -250 } }, force = true } - -- kerns = { -- [0x1D449] = kern_250, -- -- [0x1D44A] = kern_250, -- 𝑊 @@ -10,7 +9,7 @@ local dimensions, kerns if CONTEXTLMTXMODE == 0 then dimensions = { default = { -- experimental values --- [0x02044] = { xoffset = 275, width = 600 }, + -- [0x02044] = { xoffset = 275, width = 600 }, -- primes [0xFE932] = { width = 200 }, [0xFE933] = { width = 500 }, @@ -33,12 +32,18 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - RadicalDisplayStyleVerticalGap = 100, - NoLimitSupFactor = 0, - NoLimitSubFactor = 900, - FractionRuleThickness = 55, - -- AccentBaseHeight = 650, - AccentBaseDepth = 150, + RadicalDisplayStyleVerticalGap = 100, + NoLimitSupFactor = 0, + NoLimitSubFactor = 900, + FractionRuleThickness = 55, + -- AccentBaseHeight = 650, + AccentBaseDepth = 150, + RadicalDegreeBottomRaisePercent = 50, + RadicalKernAfterDegree = -600, + RadicalRuleThickness = 35, -- 40 in font (46 in demi) + DelimiterPercent = 90, + DelimiterShortfall = 400, + -- DisplayOperatorMinHeight = 1800, -- 1300 in font (only one) }, tweaks = { aftercopying = { @@ -80,13 +85,21 @@ return { ["0x23DD.parts.2"] = { depth = .8, yoffset = 0.2 }, ["0x23DD.parts.3"] = { xoffset = 0.075, depth = .8, yoffset = 0.2 }, -- The < and > are slightly too small. We scale them by 867/795 - ["0x003C"] = { scale = 1.09057, width = 1.09057, height = 1.09057}, - ["0x003E"] = { scale = 1.09057, width = 1.09057, height = 1.09057}, + ["0x003C"] = { scale = 1.09057, width = 1.09057, height = 1.09057 }, + ["0x003E"] = { scale = 1.09057, width = 1.09057, height = 1.09057 }, -- The = is too big if in ss03. We scale it by 795/867 (not working like this) - -- ["0x003D.ss03"] = { scale = 0.916955, width = 0.916955, height = 0.916955}, + -- ["0x003D.ss03"] = { scale = 0.916955, width = 0.916955, height = 0.916955 }, -- these are done later using the AccentBase* parameters - -- [0x23DC] = { height = .2, yoffset = -0.8 }, - -- [0x23DD] = { depth = .6, yoffset = 0.4 }, + -- [0x23DC] = { height = .2, yoffset = -0.8 }, + -- [0x23DD] = { depth = .6, yoffset = 0.4 }, + + -- ["0x7C.variants.1"] = { squeeze = 0.75, height = 0.75, depth = 0.75 }, + -- ["0x7C.variants.2"] = { squeeze = 0.75, height = 0.75, depth = 0.75 }, + -- ["0x7C.variants.3"] = { squeeze = 0.75, height = 0.75, depth = 0.75 }, + -- ["0x7C.variants.4"] = { squeeze = 0.75, height = 0.75, depth = 0.75 }, + -- going zero makes them be ignored + ["0x7C.variants.3"]={ squeeze = 0.90, height = 0.90, depth = 0.90 }, + ["0x7C.variants.4"]={ squeeze = 0.80, height = 0.80, depth = 0.80 }, }, }, { diff --git a/tex/context/fonts/mkiv/minion-math.lfg b/tex/context/fonts/mkiv/minion-math.lfg index c80ade9be..8ebca4c91 100644 --- a/tex/context/fonts/mkiv/minion-math.lfg +++ b/tex/context/fonts/mkiv/minion-math.lfg @@ -1,3 +1,7 @@ +-- This math font has not yet been set up. We will only do that when those involved +-- ConTeXt (math) develoipment have official copies of all the text minion and math +-- fonts without restrictions of usage in documents. + local dimensions, kerns if CONTEXTLMTXMODE == 0 then local kern_W = { bottomright = { { kern = -150 } } } diff --git a/tex/context/fonts/mkiv/newcomputermodern-math.lfg b/tex/context/fonts/mkiv/newcomputermodern-math.lfg index db05cb947..2e0c3169d 100644 --- a/tex/context/fonts/mkiv/newcomputermodern-math.lfg +++ b/tex/context/fonts/mkiv/newcomputermodern-math.lfg @@ -1,5 +1,6 @@ -- In order to be able to use beta math fonts, we use our own file name and --- always remap. +-- always remap. As this font is experimental we don't spend too much time +-- on it now. Even then, we migth stick to design sizes only. local dimensions, kerns if CONTEXTLMTXMODE == 0 then @@ -47,7 +48,6 @@ local dimensions, kerns if CONTEXTLMTXMODE == 0 then end - return { name = "newcomputermodern", version = "1.00", @@ -65,8 +65,11 @@ return { end return o * target.parameters.factor end, - NoLimitSupFactor = 0, - NoLimitSubFactor = 1200, + NoLimitSupFactor = 0, + NoLimitSubFactor = 1200, + DelimiterPercent = 90, + DelimiterShortfall = 400, + -- DisplayOperatorMinHeight = 1800, -- 1300 in font (only one) }, tweaks = { aftercopying = { diff --git a/tex/context/fonts/mkiv/pagella-math.lfg b/tex/context/fonts/mkiv/pagella-math.lfg index 17f59d952..4ace3e650 100644 --- a/tex/context/fonts/mkiv/pagella-math.lfg +++ b/tex/context/fonts/mkiv/pagella-math.lfg @@ -35,11 +35,17 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 900, - AccentTopShiftUp = 30, - -- AccentBaseHeight = 0, - AccentBaseDepth = 80, + NoLimitSupFactor = 0, + NoLimitSubFactor = 900, + AccentTopShiftUp = 30, + -- AccentBaseHeight = 0, + AccentBaseDepth = 80, + RadicalDegreeBottomRaisePercent = 60, + RadicalKernAfterDegree = -500, + RadicalRuleThickness = 54, -- 60 in font + DelimiterPercent = 90, + DelimiterShortfall = 400, + DisplayOperatorMinHeight = 1800, -- 1500 in font }, tweaks = { aftercopying = { @@ -66,51 +72,54 @@ return { -- [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 + [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.0 , all=true }, -- widedddot - -- [0x0030A] = { yoffset = -0.05 , all=true }, -- widering - [0x0030C] = { yoffset = -0.03 , all=true }, -- widecheck - [0x1D44E] = { 0, 1, 0, 0.9 }, -- a - [0x1D44F] = { 0, 1, 0, 1.3 }, -- b - [0x1D450] = { 0, 1, 0, 0.9 }, -- c - [0x1D451] = { 0, 1, 0, 0.7 }, -- d - [0x1D452] = { 0, 1, 0, 0.9 }, -- e - [0x1D453] = { 0.50, 1.70, 0.6 }, -- f - [0x1D454] = { 0.10, 1.15, 0.2 }, -- g - [0x0210E] = { 0, 1, 0, 1.3 }, -- h - [0x1D458] = { 0, 1, 0, 1.3 }, -- k - [0x1D459] = { 0, 1, 0, 0.9 }, -- l - [0x1D45E] = { 0, 1, 0, 0.9 }, -- q - [0x1D463] = { 0, 1, 0, 1.25 }, -- v - [0x1D464] = { 0, 1, 0, 1.2 }, -- w - [0x1D6FE] = { 0, 1, 0, 1.2 }, -- \gamma - [0x1D706] = { 0, 1, 0, 1.05 }, -- \lambda - [0x1D70A] = { 0, 1, 0, 1.2 }, -- \omicron - [0x1D70D] = { 0, 1, 0, 1.2 }, -- \varsigma - [0x1D70E] = { 0, 1, 0, 1.1 }, -- \sigma - [0x1D70F] = { -.10, 1, 0, 0.95 }, -- \tau - [0x1D712] = { 0.1, 1.2, 0.1 }, -- \chi - [0x1D713] = { -0.05, 0.95, 0.1 }, -- \psi - [0x1D71D] = { 0, 1, 0, 0.7 }, -- \varpi + [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 + [0x1D451] = { xoffset = 0, width = 1, italic = 0, anchor = 0.7 }, -- d + [0x1D452] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- e + [0x1D453] = { xoffset = 0.50, width = 1.70, italic = 0.6 }, -- f + [0x1D454] = { xoffset = 0.10, width = 1.15, italic = 0.2 }, -- g + [0x0210E] = { xoffset = 0, width = 1, italic = 0, anchor = 1.3 }, -- h + [0x1D458] = { xoffset = 0, width = 1, italic = 0, anchor = 1.3 }, -- k + [0x1D459] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- l + [0x1D45E] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- q + [0x1D463] = { xoffset = 0, width = 1, italic = 0, anchor = 1.25 }, -- v + [0x1D464] = { xoffset = 0, width = 1, italic = 0, anchor = 1.2 }, -- w + [0x1D6FE] = { xoffset = 0, width = 1, italic = 0, anchor = 1.2 }, -- \gamma + [0x1D706] = { xoffset = 0, width = 1, italic = 0, anchor = 1.05 }, -- \lambda + [0x1D70A] = { xoffset = 0, width = 1, italic = 0, anchor = 1.2 }, -- \omicron + [0x1D70D] = { xoffset = 0, width = 1, italic = 0, anchor = 1.2 }, -- \varsigma + [0x1D70E] = { xoffset = 0, width = 1, italic = 0, anchor = 1.1 }, -- \sigma + [0x1D70F] = { xoffset = -.10, width = 1, italic = 0, anchor = 0.95 }, -- \tau + [0x1D712] = { xoffset = 0.1, width = 1.2, italic = 0.1 }, -- \chi + [0x1D713] = { xoffset = -0.05, width = 0.95, italic = 0.1 }, -- \psi + [0x1D71D] = { xoffset = 0, width = 1, italic = 0, anchor = 0.7 }, -- \varpi }, }, { diff --git a/tex/context/fonts/mkiv/schola-math.lfg b/tex/context/fonts/mkiv/schola-math.lfg index 02bfa8925..21062320c 100644 --- a/tex/context/fonts/mkiv/schola-math.lfg +++ b/tex/context/fonts/mkiv/schola-math.lfg @@ -18,10 +18,16 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 900, - -- AccentBaseHeight = 0, - AccentBaseDepth = 30, + NoLimitSupFactor = 0, + NoLimitSubFactor = 900, + -- AccentBaseHeight = 0, + AccentBaseDepth = 30, + RadicalDegreeBottomRaisePercent = 60, + RadicalKernAfterDegree = -500, + RadicalRuleThickness = 64, -- 70 in font + DelimiterPercent = 90, + DelimiterShortfall = 400, + DisplayOperatorMinHeight = 1800, -- 1333 in font }, tweaks = { aftercopying = { @@ -42,7 +48,7 @@ return { topleft = -0.2, -- bottomleft = 0, -- topright = 0, - bottomright = -0.2, + bottomright = -0.2, }, }, }, @@ -76,6 +82,6 @@ return { -- experimental fixes for mkiv: -- dimensions = dimensions, - kerns = kerns, + kerns = kerns, }, } diff --git a/tex/context/fonts/mkiv/stix-two-math.lfg b/tex/context/fonts/mkiv/stix-two-math.lfg index 5761e53a2..b61b0b2bf 100644 --- a/tex/context/fonts/mkiv/stix-two-math.lfg +++ b/tex/context/fonts/mkiv/stix-two-math.lfg @@ -21,10 +21,18 @@ return { circled = { feature = 'ss16', value = 1, comment = "Mathematical Alternative Circled Operators" }, }, parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 1000, - -- AccentBaseHeight = 0, - AccentBaseDepth = 30, + NoLimitSupFactor = 0, + NoLimitSubFactor = 1000, + -- AccentBaseHeight = 0, + AccentBaseDepth = 30, + 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 }, tweaks = { aftercopying = { @@ -39,7 +47,7 @@ return { topleft = -0.2, -- bottomleft = 0, -- topright = 0, - bottomright = -0.2, + bottomright = -0.2, }, }, }, @@ -64,24 +72,25 @@ return { -- [0x000B4] = { yoffset = -0.035 }, -- acute -- [0x002C6] = { yoffset = -0.035 }, -- hat -- [0x002DC] = { yoffset = -0.035 }, -- tilde - -- [0x000AF] = { yoffset = -0.05 }, -- bar + -- [0x000AF] = { yoffset = -0.05 }, -- bar -- [0x002D8] = { yoffset = -0.035 }, -- breve - [0x002D9] = { yoffset = -0.02 }, -- dot - [0x000A8] = { yoffset = -0.02 }, -- ddot - [0x020DB] = { yoffset = 0.04 }, -- dddot - -- [0x002DA] = { yoffset = -0.05 }, -- ring - -- [0x002C7] = { yoffset = -0.05 }, -- check - [0x020D7] = { yoffset = -0.07 }, -- 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.0 , all=true }, -- widedddot - -- [0x0030A] = { yoffset = -0.05 , all=true }, -- widering + [0x002D9] = { yoffset = -0.02 }, -- dot + [0x000A8] = { yoffset = -0.02 }, -- ddot + [0x020DB] = { yoffset = 0.04 }, -- dddot + -- [0x002DA] = { yoffset = -0.05 }, -- ring + -- [0x002C7] = { yoffset = -0.05 }, -- check + [0x020D7] = { yoffset = -0.07 }, -- 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 }, }, { diff --git a/tex/context/fonts/mkiv/termes-math.lfg b/tex/context/fonts/mkiv/termes-math.lfg index e9796dc31..977217b1c 100644 --- a/tex/context/fonts/mkiv/termes-math.lfg +++ b/tex/context/fonts/mkiv/termes-math.lfg @@ -26,10 +26,15 @@ return { copyright = "ConTeXt development team", mathematics = { parameters = { - NoLimitSupFactor = 0, - NoLimitSubFactor = 900, - -- AccentBaseHeight = 0, - AccentBaseDepth = 50, + NoLimitSupFactor = 0, + NoLimitSubFactor = 900, + -- AccentBaseHeight = 0, + AccentBaseDepth = 50, + RadicalDegreeBottomRaisePercent = 60, + RadicalRuleThickness = 46, -- 52 in font + DelimiterPercent = 90, + DelimiterShortfall = 400, + DisplayOperatorMinHeight = 1800, -- 1300 in font (only one) }, tweaks = { aftercopying = { @@ -40,20 +45,20 @@ return { { tweak = "dimensions", list = { - [0x1D44F] = { 0, 1, 0, 1.3 }, -- b - [0x1D451] = { 0, 1, 0, 0.8 }, -- d - [0x1D452] = { 0, 1, 0, 0.9 }, -- e - [0x0210E] = { 0, 1, 0, 1.3 }, -- h - [0x1D458] = { 0, 1, 0, 1.3 }, -- k - [0x1D453] = { 0.6, 1.4, 1.2, 1.5 }, -- f - [0x1D457] = { 0.5, 1.3, 1.7 }, -- j - [0x1D45D] = { 0.15, 1.15, 0, 1.4 }, -- p - [0x1D45E] = { 0, 1, 0, 0.9 }, -- q - [0x1D464] = { 0, 1, 0, 1.1 }, -- w - [0x1D6FE] = { 0, 1, 0, 1.1 }, -- \gamma - [0x1D706] = { 0, 1, 0, 1.05 }, -- \lambda - [0x1D70A] = { 0, 1, 0, 1.2 }, -- \omicron - [0x1D70F] = { 0, 1, 0, 1.05 }, -- \tau + [0x1D44F] = { xoffset = 0, width = 1, italic = 0, anchor = 1.3 }, -- b + [0x1D451] = { xoffset = 0, width = 1, italic = 0, anchor = 0.8 }, -- d + [0x1D452] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- e + [0x0210E] = { xoffset = 0, width = 1, italic = 0, anchor = 1.3 }, -- h + [0x1D458] = { xoffset = 0, width = 1, italic = 0, anchor = 1.3 }, -- k + [0x1D453] = { xoffset = 0.6, width = 1.4, italic = 1.2, anchor = 1.5 }, -- f + [0x1D457] = { xoffset = 0.5, width = 1.3, italic = 1.7 }, -- j + [0x1D45D] = { xoffset = 0.15, width = 1.15, italic = 0, anchor = 1.4 }, -- p + [0x1D45E] = { xoffset = 0, width = 1, italic = 0, anchor = 0.9 }, -- q + [0x1D464] = { xoffset = 0, width = 1, italic = 0, anchor = 1.1 }, -- w + [0x1D6FE] = { xoffset = 0, width = 1, italic = 0, anchor = 1.1 }, -- \gamma + [0x1D706] = { xoffset = 0, width = 1, italic = 0, anchor = 1.05 }, -- \lambda + [0x1D70A] = { xoffset = 0, width = 1, italic = 0, anchor = 1.2 }, -- \omicron + [0x1D70F] = { xoffset = 0, width = 1, italic = 0, anchor = 1.05 }, -- \tau }, }, { @@ -63,7 +68,7 @@ return { topleft = -0.2, -- bottomleft = 0, -- topright = 0, - bottomright = -0.2, + bottomright = -0.2, }, }, }, diff --git a/tex/context/fonts/mkiv/type-imp-alegreya.mkiv b/tex/context/fonts/mkiv/type-imp-alegreya.mkiv new file mode 100644 index 000000000..892173210 --- /dev/null +++ b/tex/context/fonts/mkiv/type-imp-alegreya.mkiv @@ -0,0 +1,86 @@ +%D \module +%D [ file=type-imp-dejavu, +%D version=2010.06.21, +%D title=\CONTEXT\ Typescript Macros, +%D subtitle=Alegreya fonts, +%D author=Hans Hagen, +%D date=\currentdate, +%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}] +%C +%C This module is part of the \CONTEXT\ macro||package and is +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. + +%D This is cleaned up ersion of thwe one on the wiki. The font can be fetched from: +%D +%D \type {https://www.huertatipografica.com/en/fonts/alegreya-ht-pro} + +% \usetypescriptfile[alegreya] +% +% \usebodyfont[alegreya-light] +% \usebodyfont[alegreya-medium] +% +% \setupbodyfont[alegreya] +% +% \setuplayout[tight] +% +% \starttext +% \switchtobodyfont[alegreya-light] \input tufte \par +% \switchtobodyfont[alegreya] \input tufte \par +% \switchtobodyfont[alegreya-medium] \input tufte \par +% \switchtobodyfont[alegreya-light,sans] \input tufte \par +% \switchtobodyfont[alegreya,sans] \input tufte \par +% \switchtobodyfont[alegreya-medium,sans] \input tufte \par +% \stoptext + +\starttypescriptcollection[alegreya] + +\usetypescriptfile + [imp-gentium] + +\definefontfallback + [alegreyagentium-fallback] + [name:gentium] + [greekandcoptic,greekextended] + +\starttypescript [serif] [alegreya-serif,alegreya-light-serif,alegreya-medium-serif] [name] + \setups[font:fallback:serif] + \definefontsynonym[Serif] [name:alegreyaregular] [features=default,fallbacks=alegreya-gentium-fallback] + \definefontsynonym[SerifItalic] [name:alegreyaitalic] [features=default,fallbacks=alegreya-gentium-fallback] + \definefontsynonym[SerifBold] [name:alegreyabold] [features=default,fallbacks=alegreya-gentium-fallback] + \definefontsynonym[SerifBoldItalic] [name:alegreyabolditalic] [features=default,fallbacks=alegreya-gentium-fallback] +\stoptypescript + +\starttypescript [sans] [alegreya-sans] [name] + \setups[font:fallback:sans] + \definefontsynonym [Sans] [name:alegreyasansregular] [features=default] + \definefontsynonym [SansItalic] [name:alegreyasansitalic] [features=default] + \definefontsynonym [SansBold] [name:alegreyasansbold] [features=default] + \definefontsynonym [SansBoldItalic] [name:alegreyasansbolditalic] [features=default] +\stoptypescript + +\starttypescript [sans] [alegreya-light-sans] [name] + \setups[font:fallback:sans] + \definefontsynonym [Sans] [name:alegreyasanslight] [features=default] + \definefontsynonym [SansItalic] [name:alegreyasanslightitalic] [features=default] + \definefontsynonym [SansBold] [name:alegreyasansmedium] [features=default] + \definefontsynonym [SansBoldItalic] [name:alegreyasansmediumitalic] [features=default] +\stoptypescript + +\starttypescript [sans] [alegreya-medium-sans] [name] + \setups[font:fallback:sans] + \definefontsynonym [Sans] [name:alegreyasansmedium] [features=default] + \definefontsynonym [SansItalic] [name:alegreyasansmediumitalic] [features=default] + \definefontsynonym [SansBold] [name:alegreyasansextrabold] [features=default] + \definefontsynonym [SansBoldItalic] [name:alegreyasansextrabolditalic] [features=default] +\stoptypescript + +\starttypescript [alegreya,alegreya-light,alegreya-medium] + \definefallbackfamily[alegreya][serif][gentium][range={greekandcoptic,greekextended}] + \definetypeface [\typescriptone] [rm] [serif] [\typescriptone-serif] [default] + \definetypeface [\typescriptone] [ss] [sans] [\typescriptone-sans] [default] + \definetypeface [\typescriptone] [tt] [mono] [modern] [default] + \definetypeface [\typescriptone] [mm] [math] [default] [default] +\stoptypescript + +\stoptypescriptcollection diff --git a/tex/context/fonts/mkiv/type-imp-gentium.mkiv b/tex/context/fonts/mkiv/type-imp-gentium.mkiv index 751ca87e7..20e6f79ff 100644 --- a/tex/context/fonts/mkiv/type-imp-gentium.mkiv +++ b/tex/context/fonts/mkiv/type-imp-gentium.mkiv @@ -1,36 +1,81 @@ %D \module %D [ file=type-gentium, -%D version=2013.05.02, +%D version=20220521,, %D title=\CONTEXT\ Typescript Macros, %D subtitle=Typescript file for Gentium, -%D author={Thomas A. Schmitz and Mojca Miklavec}, +%D author=Hans Hagen, %D date=\currentdate, -%D copyright={Mojca and Thomas}] - -% One probably has to enable the 'aalt' feature too. - -\starttypescript [serif] [gentium] - \definefontsynonym [Gentium-Roman] [file:GentiumPlus-R] [features=default] - \definefontsynonym [Gentium-Italic] [file:GentiumPlus-I] [features=default] - \definefontsynonym [Gentium-Bold] [file:GenBasB] [features=default] - \definefontsynonym [Gentium-BoldItalic] [file:GenBasBI] [features=default] - \definefontsynonym [Gentium-Slanted] [Gentium-Italic] - \definefontsynonym [Gentium-BoldSlanted] [Gentium-BoldItalic] - \definefontsynonym [Gentium-RomanCaps] [file:GentiumPlus-R] [features=smallcaps] +%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}] + +% The file is derived from one by Thomas and Mojca (20130502). + +\usetypescriptfile[dejavu] + +\starttypescript [serif] [gentium,gentiumplus] + \definefontsynonym [Gentium-Roman] [file:GentiumPlus-Regular] [features=default] + \definefontsynonym [Gentium-Italic] [file:GentiumPlus-Italic] [features=default] + \definefontsynonym [Gentium-Bold] [file:GentiumPlus-Bold] [features=default] + \definefontsynonym [Gentium-BoldItalic] [file:GentiumPlus-BoldItalic] [features=default] + \definefontsynonym [Gentium-Slanted] [file:GentiumPlus-Regular] [features={default,slanted}] + \definefontsynonym [Gentium-BoldSlanted] [file:GentiumPlus-Bold] [features={default,slanted}] +\stoptypescript + +\starttypescript [serif] [gentiumbook] + \definefontsynonym [Gentium-Roman] [file:GentiumBookPlus-Regular] [features=default] + \definefontsynonym [Gentium-Italic] [file:GentiumBookPlus-Italic] [features=default] + \definefontsynonym [Gentium-Bold] [file:GentiumBookPlus-Bold] [features=default] + \definefontsynonym [Gentium-BoldItalic] [file:GentiumBookPlus-BoldItalic] [features=default] + \definefontsynonym [Gentium-Slanted] [file:GentiumBookPlus-Regular] [features={default,slanted}] + \definefontsynonym [Gentium-BoldSlanted] [file:GentiumBookPlus-Bold] [features={default,slanted}] \stoptypescript -\starttypescript [serif] [gentium] [name] +\starttypescript [serif] [gentium,gentiumplus,gentiumbook] [name] \definefontsynonym [Serif] [Gentium-Roman] \definefontsynonym [SerifItalic] [Gentium-Italic] \definefontsynonym [SerifBold] [Gentium-Bold] \definefontsynonym [SerifBoldItalic] [Gentium-BoldItalic] \definefontsynonym [SerifSlanted] [Gentium-Slanted] \definefontsynonym [SerifBoldSlanted] [Gentium-BoldSlanted] - \definefontsynonym [SerifCaps] [Serif] - \definefontsynonym [OldStyle] [Serif] - \definefontsynonym [SerifCaps] [Gentium-RomanCaps] \stoptypescript -\starttypescript [gentium] - \definetypeface [gentium] [rm] [serif] [gentium] [default] [features=default] +% HH: we probably need to rscale dejavu here .. feel free to suggest + +\starttypescript [gentium,gentiumplus,gentiumbook] + \definetypeface [\typescriptone] [rm] [serif] [\typescriptone] [default] [features=default] + \definetypeface [\typescriptone] [ss] [sans] [dejavu] [default] [features=default] + \definetypeface [\typescriptone] [tt] [mono] [dejavu] [default] [features=default] + \definetypeface [\typescriptone] [mm] [math] [dejavu] [default] \stoptypescript + +\continueifinputfile{type-imp-gentium.mkiv} + +\usemodule[article-basic,scite] + +\setuplayout[tight] + +\usebodyfont [gentiumbook] +\setupbodyfont[gentiumplus] + +\starttext + +\protected\def\TestLine#1{% + \NC #1 + \NC \switchtobodyfont[#1]\tf normal + \NC \switchtobodyfont[#1]\bf bold + \NC \switchtobodyfont[#1]\it italic + \NC \switchtobodyfont[#1]\bi bolditalic + \NC \switchtobodyfont[#1]\sl slanted + \NC \switchtobodyfont[#1]\bs boldslanted + \NC \NR +} + +\starttabulate[|T|c|c|c|c|c|c|] + \TestLine{gentiumplus} + \TestLine{gentiumbook} +\stoptabulate + +\switchtobodyfont[8pt] + +\typefile[option=TEX]{type-imp-gentium.mkiv} + +\stoptext diff --git a/tex/context/fonts/mkiv/type-imp-latinmodern.mkiv b/tex/context/fonts/mkiv/type-imp-latinmodern.mkiv index dc31715a4..cf5052c82 100644 --- a/tex/context/fonts/mkiv/type-imp-latinmodern.mkiv +++ b/tex/context/fonts/mkiv/type-imp-latinmodern.mkiv @@ -235,7 +235,7 @@ %D It doesn't hurt to have these, at least for the moment (can go to type-imp-symbol) -\definefontsynonym [ZapfDingbats] [\s!file:uzdr*dingbats] % works better with symbols +\definefontsynonym [ZapfDingbats] [\s!file:uzdr*dingbats]% works better with symbols % \definefontsynonym [ZapfDingbats] [\s!file:uzdr] [\s!features=dingbats]% [\s!goodies=dingbats] diff --git a/tex/context/fonts/mkiv/type-imp-modernlatin.mkiv b/tex/context/fonts/mkiv/type-imp-modernlatin.mkiv index 2494d1af2..f62855a59 100644 --- a/tex/context/fonts/mkiv/type-imp-modernlatin.mkiv +++ b/tex/context/fonts/mkiv/type-imp-modernlatin.mkiv @@ -22,7 +22,7 @@ \doifunknownfontfeature {lm-math-regular} {\definefontfeature[lm-math-regular] [boldened-15]} \doifunknownfontfeature {lm-math-bold} {\definefontfeature[lm-math-bold] [boldened-30]} - \starttypescript [\s!serif] [modern-latin] + \starttypescript [\s!serif] [modernlatin,modern-latin] % \loadfontgoodies[lm] \definefontsynonym [Serif] [\s!file:lmroman10-regular] [\s!features={\s!default,lm-serif-regular}] \definefontsynonym [SerifItalic] [\s!file:lmroman10-italic] [\s!features={\s!default,lm-serif-regular}] @@ -32,7 +32,17 @@ \definefontsynonym [SerifBoldSlanted][\s!file:lmromanslant10-regular] [\s!features={\s!default,lm-serif-bold}] \stoptypescript - \starttypescript [\s!sans] [modern-latin] + \starttypescript [\s!serif] [lessmodernlatin,less-modern-latin] + % \loadfontgoodies[lm] + \definefontsynonym [Serif] [\s!file:lmroman10-regular] [\s!features={\s!default,lm-serif-regular}] + \definefontsynonym [SerifItalic] [\s!file:lmroman10-italic] [\s!features={\s!default,lm-serif-regular}] + \definefontsynonym [SerifSlanted] [\s!file:lmromanslant10-regular] [\s!features={\s!default,lm-serif-regular}] + \definefontsynonym [SerifBold] [\s!file:lmroman10-bold] [\s!features={\s!default,lm-serif-regular}] + \definefontsynonym [SerifBoldItalic] [\s!file:lmroman10-bolditalic] [\s!features={\s!default,lm-serif-regular}] + \definefontsynonym [SerifBoldSlanted][\s!file:lmromanslant10-bold] [\s!features={\s!default,lm-serif-regular}] + \stoptypescript + + \starttypescript [\s!sans] [modernlatin,modern-latin] % \loadfontgoodies[lm] \definefontsynonym [Sans] [\s!file:lmsans10-regular] [\s!features={\s!default,lm-sans-regular}] \definefontsynonym [SansItalic] [\s!file:lmsans10-oblique] [\s!features={\s!default,lm-sans-regular}] @@ -42,7 +52,17 @@ \definefontsynonym [SansBoldSlanted][\s!file:lmsans10-oblique] [\s!features={\s!default,lm-sans-bold}] \stoptypescript - \starttypescript [\s!mono] [modern-latin] + \starttypescript [\s!sans] [lessmodernlatin,less-modern-latin] + % \loadfontgoodies[lm] + \definefontsynonym [Sans] [\s!file:lmsans10-regular] [\s!features={\s!default,lm-sans-regular}] + \definefontsynonym [SansItalic] [\s!file:lmsans10-oblique] [\s!features={\s!default,lm-sans-regular}] + \definefontsynonym [SansSlanted] [\s!file:lmsans10-boldoblique] [\s!features={\s!default,lm-sans-regular}] + \definefontsynonym [SansBold] [\s!file:lmsans10-bold] [\s!features={\s!default,lm-sans-regular}] + \definefontsynonym [SansBoldItalic] [\s!file:lmsans10-boldoblique] [\s!features={\s!default,lm-sans-regular}] + \definefontsynonym [SansBoldSlanted][\s!file:lmsans10-boldoblique] [\s!features={\s!default,lm-sans-regular}] + \stoptypescript + + \starttypescript [\s!mono] [modernlatin,modern-latin] % \loadfontgoodies[lm] \definefontsynonym [Mono] [\s!file:lmmono10-regular] [\s!features={\s!default,lm-mono-regular}] \definefontsynonym [MonoItalic] [\s!file:lmmono10-italic] [\s!features={\s!default,lm-mono-regular}] @@ -52,17 +72,27 @@ \definefontsynonym [MonoBoldSlanted][\s!file:lmmonoslant10-regular] [\s!features={\s!default,lm-mono-bold}] \stoptypescript - \starttypescript [\s!math] [modern-latin] + \starttypescript [\s!mono] [lessmodernlatin,less-modern-latin] + % \loadfontgoodies[lm] + \definefontsynonym [Mono] [\s!file:lmmono10-regular] [\s!features={\s!default,lm-mono-regular}] + \definefontsynonym [MonoItalic] [\s!file:lmmono10-italic] [\s!features={\s!default,lm-mono-regular}] + \definefontsynonym [MonoSlanted] [\s!file:lmmonoslant10-regular] [\s!features={\s!default,lm-mono-regular}] + \definefontsynonym [MonoBold] [\s!file:lmmono10-bold] [\s!features={\s!default,lm-mono-regular}] + \definefontsynonym [MonoBoldItalic] [\s!file:lmmono10-bolditalic] [\s!features={\s!default,lm-mono-regular}] + \definefontsynonym [MonoBoldSlanted][\s!file:lmmonoslant10-regular] [\s!features={\s!default,lm-mono-bold}] + \stoptypescript + + \starttypescript [\s!math] [modernlatin,modern-latin,lessmodernlatin,less-modern-latin] \loadfontgoodies[lm] \definefontsynonym [MathRoman] [\v!file:latinmodern-math-regular.otf] [\s!features={\s!math\mathsizesuffix,lm-math,lm-math-regular,mathextra},\s!goodies=lm] \definefontsynonym [MathRomanBold] [\v!file:latinmodern-math-regular.otf] [\s!features={\s!math\mathsizesuffix,lm-math,lm-math-bold,mathextra},\s!goodies=lm] \stoptypescript - \starttypescript [modern-latin,modernlatin] - \definetypeface [\typescriptone] [\s!rm] [\s!serif] [modern-latin] [\s!default] - \definetypeface [\typescriptone] [\s!ss] [\s!sans] [modern-latin] [\s!default] - \definetypeface [\typescriptone] [\s!tt] [\s!mono] [modern-latin] [\s!default] - \definetypeface [\typescriptone] [\s!mm] [\s!math] [modern-latin] [\s!default] + \starttypescript [modern-latin,modernlatin,less-modern-latin,lessmodernlatin] + \definetypeface [\typescriptone] [\s!rm] [\s!serif] [\typescriptone] [\s!default] + \definetypeface [\typescriptone] [\s!ss] [\s!sans] [\typescriptone] [\s!default] + \definetypeface [\typescriptone] [\s!tt] [\s!mono] [\typescriptone] [\s!default] + \definetypeface [\typescriptone] [\s!mm] [\s!math] [\typescriptone] [\s!default] \quittypescriptscanning \stoptypescript diff --git a/tex/context/fonts/mkiv/xits-math.lfg b/tex/context/fonts/mkiv/xits-math.lfg index dfb0e54bb..cf3050369 100644 --- a/tex/context/fonts/mkiv/xits-math.lfg +++ b/tex/context/fonts/mkiv/xits-math.lfg @@ -40,7 +40,7 @@ return { -- feature = false, -- use the saved ones (see typescript) selector = 0xFE00, }, - -- 0xFEO1 should be roundhand style, if present + -- 0xFEO1 should be roundhand style, if present { tweak = "variants", kind = "script", |