summaryrefslogtreecommitdiff
path: root/tex/context/fonts
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2023-04-11 23:40:06 +0200
committerContext Git Mirror Bot <phg@phi-gamma.net>2023-04-11 23:40:06 +0200
commit3b909ab613140e7a9c824c434b642f0578473a6d (patch)
treec4feec8afb3e9d1dfc26895a73c55ca194261601 /tex/context/fonts
parent059fc69b2c7853b937ddb4cfc9d36304dee07893 (diff)
downloadcontext-3b909ab613140e7a9c824c434b642f0578473a6d.tar.gz
2023-04-11 22:47:00
Diffstat (limited to 'tex/context/fonts')
-rw-r--r--tex/context/fonts/mkiv/antykwa-math.lfg8
-rw-r--r--tex/context/fonts/mkiv/bonum-math.lfg15
-rw-r--r--tex/context/fonts/mkiv/cambria-math.lfg6
-rw-r--r--tex/context/fonts/mkiv/concrete-math.lfg6
-rw-r--r--tex/context/fonts/mkiv/dejavu-math.lfg3
-rw-r--r--tex/context/fonts/mkiv/dejavu-text.lfg58
-rw-r--r--tex/context/fonts/mkiv/ebgaramond-math.lfg8
-rw-r--r--tex/context/fonts/mkiv/ebgaramond-text.lfg59
-rw-r--r--tex/context/fonts/mkiv/erewhon-math.lfg3
-rw-r--r--tex/context/fonts/mkiv/erewhon-text.lfg81
-rw-r--r--tex/context/fonts/mkiv/euler-math.lfg3
-rw-r--r--tex/context/fonts/mkiv/kpfonts-math.lfg4
-rw-r--r--tex/context/fonts/mkiv/kpfonts-text.lfg57
-rw-r--r--tex/context/fonts/mkiv/libertinus-math.lfg3
-rw-r--r--tex/context/fonts/mkiv/libertinus-text.lfg59
-rw-r--r--tex/context/fonts/mkiv/lucida-math.lfg14
-rw-r--r--tex/context/fonts/mkiv/lucida-text.lfg69
-rw-r--r--tex/context/fonts/mkiv/modern-math.lfg9
-rw-r--r--tex/context/fonts/mkiv/modern-text.lfg62
-rw-r--r--tex/context/fonts/mkiv/newcomputermodern-math.lfg27
-rw-r--r--tex/context/fonts/mkiv/newcomputermodern-text.lfg63
-rw-r--r--tex/context/fonts/mkiv/pagella-math.lfg30
-rw-r--r--tex/context/fonts/mkiv/schola-math.lfg7
-rw-r--r--tex/context/fonts/mkiv/stixtwo-math.lfg31
-rw-r--r--tex/context/fonts/mkiv/stixtwo-text.lfg60
-rw-r--r--tex/context/fonts/mkiv/termes-math.lfg9
-rw-r--r--tex/context/fonts/mkiv/texgyre-text.lfg185
-rw-r--r--tex/context/fonts/mkiv/type-imp-dejavu.mkiv10
-rw-r--r--tex/context/fonts/mkiv/type-imp-ebgaramond.mkiv8
-rw-r--r--tex/context/fonts/mkiv/type-imp-erewhon.mkiv8
-rw-r--r--tex/context/fonts/mkiv/type-imp-kpfonts.mkiv8
-rw-r--r--tex/context/fonts/mkiv/type-imp-latinmodern.mkiv8
-rw-r--r--tex/context/fonts/mkiv/type-imp-libertinus.mkiv8
-rw-r--r--tex/context/fonts/mkiv/type-imp-lucida.mkiv8
-rw-r--r--tex/context/fonts/mkiv/type-imp-newcomputermodern.mkiv16
-rw-r--r--tex/context/fonts/mkiv/type-imp-stix.mkiv8
-rw-r--r--tex/context/fonts/mkiv/type-imp-texgyre.mkiv8
-rw-r--r--tex/context/fonts/mkiv/type-imp-xcharter.mkiv8
-rw-r--r--tex/context/fonts/mkiv/xcharter-math.lfg3
-rw-r--r--tex/context/fonts/mkiv/xcharter-text.lfg62
-rw-r--r--tex/context/fonts/mkxl/type-imp-bengali.mkxl73
-rw-r--r--tex/context/fonts/mkxl/type-imp-braille.mkxl88
-rw-r--r--tex/context/fonts/mkxl/type-imp-devanagari.mkxl244
-rw-r--r--tex/context/fonts/mkxl/type-imp-euler.mkxl71
-rw-r--r--tex/context/fonts/mkxl/type-imp-gujarati.mkxl77
-rw-r--r--tex/context/fonts/mkxl/type-imp-indic.mkxl800
-rw-r--r--tex/context/fonts/mkxl/type-imp-kannada.mkxl73
-rw-r--r--tex/context/fonts/mkxl/type-imp-malayalam.mkxl224
-rw-r--r--tex/context/fonts/mkxl/type-imp-tamil.mkxl53
-rw-r--r--tex/context/fonts/mkxl/type-imp-telugu.mkxl74
50 files changed, 2786 insertions, 93 deletions
diff --git a/tex/context/fonts/mkiv/antykwa-math.lfg b/tex/context/fonts/mkiv/antykwa-math.lfg
index 2965332e4..debf5d1ed 100644
--- a/tex/context/fonts/mkiv/antykwa-math.lfg
+++ b/tex/context/fonts/mkiv/antykwa-math.lfg
@@ -147,7 +147,7 @@ return {
{ name = "sy-anttlz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
{ name = "sy-anttlz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
{ name = "file:AntykwaTorunskaLight-Regular", vector = "tex-ex-braces", backmap = false },
- { name = "ex-anttl.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyone },
+ { name = "ex-anttl.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
},
["antykwa-cond-math"] = {
{ name = "file:LatinModern-Math", features = "virtualmath-antykwa-cond", main = true, parameters = false },
@@ -160,9 +160,9 @@ return {
{ name = "sy-anttcrz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
{ name = "sy-anttcrz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
{ name = "file:AntykwaTorunskaCond-Regular", vector = "tex-ex-braces", backmap = false },
- { name = "ex-anttcr.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyone },
+ { name = "ex-anttcr.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
},
- ["antykwa-lightcond-math"] = {
+ ["antykwa-light-cond-math"] = {
{ name = "file:LatinModern-Math", features = "virtualmath-antykwa-lightcond", main = true, parameters = false },
--
{ name = "rm-anttcl.tfm", vector = "tex-mr", skewchar=0x7F },
@@ -173,7 +173,7 @@ return {
{ name = "sy-anttclz.tfm", vector = "tex-sy", skewchar=0x30, parameters = true, ignore = uglyones }, -- jmn = true
{ name = "sy-anttclz.tfm", vector = "extensible-jmn-private", skewchar=0x30 },
{ name = "file:AntykwaTorunskaCondLight-Regular", vector = "tex-ex-braces", backmap = false },
- { name = "ex-anttcl.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyone },
+ { name = "ex-anttcl.tfm", vector = "tex-ex", extension = true, badones = badones, ignore = uglyones },
}
},
addmissing = helpers.addmissing,
diff --git a/tex/context/fonts/mkiv/bonum-math.lfg b/tex/context/fonts/mkiv/bonum-math.lfg
index aa35c7b5a..2852c6449 100644
--- a/tex/context/fonts/mkiv/bonum-math.lfg
+++ b/tex/context/fonts/mkiv/bonum-math.lfg
@@ -125,10 +125,10 @@ return {
tweak = "extendaccents",
},
{
- tweak = "flattenaccents",
- squeeze = 0.8,
- height = 0.9,
- offset = 0.1,
+ tweak = "flattenaccents",
+ },
+ {
+ tweak = "fixaccents", -- after flatten (zero width intefrerence)
},
{
tweak = "radicaldegreeanchors",
@@ -149,10 +149,9 @@ return {
-- ["0x7C.parts.bottom"] = { bottomright = -0.15 }, -- vertical bar
},
},
-
- {
- tweak = "fixaccents",
- },
+-- {
+-- tweak = "fixaccents",
+-- },
-- First we set the dimensions of the initial accent which started out as zero but we want
-- a proper width.
{
diff --git a/tex/context/fonts/mkiv/cambria-math.lfg b/tex/context/fonts/mkiv/cambria-math.lfg
index 9ad2c3afc..3b8e12cd9 100644
--- a/tex/context/fonts/mkiv/cambria-math.lfg
+++ b/tex/context/fonts/mkiv/cambria-math.lfg
@@ -70,6 +70,9 @@ return {
tweak = "extendaccents",
},
{
+ tweak = "fixaccents",
+ },
+ {
tweak = "radicaldegreeanchors",
list = {
[0x221A] = { location = "left", hfactor = -0.15, vfactor = .75 },
@@ -82,9 +85,6 @@ return {
["0x221A.parts.bottom"] = { location = "left", hfactor = -0.1, vfactor = 0.95 },
}
},
- {
- tweak = "fixaccents",
- },
-- First we set the dimensions of the initial accent which started out as zero but we want
-- a proper width.
{
diff --git a/tex/context/fonts/mkiv/concrete-math.lfg b/tex/context/fonts/mkiv/concrete-math.lfg
index 53972ab05..142778015 100644
--- a/tex/context/fonts/mkiv/concrete-math.lfg
+++ b/tex/context/fonts/mkiv/concrete-math.lfg
@@ -74,6 +74,12 @@ return {
},
},
{
+ tweak = "extendaccents",
+ },
+ {
+ tweak = "flattenaccents",
+ },
+ {
tweak = "radicaldegreeanchors",
list = {
["0x221A.parts.bottom"] = { location = "left", hfactor = .0, vfactor = 1.075 },
diff --git a/tex/context/fonts/mkiv/dejavu-math.lfg b/tex/context/fonts/mkiv/dejavu-math.lfg
index f3e1011ad..c97765122 100644
--- a/tex/context/fonts/mkiv/dejavu-math.lfg
+++ b/tex/context/fonts/mkiv/dejavu-math.lfg
@@ -106,6 +106,9 @@ return {
}
},
{
+ tweak = "flattenaccents",
+ },
+ {
tweak = "fixaccents",
},
-- First we set the dimensions of the initial accent which started out as zero but we want
diff --git a/tex/context/fonts/mkiv/dejavu-text.lfg b/tex/context/fonts/mkiv/dejavu-text.lfg
new file mode 100644
index 000000000..ba6458eaf
--- /dev/null
+++ b/tex/context/fonts/mkiv/dejavu-text.lfg
@@ -0,0 +1,58 @@
+return {
+ name = "dejavu-text",
+ version = "1.00",
+ comment = "Goodies that complement dejavu.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "DejaVuSerif",
+ "DejaVuSerif-Bold",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 100,
+ ["}"] = 100,
+ ["]"] = 100,
+ ["|"] = 150,
+ ["\\"] = 175,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 100,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "DejaVuSerif-Italic",
+ "DejaVuSerif-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 140,
+ ["}"] = 140,
+ ["]"] = 140,
+ ["|"] = 100,
+ ["\\"] = 200,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 250,
+ },
+ ["("] = {
+ ["f"] = 100,
+ },
+ ["{"] = {
+ ["f"] = 100,
+ },
+ ["["] = {
+ ["f"] = 100,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkiv/ebgaramond-math.lfg b/tex/context/fonts/mkiv/ebgaramond-math.lfg
index bf9a2e027..d2ef73f55 100644
--- a/tex/context/fonts/mkiv/ebgaramond-math.lfg
+++ b/tex/context/fonts/mkiv/ebgaramond-math.lfg
@@ -13,6 +13,7 @@ return {
OverbarRuleThickness = 60,
UnderbarRuleThickness = 60,
AccentTopShiftUp = -25, -- was 075
+ FlattenedAccentBaseHeight = 620, -- 420 in font (maybe some misunderstanding in the font regarding accents and heights)
FlattenedAccentTopShiftUp = -25, -- was 075
AccentBaseDepth = 75,
DelimiterPercent = 90,
@@ -146,8 +147,11 @@ return {
tweak = "extendaccents",
},
{
- tweak = "radicaldegreeanchors",
- list = {
+ tweak = "flattenaccents",
+ },
+ {
+ tweak = "radicaldegreeanchors",
+ list = {
["0x221A.parts.bottom"] = { location = "left", hfactor = .0, vfactor = 1.0 },
}
},
diff --git a/tex/context/fonts/mkiv/ebgaramond-text.lfg b/tex/context/fonts/mkiv/ebgaramond-text.lfg
new file mode 100644
index 000000000..824728460
--- /dev/null
+++ b/tex/context/fonts/mkiv/ebgaramond-text.lfg
@@ -0,0 +1,59 @@
+return {
+ name = "ebgaramond-text",
+ version = "1.00",
+ comment = "Goodies that complement ebgaramond.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "EBGaramond-Regular",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 80,
+ ["}"] = 100,
+ ["]"] = 100,
+ ["|"] = 100,
+ ["\\"] = 120,
+ ["!"] = 100,
+ ["?"] = 100,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "EBGaramond-Italic",
+ "EBGaramond-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 120,
+ ["}"] = 120,
+ ["]"] = 120,
+ ["|"] = 120,
+ ["\\"] = 120,
+ ["!"] = 75,
+ ["?"] = 75,
+ ["*"] = 120,
+ },
+ ["("] = {
+ ["f"] = 120,
+ },
+ ["{"] = {
+ ["f"] = 120,
+ },
+ ["["] = {
+ ["f"] = 120,
+ },
+ ["|"] = {
+ ["f"] = 120,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkiv/erewhon-math.lfg b/tex/context/fonts/mkiv/erewhon-math.lfg
index 68a088d3f..223927184 100644
--- a/tex/context/fonts/mkiv/erewhon-math.lfg
+++ b/tex/context/fonts/mkiv/erewhon-math.lfg
@@ -73,6 +73,9 @@ return {
},
},
{
+ tweak = "flattenaccents",
+ },
+ {
tweak = "radicaldegreeanchors",
list = {
["0x221A.parts.bottom"] = { location = "left", hfactor = .1, vfactor = 1.025 },
diff --git a/tex/context/fonts/mkiv/erewhon-text.lfg b/tex/context/fonts/mkiv/erewhon-text.lfg
new file mode 100644
index 000000000..46a3aa842
--- /dev/null
+++ b/tex/context/fonts/mkiv/erewhon-text.lfg
@@ -0,0 +1,81 @@
+return {
+ name = "erewhon-text",
+ version = "1.00",
+ comment = "Goodies that complement erewhon.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "Erewhon-Regular",
+ -- "Erewhon-Bold",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 100,
+ ["}"] = 100,
+ ["]"] = 100,
+ ["|"] = 100,
+ ["\\"] = 75,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 100,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "Erewhon-Bold",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 25,
+ ["}"] = 50,
+ ["]"] = 25,
+ ["|"] = 50,
+ ["\\"] = 75,
+ ["!"] = 50,
+ ["?"] = 50,
+ ["*"] = 50,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "Erewhon-Italic",
+ "Erewhon-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 50,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["|"] = 125,
+ ["\\"] = 125,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 100,
+ ["@"] = 100,
+ },
+ ["("] = {
+ ["f"] = 100,
+ },
+ ["{"] = {
+ ["f"] = 100,
+ },
+ ["["] = {
+ ["f"] = 100,
+ },
+ ["|"] = {
+ ["f"] = 130,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkiv/euler-math.lfg b/tex/context/fonts/mkiv/euler-math.lfg
index 1c4659786..23d92b047 100644
--- a/tex/context/fonts/mkiv/euler-math.lfg
+++ b/tex/context/fonts/mkiv/euler-math.lfg
@@ -78,6 +78,9 @@ return {
-- add the accent fixes
-- fixslashes?
{
+ tweak = "flattenaccents",
+ },
+ {
tweak = "checkspacing",
},
{
diff --git a/tex/context/fonts/mkiv/kpfonts-math.lfg b/tex/context/fonts/mkiv/kpfonts-math.lfg
index 5896323b4..1b2eea45f 100644
--- a/tex/context/fonts/mkiv/kpfonts-math.lfg
+++ b/tex/context/fonts/mkiv/kpfonts-math.lfg
@@ -102,7 +102,9 @@ return {
["0x221A.parts.bottom"] = { location = "left", hfactor = .0, vfactor = 0.65 },
}
},
-
+ {
+ tweak = "flattenaccents",
+ },
{
tweak = "addscripts",
},
diff --git a/tex/context/fonts/mkiv/kpfonts-text.lfg b/tex/context/fonts/mkiv/kpfonts-text.lfg
new file mode 100644
index 000000000..6a14bec54
--- /dev/null
+++ b/tex/context/fonts/mkiv/kpfonts-text.lfg
@@ -0,0 +1,57 @@
+return {
+ name = "kpfonts-text",
+ version = "1.00",
+ comment = "Goodies that complement kpfonts.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "KpRoman-Regular",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 50,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["*"] = 50,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "KpRoman-Italic",
+ "KpRoman-SemiboldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 150,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["|"] = 125,
+ ["\\"] = 125,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 100,
+ ["@"] = 100,
+ },
+ ["("] = {
+ ["f"] = 100,
+ },
+ ["{"] = {
+ ["f"] = 100,
+ },
+ ["["] = {
+ ["f"] = 100,
+ },
+ ["|"] = {
+ ["f"] = 130,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkiv/libertinus-math.lfg b/tex/context/fonts/mkiv/libertinus-math.lfg
index ac15d6674..0b8ca42ad 100644
--- a/tex/context/fonts/mkiv/libertinus-math.lfg
+++ b/tex/context/fonts/mkiv/libertinus-math.lfg
@@ -87,6 +87,9 @@ return {
tweak = "extendaccents",
},
{
+ tweak = "flattenaccents",
+ },
+ {
tweak = "fixaccents",
},
-- First we set the dimensions of the initial accent which started out as zero but we want
diff --git a/tex/context/fonts/mkiv/libertinus-text.lfg b/tex/context/fonts/mkiv/libertinus-text.lfg
new file mode 100644
index 000000000..76afb51cd
--- /dev/null
+++ b/tex/context/fonts/mkiv/libertinus-text.lfg
@@ -0,0 +1,59 @@
+return {
+ name = "libertinus-text",
+ version = "1.00",
+ comment = "Goodies that complement libertinus.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "LibertinusSerif-Regular",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 50,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["|"] = 100,
+ ["\\"] = 50,
+ ["*"] = 50,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "LibertinusSerif-Italic",
+ "LibertinusSerif-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 50,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["|"] = 125,
+ ["\\"] = 125,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 100,
+ ["@"] = 100,
+ },
+ ["("] = {
+ ["f"] = 100,
+ },
+ ["{"] = {
+ ["f"] = 100,
+ },
+ ["["] = {
+ ["f"] = 100,
+ },
+ ["|"] = {
+ ["f"] = 130,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkiv/lucida-math.lfg b/tex/context/fonts/mkiv/lucida-math.lfg
index 50dce6907..1e5391d6a 100644
--- a/tex/context/fonts/mkiv/lucida-math.lfg
+++ b/tex/context/fonts/mkiv/lucida-math.lfg
@@ -15,6 +15,7 @@ return {
parameters = {
FractionRuleThickness = 55,
-- AccentBaseDepth = 250,
+ FlattenedAccentBaseHeight = 710,-- not present in font, set too small by 1.
DelimiterPercent = 90,
DelimiterShortfall = 400,
SuperscriptBottomMaxWithSubscript = 325,
@@ -126,16 +127,19 @@ return {
tweak = "extendaccents",
},
{
- tweak = "radicaldegreeanchors",
- list = {
+ tweak = "flattenaccents",
+ },
+ {
+ tweak = "fixaccents",
+ },
+ {
+ tweak = "radicaldegreeanchors",
+ list = {
["0x221A.variants.3"] = { location = "left", hfactor = 0, vfactor = .55 },
["0x221A.variants.4"] = { location = "left", hfactor = 0, vfactor = .50 },
["0x221A.parts.bottom"] = { location = "left", hfactor = 0, vfactor = .85 },
}
},
- {
- tweak = "fixaccents",
- },
-- First we set the dimensions of the initial accent which started out as zero but we want
-- a proper width. Not in lucida
-- Then we deal with all offsets and heights in one go. So we treat the initial accent
diff --git a/tex/context/fonts/mkiv/lucida-text.lfg b/tex/context/fonts/mkiv/lucida-text.lfg
new file mode 100644
index 000000000..cd32aee2b
--- /dev/null
+++ b/tex/context/fonts/mkiv/lucida-text.lfg
@@ -0,0 +1,69 @@
+return {
+ name = "lucida-text",
+ version = "1.00",
+ comment = "Goodies that complement lucida.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "LucidaBrightOT",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 70,
+ ["}"] = 70,
+ ["]"] = 70,
+ ["\\"] = 100,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "LucidaBrightOT-Demibold",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 70,
+ ["}"] = 70,
+ ["]"] = 70,
+ ["\\"] = 100,
+ },
+ }
+ },
+ {
+ name = "kern",
+ type = "kern",
+ fonts = {
+ "LucidaBrightOT-Italic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 70,
+ ["}"] = 20,
+ ["]"] = 70,
+ ["\\"] = 100,
+ },
+ }
+ },
+ {
+ name = "kern",
+ type = "kern",
+ fonts = {
+ "LucidaBrightOT-DemiboldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 70,
+ ["}"] = 40,
+ ["]"] = 70,
+ ["\\"] = 100,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkiv/modern-math.lfg b/tex/context/fonts/mkiv/modern-math.lfg
index e2560f0f1..fb9c8fd4b 100644
--- a/tex/context/fonts/mkiv/modern-math.lfg
+++ b/tex/context/fonts/mkiv/modern-math.lfg
@@ -144,14 +144,17 @@ return {
tweak = "extendaccents",
},
{
+ tweak = "flattenaccents",
+ },
+ {
+ tweak = "fixaccents",
+ },
+ {
tweak = "radicaldegreeanchors",
list = {
["0x221A.parts.bottom"] = { location = "left", hfactor = 0.05, vfactor = 1.05 },
}
},
- {
- tweak = "fixaccents",
- },
-- First we set the dimensions of the initial accent which started out as zero but we want
-- a proper width.
{
diff --git a/tex/context/fonts/mkiv/modern-text.lfg b/tex/context/fonts/mkiv/modern-text.lfg
new file mode 100644
index 000000000..20bdcc60b
--- /dev/null
+++ b/tex/context/fonts/mkiv/modern-text.lfg
@@ -0,0 +1,62 @@
+return {
+ name = "modern-text",
+ version = "1.00",
+ comment = "Goodies that complement latin modern.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ -- "LMRoman-Regular",
+ "LMRoman10-Regular",
+ "LMRoman10-Bold",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 50,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["|"] = 100,
+ ["\\"] = 50,
+ ["?"] = 50,
+ ["*"] = 50,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "LMRoman-Italic",
+ "LMRoman-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 50,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["|"] = 125,
+ ["\\"] = 125,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 100,
+ ["@"] = 100,
+ },
+ ["("] = {
+ ["f"] = 100,
+ },
+ ["{"] = {
+ ["f"] = 100,
+ },
+ ["["] = {
+ ["f"] = 100,
+ },
+ ["|"] = {
+ ["f"] = 130,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkiv/newcomputermodern-math.lfg b/tex/context/fonts/mkiv/newcomputermodern-math.lfg
index bb881eda0..9e5e6ab3a 100644
--- a/tex/context/fonts/mkiv/newcomputermodern-math.lfg
+++ b/tex/context/fonts/mkiv/newcomputermodern-math.lfg
@@ -1,3 +1,5 @@
+local common = fonts.goodies.load("common-math.lfg")
+local presets = common.mathematics.tweaks.presets
-- In order to be able to use beta math fonts, we use our own file name and
-- 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.
@@ -66,10 +68,12 @@ return {
end
return o * target.parameters.factor
end,
- NoLimitSupFactor = 0,
- NoLimitSubFactor = 1200,
- DelimiterPercent = 90,
- DelimiterShortfall = 400,
+ NoLimitSupFactor = 0,
+ NoLimitSubFactor = 1200,
+ DelimiterPercent = 90,
+ DelimiterShortfall = 400,
+ AccentTopShiftUp = -60,
+ FlattenedAccentTopShiftUp = -60,
SubscriptBaselineDropMin = 50, -- 200 in font (multiplied by 0.59999/2.39868)
SubscriptShiftDown = 150, -- 247 in font (multiplied to be consistent with cm)
SubscriptShiftDownWithSuperscript = 247, -- relates to the previous one (see math-act)
@@ -91,6 +95,18 @@ return {
smaller = true,
fake = 0.6,
},
+ presets.scripttocalligraphic { },
+ presets.rsfstoscript { },
+ presets.rsfsuprighttoscript { },
+ presets.moderntocalligraphic { },
+ presets.eulertocalligraphic { },
+ presets.xitsarabic { rscale = 0.80 },
+ presets.fallbacks { },
+ presets.moveitalics { correct = true },
+ presets.moveitalics { correct = true, letters = true },
+ presets.moveintegrals { factor = 1.4, icfactor = 0.8 }, -- the icfactor is due to the very slanted integral.
+ presets.wipeanchors { },
+ presets.wipeitalics { },
{
tweak = "kerns",
list = {
@@ -115,6 +131,9 @@ return {
},
},
{
+ tweak = "flattenaccents",
+ },
+ {
tweak = "checkspacing",
},
{
diff --git a/tex/context/fonts/mkiv/newcomputermodern-text.lfg b/tex/context/fonts/mkiv/newcomputermodern-text.lfg
new file mode 100644
index 000000000..24991642a
--- /dev/null
+++ b/tex/context/fonts/mkiv/newcomputermodern-text.lfg
@@ -0,0 +1,63 @@
+return {
+ name = "newcomputermodern-text",
+ version = "1.00",
+ comment = "Goodies that complement newcomputermodern.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "NewCM10-Book",
+ "NewCM10",
+ "NewCM10-Bold",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 50,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["|"] = 100,
+ ["\\"] = 75,
+ ["?"] = 50,
+ ["*"] = 50,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "NewCM10-BookItalic",
+ "NewCM10-BoldItalic",
+ "NewCM10-Italic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 50,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["|"] = 125,
+ ["\\"] = 100,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 50,
+ ["@"] = 100,
+ },
+ ["("] = {
+ ["f"] = 100,
+ },
+ ["{"] = {
+ ["f"] = 100,
+ },
+ ["["] = {
+ ["f"] = 100,
+ },
+ ["|"] = {
+ ["f"] = 130,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkiv/pagella-math.lfg b/tex/context/fonts/mkiv/pagella-math.lfg
index 230f81c9c..a9b3ea4bb 100644
--- a/tex/context/fonts/mkiv/pagella-math.lfg
+++ b/tex/context/fonts/mkiv/pagella-math.lfg
@@ -40,9 +40,26 @@ return {
feature = "euleroverpagella",
filename = "euler-math.otf",
list = {
- { source = { first = 0x02100, last = 0x02BFF } },
- { source = { first = 0x1D400, last = 0x1D7FF } },
- { source = { first = 0x1D538, last = 0x1D550 } },
+ { source = "lowercasenormal", target = "lowercaseitalic" },
+ { source = "lowercasebold", target = "lowercasebolditalic" },
+ { source = "lowercasegreeknormal", target = "lowercasegreekitalic" },
+ { source = "lowercasegreekbold", target = "lowercasegreekbolditalic" },
+ { source = "uppercasenormal", target = "uppercaseitalic" },
+ { source = "uppercasebold", target = "uppercasebolditalic" },
+ { source = "uppercasegreeknormal", target = "uppercasegreekitalic" },
+ { source = "uppercasegreekbold", target = "uppercasegreekbolditalic" },
+ { source = "lowercasenormal", target = "lowercasenormal" },
+ { source = "lowercasebold", target = "lowercasebold" },
+ { source = "lowercasegreeknormal", target = "lowercasegreeknormal" },
+ { source = "lowercasegreekbold", target = "lowercasegreekbold" },
+ { source = "uppercasenormal", target = "uppercasenormal" },
+ { source = "uppercasebold", target = "uppercasebold" },
+ { source = "uppercasegreeknormal", target = "uppercasegreeknormal" },
+ { source = "uppercasegreekbold", target = "uppercasegreekbold" },
+ { source = "digitsnormal", target = "digitsnormal" },
+ --
+ { source = { first = 0x02100, last = 0x02BFF } }, -- symbols
+ { source = { first = 0x1D400, last = 0x1D7FF } }, -- various alphabets
},
},
{
@@ -94,12 +111,15 @@ return {
tweak = "extendaccents",
},
{
- tweak = "radicaldegreeanchors",
- list = {
+ tweak = "radicaldegreeanchors",
+ list = {
["0x221A.parts.bottom"] = { location = "left", hfactor = 0.0, vfactor = 1.1 },
}
},
{
+ tweak = "flattenaccents",
+ },
+ {
tweak = "fixaccents",
},
-- First we set the dimensions of the initial accent which started out as zero but we want
diff --git a/tex/context/fonts/mkiv/schola-math.lfg b/tex/context/fonts/mkiv/schola-math.lfg
index 2e36f0825..58eb1a6ea 100644
--- a/tex/context/fonts/mkiv/schola-math.lfg
+++ b/tex/context/fonts/mkiv/schola-math.lfg
@@ -78,12 +78,15 @@ return {
tweak = "extendaccents",
},
{
- tweak = "radicaldegreeanchors",
- list = {
+ tweak = "radicaldegreeanchors",
+ list = {
["0x221A.parts.bottom"] = { location = "left", hfactor = 0.05, vfactor = 1.1 },
}
},
{
+ tweak = "flattenaccents",
+ },
+ {
tweak = "fixaccents",
},
-- First we set the dimensions of the initial accent which started out as zero but we want
diff --git a/tex/context/fonts/mkiv/stixtwo-math.lfg b/tex/context/fonts/mkiv/stixtwo-math.lfg
index c0c97862f..ebacf7a81 100644
--- a/tex/context/fonts/mkiv/stixtwo-math.lfg
+++ b/tex/context/fonts/mkiv/stixtwo-math.lfg
@@ -13,7 +13,11 @@ return {
copyright = "ConTeXt development team",
mathematics = {
alternates = {
- calligraphic = { feature = 'ss01', value = 1, comment = "Mathematical Alternative Calligraphic Characters" },
+ lambdabar = { feature = 'cv01', value = 1, comment = "Mathematical Alternative Lambda Bar" },
+ ramshorn = { feature = 'cv02', value = 1, comment = "Mathematical Alternative Rams Horn" },
+ emptyset = { feature = 'cv03', value = 1, comment = "Mathematical Alternative Empty Set" },
+ setminus = { feature = 'cv04', value = 1, comment = "Mathematical Alternative Setminus" },
+ calligraphic = { feature = 'ss01', value = 1, comment = "Mathematical Alternative Calligraphic Characters" }, -- We do this differently
italic = { feature = 'ss02', value = 1, comment = "Mathematical Alternative Lowercase Italic" },
barred = { feature = 'ss03', value = 1, comment = "Mathematical Alternative Barred Characters" }, -- hbar, lambdabar etc
primes = { feature = 'ss04', value = 1, comment = "Mathematical Alternative Primes" }, -- larger/lower primes, minute etc
@@ -23,9 +27,26 @@ return {
upright = { feature = 'ss08', value = 1, comment = "Mathematical Alternative Upright Symbols" }, -- upright integrals etc.
negated = { feature = 'ss09', value = 1, comment = "Mathematical Alternative Negated Symbols" },
relation = { feature = 'ss10', value = 1, comment = "Mathematical Alternative Relations" },
- negatedset = { feature = 'ss09', value = 1, comment = "Mathematical Alternative Negated Set Symbols" },
- -- todo = { feature = 'ss14', value = 1, comment = "" },
+ negatedset = { feature = 'ss11', value = 1, comment = "Mathematical Alternative Negated Set Symbols" },
+ propfrown = { feature = 'ss12', value = 1, comment = "Mathematical Alternative Proportional and Frown" },
+ negsine = { feature = 'ss13', value = 1, comment = "Mathematical Alternative Negated Sine Wave" },
+ intprod = { feature = 'ss14', value = 1, comment = "Mathematical Alternative Interior Products" },
+ capcup = { feature = 'ss15', value = 1, comment = "Mathematical Alternative Intersection and Union with serif" },
circled = { feature = 'ss16', value = 1, comment = "Mathematical Alternative Circled Operators" },
+ simvar = { feature = 'ss20', value = 1, comment = "Mathematical Alternative Similar and some more unrelated" },
+ -- demo features:
+ negated8774 = {
+ feature = 'ss09',
+ value = 1,
+ comment = "Mathematical Alternative Negated 8774",
+ list = { [8774] = true },
+ },
+ negated8775 = {
+ feature = 'ss09',
+ value = 1,
+ comment = "Mathematical Alternative Negated 8775",
+ list = { [8775] = true },
+ },
},
parameters = {
AccentBaseDepth = 30,
@@ -115,7 +136,9 @@ return {
["0x221A.parts.bottom"] = { location = "left", hfactor = 0.05, vfactor = 1.00 },
}
},
-
+ {
+ tweak = "flattenaccents",
+ },
{
tweak = "fixaccents",
},
diff --git a/tex/context/fonts/mkiv/stixtwo-text.lfg b/tex/context/fonts/mkiv/stixtwo-text.lfg
new file mode 100644
index 000000000..2a3b46a78
--- /dev/null
+++ b/tex/context/fonts/mkiv/stixtwo-text.lfg
@@ -0,0 +1,60 @@
+return {
+ name = "stixtwo-text",
+ version = "1.00",
+ comment = "Goodies that complement stix two.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "STIXTwoText-Regular",
+ "STIXTwoText-Bold",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 50,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["|"] = 100,
+ ["\\"] = 100,
+ ["*"] = 50,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "STIXTwoText-Italic",
+ "STIXTwoText-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 50,
+ ["}"] = 50,
+ ["]"] = 50,
+ ["|"] = 125,
+ ["\\"] = 125,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 100,
+ ["@"] = 100,
+ },
+ ["("] = {
+ ["f"] = 100,
+ },
+ ["{"] = {
+ ["f"] = 100,
+ },
+ ["["] = {
+ ["f"] = 100,
+ },
+ ["|"] = {
+ ["f"] = 130,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkiv/termes-math.lfg b/tex/context/fonts/mkiv/termes-math.lfg
index 364ea8369..504249878 100644
--- a/tex/context/fonts/mkiv/termes-math.lfg
+++ b/tex/context/fonts/mkiv/termes-math.lfg
@@ -81,6 +81,12 @@ return {
tweak = "extendaccents",
},
{
+ tweak = "flattenaccents",
+ },
+ {
+ tweak = "fixaccents",
+ },
+ {
tweak = "radicaldegreeanchors",
list = {
[0x221A] = { location = "left", hfactor = 0.0, vfactor = 0.6 },
@@ -88,9 +94,6 @@ return {
["0x221A.parts.bottom"] = { location = "left", hfactor = 0.05, vfactor = 1.1 },
}
},
- {
- tweak = "fixaccents",
- },
-- First we set the dimensions of the initial accent which started out as zero but we want
-- a proper width.
{
diff --git a/tex/context/fonts/mkiv/texgyre-text.lfg b/tex/context/fonts/mkiv/texgyre-text.lfg
new file mode 100644
index 000000000..947d730cd
--- /dev/null
+++ b/tex/context/fonts/mkiv/texgyre-text.lfg
@@ -0,0 +1,185 @@
+return {
+ name = "texgyre-text",
+ version = "1.00",
+ comment = "Goodies that complement the texgyre fonts.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ -- we have three optional methods for filtering:
+ fonts = {
+ "TeXGyreBonum-Regular",
+ "TeXGyreBonum-Bold",
+ },
+ -- fonts = {
+ -- ["TeXGyreBonum-Regular"] = true,
+ -- },
+ -- fonts = "TeXGyreBonum-*",
+ data = {
+ ["f"] = {
+ [")"] = 100,
+ ["}"] = 100,
+ ["]"] = 100,
+ ["|"] = 100,
+ ["\\"] = 120,
+ ["!"] = 100,
+ ["?"] = 100,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "TeXGyreBonum-Italic",
+ "TeXGyreBonum-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 140,
+ ["}"] = 140,
+ ["]"] = 140,
+ ["|"] = 100,
+ ["\\"] = 150,
+ ["!"] = 100,
+ ["?"] = 100,
+ },
+ ["("] = {
+ ["f"] = 190,
+ },
+ ["{"] = {
+ ["f"] = 190,
+ },
+ ["["] = {
+ ["f"] = 190,
+ },
+ }
+ },
+ {
+ name = "kern",
+ type = "kern",
+ fonts = {
+ "TeXGyreTermes-Regular",
+ "TeXGyreTermes-Bold",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 75,
+ ["}"] = 75,
+ ["]"] = 75,
+ ["|"] = 75,
+ ["\\"] = 110,
+ ["!"] = 75,
+ ["?"] = 75,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "TeXGyreTermes-Italic",
+ "TeXGyreTermes-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 75,
+ ["}"] = 75,
+ ["]"] = 75,
+ ["|"] = 75,
+ ["\\"] = 200,
+ ["!"] = 75,
+ ["?"] = 75,
+ },
+ ["("] = {
+ ["f"] = 75,
+ },
+ ["{"] = {
+ ["f"] = 75,
+ },
+ ["["] = {
+ ["f"] = 75,
+ },
+ ["|"] = {
+ ["f"] = 150,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "TeXGyrePagella-Italic",
+ "TeXGyrePagella-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 120,
+ ["}"] = 120,
+ ["]"] = 120,
+ ["|"] = 120,
+ ["\\"] = 120,
+ ["!"] = 75,
+ ["?"] = 75,
+ ["*"] = 120,
+ },
+ ["("] = {
+ ["f"] = 120,
+ },
+ ["{"] = {
+ ["f"] = 120,
+ },
+ ["["] = {
+ ["f"] = 120,
+ },
+ ["|"] = {
+ ["f"] = 120,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "TeXGyreSchola-Regular",
+ "TeXGyreSchola-Bold",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 120,
+ ["}"] = 120,
+ ["]"] = 120,
+ -- ["|"] = 50,
+ ["\\"] = 100,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 75,
+ ["@"] = 75,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "TeXGyreSchola-Italic",
+ "TeXGyreSchola-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 120,
+ ["}"] = 120,
+ ["]"] = 120,
+ ["|"] = 120,
+ ["\\"] = 120,
+ ["!"] = 75,
+ ["?"] = 75,
+ ["*"] = 120,
+ ["@"] = 75,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkiv/type-imp-dejavu.mkiv b/tex/context/fonts/mkiv/type-imp-dejavu.mkiv
index 49b788a73..70fc8ae8d 100644
--- a/tex/context/fonts/mkiv/type-imp-dejavu.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-dejavu.mkiv
@@ -16,16 +16,16 @@
\definefontfeature[dejavu-condensed-mono][extend=.8]
-\starttypescriptcollection[xxdejavu]
+\starttypescriptcollection[dejavu]
\doifunknownfontfeature {dejavu-math-bold} {\definefontfeature[dejavu-math-bold][boldened]}
\starttypescript [\s!serif] [dejavu] [\s!name]
\setups[\s!font:\s!fallback:\s!serif]
- \definefontsynonym [\s!Serif] [\s!name:dejavuserif] [\s!features=\s!default,\s!fallbacks=\s!Serif]
- \definefontsynonym [\s!SerifBold] [\s!name:dejavuserifbold] [\s!features=\s!default,\s!fallbacks=\s!SerifBold]
- \definefontsynonym [\s!SerifItalic] [\s!name:dejavuserifitalic] [\s!features=\s!default,\s!fallbacks=\s!SerifItalic]
- \definefontsynonym [\s!SerifBoldItalic] [\s!name:dejavuserifbolditalic] [\s!features=\s!default,\s!fallbacks=\s!SerifBoldItalic]
+ \definefontsynonym [\s!Serif] [\s!name:dejavuserif] [\s!features=\s!default,\s!fallbacks=\s!Serif,\s!goodies=dejavu-text]
+ \definefontsynonym [\s!SerifBold] [\s!name:dejavuserifbold] [\s!features=\s!default,\s!fallbacks=\s!SerifBold,\s!goodies=dejavu-text]
+ \definefontsynonym [\s!SerifItalic] [\s!name:dejavuserifitalic] [\s!features=\s!default,\s!fallbacks=\s!SerifItalic,\s!goodies=dejavu-text]
+ \definefontsynonym [\s!SerifBoldItalic] [\s!name:dejavuserifbolditalic] [\s!features=\s!default,\s!fallbacks=\s!SerifBoldItalic,\s!goodies=dejavu-text]
\stoptypescript
\starttypescript [\s!sans] [dejavu] [\s!name]
diff --git a/tex/context/fonts/mkiv/type-imp-ebgaramond.mkiv b/tex/context/fonts/mkiv/type-imp-ebgaramond.mkiv
index 42575a61c..46c73956f 100644
--- a/tex/context/fonts/mkiv/type-imp-ebgaramond.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-ebgaramond.mkiv
@@ -73,10 +73,10 @@
\starttypescript [\s!serif] [ebgaramond]
\setups[font:fallback:serif]
- \definefontsynonym [\s!Serif] [\s!file:ebgaramond-regular] [\s!features=eb-garamond-normal]
- \definefontsynonym [\s!SerifItalic] [\s!file:ebgaramond-italic] [\s!features=eb-garamond-normal]
- \definefontsynonym [\s!SerifBold] [\s!file:ebgaramond-bold] [\s!features=eb-garamond-normal]
- \definefontsynonym [\s!SerifBoldItalic][\s!file:ebgaramond-bolditalic][\s!features=eb-garamond-normal]
+ \definefontsynonym [\s!Serif] [\s!file:ebgaramond-regular] [\s!features=eb-garamond-normal,\s!goodies=ebgaramond-text]
+ \definefontsynonym [\s!SerifItalic] [\s!file:ebgaramond-italic] [\s!features=eb-garamond-normal,\s!goodies=ebgaramond-text]
+ \definefontsynonym [\s!SerifBold] [\s!file:ebgaramond-bold] [\s!features=eb-garamond-normal,\s!goodies=ebgaramond-text]
+ \definefontsynonym [\s!SerifBoldItalic][\s!file:ebgaramond-bolditalic][\s!features=eb-garamond-normal,\s!goodies=ebgaramond-text]
\definefontsynonym [\s!SerifCaps] [\s!Serif] [\s!features=eb-garamond-smallcaps]
\stoptypescript
diff --git a/tex/context/fonts/mkiv/type-imp-erewhon.mkiv b/tex/context/fonts/mkiv/type-imp-erewhon.mkiv
index c536caa0e..660b4c58a 100644
--- a/tex/context/fonts/mkiv/type-imp-erewhon.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-erewhon.mkiv
@@ -23,11 +23,11 @@
\doifunknownfontfeature {erewhon-math-bold} {\definefontfeature[erewhon-math-bold][boldened]}
\starttypescript [\s!serif] [erewhon]
- \definefontsynonym [\s!Serif] [\s!file:Erewhon-Regular] [\s!features=\s!default]
- \definefontsynonym [\s!SerifItalic] [\s!file:Erewhon-Italic] [\s!features=\s!default]
+ \definefontsynonym [\s!Serif] [\s!file:Erewhon-Regular] [\s!features=\s!default,\s!goodies=erewhon-text]
+ \definefontsynonym [\s!SerifItalic] [\s!file:Erewhon-Italic] [\s!features=\s!default,\s!goodies=erewhon-text]
\definefontsynonym [\s!SerifSlanted] [\s!file:Erewhon-RegularSlanted][\s!features=\s!default]
- \definefontsynonym [\s!SerifBold] [\s!file:Erewhon-Bold] [\s!features=\s!default]
- \definefontsynonym [\s!SerifBoldItalic] [\s!file:Erewhon-BoldItalic] [\s!features=\s!default]
+ \definefontsynonym [\s!SerifBold] [\s!file:Erewhon-Bold] [\s!features=\s!default,\s!goodies=erewhon-text]
+ \definefontsynonym [\s!SerifBoldItalic] [\s!file:Erewhon-BoldItalic] [\s!features=\s!default,\s!goodies=erewhon-text]
\definefontsynonym [\s!SerifBoldSlanted][\s!file:Erewhon-BoldSlanted] [\s!features=\s!default]
\stoptypescript
diff --git a/tex/context/fonts/mkiv/type-imp-kpfonts.mkiv b/tex/context/fonts/mkiv/type-imp-kpfonts.mkiv
index c8e92d20b..bc7de3ae7 100644
--- a/tex/context/fonts/mkiv/type-imp-kpfonts.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-kpfonts.mkiv
@@ -34,10 +34,10 @@
\stoptypescript
\starttypescript [\s!serif] [kpfonts,kpfonts-sans,kpfonts-nt]
- \definefontsynonym [\s!Serif] [\s!file:KpRoman-Regular.otf]
- \definefontsynonym [\s!SerifBold] [\s!file:KpRoman-SemiBold.otf]
- \definefontsynonym [\s!SerifItalic] [\s!file:KpRoman-Italic.otf]
- \definefontsynonym [\s!SerifBoldItalic] [\s!file:KpRoman-SemiboldItalic.otf]
+ \definefontsynonym [\s!Serif] [\s!file:KpRoman-Regular.otf][\s!goodies=kpfonts-text]
+ \definefontsynonym [\s!SerifBold] [\s!file:KpRoman-SemiBold.otf][\s!goodies=kpfonts-text]
+ \definefontsynonym [\s!SerifItalic] [\s!file:KpRoman-Italic.otf][\s!goodies=kpfonts-text]
+ \definefontsynonym [\s!SerifBoldItalic] [\s!file:KpRoman-SemiboldItalic.otf][\s!goodies=kpfonts-text]
\definefontsynonym [\s!SerifSlanted] [\s!SerifItalic]
\definefontsynonym [\s!SerifBoldSlanted] [\s!SerifBoldItalic]
\stoptypescript
diff --git a/tex/context/fonts/mkiv/type-imp-latinmodern.mkiv b/tex/context/fonts/mkiv/type-imp-latinmodern.mkiv
index f5082f784..a995bc42f 100644
--- a/tex/context/fonts/mkiv/type-imp-latinmodern.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-latinmodern.mkiv
@@ -121,12 +121,12 @@
\starttypescript [\s!serif] [modern,latin-modern]
\loadfontgoodies[lm]
- \definefontsynonym [LMRoman-Regular] [\s!file:lmroman10-regular] [\s!features=\s!default]
- \definefontsynonym [LMRoman-Bold] [\s!file:lmroman10-bold] [\s!features=\s!default]
+ \definefontsynonym [LMRoman-Regular] [\s!file:lmroman10-regular] [\s!features=\s!default,\s!goodies=modern-text]
+ \definefontsynonym [LMRoman-Bold] [\s!file:lmroman10-bold] [\s!features=\s!default,\s!goodies=modern-text]
\definefontsynonym [LMRoman-Demi] [\s!file:lmromandemi10-regular] [\s!features=\s!default]
- \definefontsynonym [LMRoman-Italic] [\s!file:lmroman10-italic] [\s!features=\s!default]
+ \definefontsynonym [LMRoman-Italic] [\s!file:lmroman10-italic] [\s!features=\s!default,\s!goodies=modern-text]
\definefontsynonym [LMRoman-Oblique] [\s!file:lmromanslant10-regular] [\s!features=\s!default]
- \definefontsynonym [LMRoman-BoldItalic] [\s!file:lmroman10-bolditalic] [\s!features=\s!default]
+ \definefontsynonym [LMRoman-BoldItalic] [\s!file:lmroman10-bolditalic] [\s!features=\s!default,\s!goodies=modern-text]
\definefontsynonym [LMRoman-BoldOblique] [\s!file:lmromanslant10-bold] [\s!features=\s!default]
\definefontsynonym [LMRoman-DemiOblique] [\s!file:lmromandemi10-oblique] [\s!features=\s!default]
\definefontsynonym [LMRoman-CapsRegular] [\s!file:lmroman10-CapsRegular] [\s!features=\s!default]
diff --git a/tex/context/fonts/mkiv/type-imp-libertinus.mkiv b/tex/context/fonts/mkiv/type-imp-libertinus.mkiv
index 97e3b3493..36d2666f7 100644
--- a/tex/context/fonts/mkiv/type-imp-libertinus.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-libertinus.mkiv
@@ -24,11 +24,11 @@
\doifunknownfontfeature {libertinus-math-bold} {\definefontfeature[libertinus-math-bold][boldened]}
\starttypescript [\s!serif] [libertinus]
- \definefontsynonym [LibertinusSerif-Regular] [\s!file:libertinusserif-regular]
- \definefontsynonym [LibertinusSerif-Italic] [\s!file:libertinusserif-italic]
+ \definefontsynonym [LibertinusSerif-Regular] [\s!file:libertinusserif-regular][\s!goodies=libertinus-text]
+ \definefontsynonym [LibertinusSerif-Italic] [\s!file:libertinusserif-italic][\s!goodies=libertinus-text]
\definefontsynonym [LibertinusSerif-Slanted] [\s!file:libertinusserif-italic]
- \definefontsynonym [LibertinusSerif-Bold] [\s!file:libertinusserif-bold]
- \definefontsynonym [LibertinusSerif-BoldItalic] [\s!file:libertinusserif-bolditalic]
+ \definefontsynonym [LibertinusSerif-Bold] [\s!file:libertinusserif-bold][\s!goodies=libertinus-text]
+ \definefontsynonym [LibertinusSerif-BoldItalic] [\s!file:libertinusserif-bolditalic][\s!goodies=libertinus-text]
\definefontsynonym [LibertinusSerif-BoldSlanted] [\s!file:libertinusserif-bolditalic]
\stoptypescript
diff --git a/tex/context/fonts/mkiv/type-imp-lucida.mkiv b/tex/context/fonts/mkiv/type-imp-lucida.mkiv
index 186854efc..44230b55d 100644
--- a/tex/context/fonts/mkiv/type-imp-lucida.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-lucida.mkiv
@@ -35,10 +35,10 @@
\stoptypescript
\starttypescript [\s!serif] [lucida,lucidaot,lucidadk,lucidaot-nt,lucida-nt]
- \definefontsynonym [\s!Serif] [\s!file:LucidaBrightOT.otf]
- \definefontsynonym [\s!SerifBold] [\s!file:LucidaBrightOT-Demi.otf]
- \definefontsynonym [\s!SerifItalic] [\s!file:LucidaBrightOT-Italic.otf]
- \definefontsynonym [\s!SerifBoldItalic] [\s!file:LucidaBrightOT-DemiItalic.otf]
+ \definefontsynonym [\s!Serif] [\s!file:LucidaBrightOT.otf][\s!goodies=lucida-text]
+ \definefontsynonym [\s!SerifBold] [\s!file:LucidaBrightOT-Demi.otf][\s!goodies=lucida-text]
+ \definefontsynonym [\s!SerifItalic] [\s!file:LucidaBrightOT-Italic.otf][\s!goodies=lucida-text]
+ \definefontsynonym [\s!SerifBoldItalic] [\s!file:LucidaBrightOT-DemiItalic.otf][\s!goodies=lucida-text]
\definefontsynonym [\s!SerifSlanted] [\s!SerifItalic]
\definefontsynonym [\s!SerifBoldSlanted] [\s!SerifBoldItalic]
\stoptypescript
diff --git a/tex/context/fonts/mkiv/type-imp-newcomputermodern.mkiv b/tex/context/fonts/mkiv/type-imp-newcomputermodern.mkiv
index 65a84ec5f..b6bb26c76 100644
--- a/tex/context/fonts/mkiv/type-imp-newcomputermodern.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-newcomputermodern.mkiv
@@ -25,10 +25,10 @@
\starttypescript [\s!serif] [newcomputermodern] [\s!name]
\setups[\s!font:\s!fallback:\s!serif]
- \definefontsynonym [\s!Serif] [\s!file:newcm10-regular.otf] [\s!features=\s!default,\s!fallbacks=\s!Serif]
- \definefontsynonym [\s!SerifBold] [\s!file:newcm10-bold.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifBold]
- \definefontsynonym [\s!SerifItalic] [\s!file:newcm10-italic.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifItalic]
- \definefontsynonym [\s!SerifBoldItalic] [\s!file:newcm10-bolditalic.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifBoldItalic]
+ \definefontsynonym [\s!Serif] [\s!file:newcm10-regular.otf] [\s!features=\s!default,\s!fallbacks=\s!Serif,\s!goodies=newcomputermodern-text]
+ \definefontsynonym [\s!SerifBold] [\s!file:newcm10-bold.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifBold,\s!goodies=newcomputermodern-text]
+ \definefontsynonym [\s!SerifItalic] [\s!file:newcm10-italic.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifItalic,\s!goodies=newcomputermodern-text]
+ \definefontsynonym [\s!SerifBoldItalic] [\s!file:newcm10-bolditalic.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifBoldItalic,\s!goodies=newcomputermodern-text]
\stoptypescript
\starttypescript [\s!sans] [newcomputermodern] [\s!name]
@@ -55,10 +55,10 @@
\starttypescript [\s!serif] [newcomputermodern-book] [\s!name]
\setups[\s!font:\s!fallback:\s!serif]
- \definefontsynonym [\s!Serif] [\s!file:newcm10-book.otf] [\s!features=\s!default,\s!fallbacks=\s!Serif]
- \definefontsynonym [\s!SerifBold] [\s!file:newcm10-bold.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifBold]
- \definefontsynonym [\s!SerifItalic] [\s!file:newcm10-bookitalic.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifItalic]
- \definefontsynonym [\s!SerifBoldItalic] [\s!file:newcm10-bolditalic.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifBoldItalic]
+ \definefontsynonym [\s!Serif] [\s!file:newcm10-book.otf] [\s!features=\s!default,\s!fallbacks=\s!Serif,\s!goodies=newcomputermodern-text]
+ \definefontsynonym [\s!SerifBold] [\s!file:newcm10-bold.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifBold,\s!goodies=newcomputermodern-text]
+ \definefontsynonym [\s!SerifItalic] [\s!file:newcm10-bookitalic.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifItalic,\s!goodies=newcomputermodern-text]
+ \definefontsynonym [\s!SerifBoldItalic] [\s!file:newcm10-bolditalic.otf] [\s!features=\s!default,\s!fallbacks=\s!SerifBoldItalic,\s!goodies=newcomputermodern-text]
\stoptypescript
\starttypescript [\s!sans] [newcomputermodern-book] [\s!name]
diff --git a/tex/context/fonts/mkiv/type-imp-stix.mkiv b/tex/context/fonts/mkiv/type-imp-stix.mkiv
index 3ac0b7257..d1bad9a2e 100644
--- a/tex/context/fonts/mkiv/type-imp-stix.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-stix.mkiv
@@ -58,10 +58,10 @@
\starttypescript [\s!serif] [stix,stixtwo,xits] [\s!name]
\setups[\s!font:\s!fallback:\s!serif]
- \definefontsynonym[\s!Serif] [\s!file:stixtwotext-regular.ttf] [\s!features=\s!default]
- \definefontsynonym[\s!SerifBold] [\s!file:stixtwotext-bold.ttf] [\s!features=\s!default]
- \definefontsynonym[\s!SerifItalic] [\s!file:stixtwotext-italic.ttf] [\s!features=\s!default]
- \definefontsynonym[\s!SerifBoldItalic][\s!file:stixtwotext-bolditalic.ttf][\s!features=\s!default]
+ \definefontsynonym[\s!Serif] [\s!file:stixtwotext-regular.ttf] [\s!features=\s!default,\s!goodies=stixtwo-text]
+ \definefontsynonym[\s!SerifBold] [\s!file:stixtwotext-bold.ttf] [\s!features=\s!default,\s!goodies=stixtwo-text]
+ \definefontsynonym[\s!SerifItalic] [\s!file:stixtwotext-italic.ttf] [\s!features=\s!default,\s!goodies=stixtwo-text]
+ \definefontsynonym[\s!SerifBoldItalic][\s!file:stixtwotext-bolditalic.ttf][\s!features=\s!default,\s!goodies=stixtwo-text]
\stoptypescript
\starttypescript[stix,stixtwo,xits,stix-nt,stixtwo-nt]
diff --git a/tex/context/fonts/mkiv/type-imp-texgyre.mkiv b/tex/context/fonts/mkiv/type-imp-texgyre.mkiv
index a3f3952c7..c4f28fcc4 100644
--- a/tex/context/fonts/mkiv/type-imp-texgyre.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-texgyre.mkiv
@@ -67,10 +67,10 @@
\definetypescriptprefix [n:chancery] [TeXGyreChorus]
\starttypescript [\s!serif,\s!sans] [adventor,bonum,bookman,heros,helvetica,pagella,palatino,schola,schoolbook,termes,times]
- \definefontsynonym [\typescriptprefix{n:\typescripttwo}-Regular] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-regular] [\s!features=\s!default]
- \definefontsynonym [\typescriptprefix{n:\typescripttwo}-Italic] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-italic] [\s!features=\s!default]
- \definefontsynonym [\typescriptprefix{n:\typescripttwo}-Bold] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-bold] [\s!features=\s!default]
- \definefontsynonym [\typescriptprefix{n:\typescripttwo}-BoldItalic] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-bolditalic] [\s!features=\s!default]
+ \definefontsynonym [\typescriptprefix{n:\typescripttwo}-Regular] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-regular] [\s!features=\s!default,\s!goodies=texgyre-text]
+ \definefontsynonym [\typescriptprefix{n:\typescripttwo}-Italic] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-italic] [\s!features=\s!default,\s!goodies=texgyre-text]
+ \definefontsynonym [\typescriptprefix{n:\typescripttwo}-Bold] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-bold] [\s!features=\s!default,\s!goodies=texgyre-text]
+ \definefontsynonym [\typescriptprefix{n:\typescripttwo}-BoldItalic] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-bolditalic] [\s!features=\s!default,\s!goodies=texgyre-text]
\definefontsynonym [\typescriptprefix{n:\typescripttwo}-Caps] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-regular] [\s!features=\s!smallcaps]
\definefontsynonym [\typescriptprefix{n:\typescripttwo}-ItalicCaps] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-italic] [\s!features=\s!smallcaps]
\definefontsynonym [\typescriptprefix{n:\typescripttwo}-BoldCaps] [\s!file:texgyre\typescriptprefix{f:\typescripttwo}-bold] [\s!features=\s!smallcaps]
diff --git a/tex/context/fonts/mkiv/type-imp-xcharter.mkiv b/tex/context/fonts/mkiv/type-imp-xcharter.mkiv
index 6b6e5fc4e..7d1a88241 100644
--- a/tex/context/fonts/mkiv/type-imp-xcharter.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-xcharter.mkiv
@@ -19,11 +19,11 @@
\doifunknownfontfeature {xcharter-math-bold} {\definefontfeature[xcharter-math-bold][boldened]}
\starttypescript [\s!serif] [xcharter] [\s!name]
- \definefontsynonym [\s!Serif] [\s!file:XCharter-Roman] [\s!features=\s!default]
- \definefontsynonym [\s!SerifItalic] [\s!file:XCharter-Italic] [\s!features=\s!default]
+ \definefontsynonym [\s!Serif] [\s!file:XCharter-Roman] [\s!features=\s!default,\s!goodies=xcharter-text]
+ \definefontsynonym [\s!SerifItalic] [\s!file:XCharter-Italic] [\s!features=\s!default,\s!goodies=xcharter-text]
\definefontsynonym [\s!SerifSlanted] [\s!file:XCharter-Slanted] [\s!features=\s!default]
- \definefontsynonym [\s!SerifBold] [\s!file:XCharter-Bold] [\s!features=\s!default]
- \definefontsynonym [\s!SerifBoldItalic] [\s!file:xcharter-BoldItalic] [\s!features=\s!default]
+ \definefontsynonym [\s!SerifBold] [\s!file:XCharter-Bold] [\s!features=\s!default,\s!goodies=xcharter-text]
+ \definefontsynonym [\s!SerifBoldItalic] [\s!file:xcharter-BoldItalic] [\s!features=\s!default,\s!goodies=xcharter-text]
\definefontsynonym [\s!SerifBoldSlanted][\s!file:XCharter-BoldSlanted][\s!features=\s!default]
\stoptypescript
diff --git a/tex/context/fonts/mkiv/xcharter-math.lfg b/tex/context/fonts/mkiv/xcharter-math.lfg
index 3c349ee88..e2ed3e116 100644
--- a/tex/context/fonts/mkiv/xcharter-math.lfg
+++ b/tex/context/fonts/mkiv/xcharter-math.lfg
@@ -66,6 +66,9 @@ return {
}
},
{
+ tweak = "flattenaccents",
+ },
+ {
tweak = "checkspacing",
},
{
diff --git a/tex/context/fonts/mkiv/xcharter-text.lfg b/tex/context/fonts/mkiv/xcharter-text.lfg
new file mode 100644
index 000000000..a836695fd
--- /dev/null
+++ b/tex/context/fonts/mkiv/xcharter-text.lfg
@@ -0,0 +1,62 @@
+return {
+ name = "xcharter-text",
+ version = "1.00",
+ comment = "Goodies that complement Xcharter.",
+ author = "Mikael Sundqvist & Hans Hagen",
+ copyright = "ConTeXt development team",
+ extensions = {
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "XCharter-Roman",
+ "XCharter-Bold",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 125,
+ ["}"] = 125,
+ ["]"] = 125,
+ -- ["|"] = 100,
+ ["\\"] = 50,
+ ["*"] = 50,
+ ["?"] = 50,
+ ["!"] = 50,
+ ["\\"] = 125,
+ },
+ }
+ },
+ {
+ name = "kern", -- adds to kerns
+ type = "kern",
+ fonts = {
+ "XCharter-Italic",
+ "XCharter-BoldItalic",
+ },
+ data = {
+ ["f"] = {
+ [")"] = 150,
+ ["}"] = 150,
+ ["]"] = 150,
+ ["\\"] = 125,
+ ["!"] = 100,
+ ["?"] = 100,
+ ["*"] = 100,
+ ["@"] = 100,
+ },
+ ["("] = {
+ ["f"] = 100,
+ },
+ ["{"] = {
+ ["f"] = 150,
+ },
+ ["["] = {
+ ["f"] = 100,
+ },
+ ["|"] = {
+ ["f"] = 130,
+ },
+ }
+ },
+ }
+}
diff --git a/tex/context/fonts/mkxl/type-imp-bengali.mkxl b/tex/context/fonts/mkxl/type-imp-bengali.mkxl
new file mode 100644
index 000000000..84a0b6402
--- /dev/null
+++ b/tex/context/fonts/mkxl/type-imp-bengali.mkxl
@@ -0,0 +1,73 @@
+%D \module
+%D [ file=type-imp-bengali,
+%D version=2022.02.02,
+%D title=\CONTEXT\ Typescript Macros,
+%D subtitle=Bengali,
+%D author=śrīrāma (Sreeram),
+%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.
+
+\starttypescriptcollection[bengali]
+
+ \doifunknownfontfeature {bengali-bold-30} {\definefontfeature[bengali-bold-30][boldened-30]}
+
+ % Symbolic names for fonts:
+
+ \starttypescript [\s!serif] [murty-bangla]
+ \definefontsynonym [MurtyBengali-Regular] [\s!name:murtybanglaregular] [\s!features=bengali-two]
+ \definefontsynonym [MurtyBengali-Bold] [\s!name:murtybanglaregular] [\s!features={bengali-two,bengali-bold-30}]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-da, baloo-da-extrabold]
+ \definefontsynonym [BalooDa2-Regular] [\s!name:balooda2regular] [\s!features=bengali-two]
+ \definefontsynonym [BalooDa2-Medium] [\s!name:balooda2medium] [\s!features=bengali-two]
+ \definefontsynonym [BalooDa2-Semibold] [\s!name:balooda2semibold] [\s!features=bengali-two]
+ \definefontsynonym [BalooDa2-Bold] [\s!name:balooda2bold] [\s!features=bengali-two]
+ \definefontsynonym [BalooDa2-Extrabold] [\s!name:balooda2extrabold] [\s!features=bengali-two]
+ \stoptypescript
+
+ % Grouping of styles:
+
+ \starttypescript [\s!sans] [baloo-da] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Sans] [BalooDa2-Regular]
+ \definefontsynonym [\s!SansSlanted] [BalooDa2-Medium]
+ \definefontsynonym [\s!SansBold] [BalooDa2-Bold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooDa2-Semibold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-da-extrabold] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Sans] [BalooDa2-Medium]
+ \definefontsynonym [\s!SansSlanted] [BalooDa2-Semibold]
+ \definefontsynonym [\s!SansBold] [BalooDa2-Extrabold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooDa2-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [murty-bangla] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Serif] [MurtyBengali-Regular]
+ \definefontsynonym [\s!SerifBold] [MurtyBengali-Bold]
+ \stoptypescript
+
+ % Typefaces:
+
+ \starttypescript [baloo-da, baloo-da-extrabold]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [\typescriptone] [\s!default] [\s!rscale=1.1]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [murty-bangla]
+ \definetypeface [murty-bangla] [\s!rm] [\s!serif] [murty-bangla] [\s!default] [\s!rscale=1.1]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+\stoptypescriptcollection
diff --git a/tex/context/fonts/mkxl/type-imp-braille.mkxl b/tex/context/fonts/mkxl/type-imp-braille.mkxl
new file mode 100644
index 000000000..17209d50c
--- /dev/null
+++ b/tex/context/fonts/mkxl/type-imp-braille.mkxl
@@ -0,0 +1,88 @@
+%D \module
+%D [ file=type-imp-vraille,
+%D version=2021.11.17,
+%D title=\CONTEXT\ Typescript Macros,
+%D subtitle=Braille (using Dejavu 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.
+
+\continuewhenlmtxmode
+
+%D There is no need to waste money on a commercial braille font if we have dejavu. After
+%D all it's just dots. We also don't need features.
+
+\registerctxluafile{font-imp-braille}{autosuffix}
+
+% todo : not fallback, just replace directly .. special case anyway .. now inefficient and slow
+
+\starttypescriptcollection[braille]
+
+ \doifunknownfontfeature {dejavu-math-bold} {\definefontfeature[dejavu-math-bold][boldened]}
+
+ \definefontfeature[brailletext] [braille=text] % no ligatures, no kerning etc
+ \definefontfeature[braillemath] [braille=math] % no ligatures, no kerning etc
+ \definefontfeature[serifbraille] [features=none] % no ligatures, no kerning etc
+ \definefontfeature[sansbraille] [features=none] % no ligatures, no kerning etc
+ \definefontfeature[monobraille] [features=none] % no ligatures, no kerning etc
+ \definefontfeature[mathbraille] [features=none] % [compactmath=yes] % no ssty so compact anyway
+
+ % Maybe some day sans and mono will also have braille but it doesn't really matter because we
+ % don't really need sans and for mono we only need the fixed spacing.
+
+ \definefontfallback[BrailleMono] [\s!name:dejavuserif*brailletext][0x0000-0x1FFFF][force=yes]
+ \definefontfallback[BrailleSerif][\s!name:dejavuserif*brailletext][0x0000-0x1FFFF][force=yes]
+ \definefontfallback[BrailleSans] [\s!name:dejavuserif*brailletext][0x0000-0x1FFFF][force=yes]
+ %\definefontfallback[BrailleMath] [\s!name:dejavuserif*braillemath][0x0000-0x1FFFF][force=yes]
+
+ \definefontfallback[BrailleMonoBold] [\s!name:dejavuserifbold*brailletext][0x0000-0x1FFFF][force=yes]
+ \definefontfallback[BrailleSerifBold][\s!name:dejavuserifbold*brailletext][0x0000-0x1FFFF][force=yes]
+ \definefontfallback[BrailleSansBold] [\s!name:dejavuserifbold*brailletext][0x0000-0x1FFFF][force=yes]
+
+ \starttypescript [\s!serif] [braille] [\s!name]
+ \definefontsynonym [\s!Serif] [\s!name:dejavuserif] [\s!features=serifbraille,\s!fallbacks=BrailleSerif]
+ \definefontsynonym [\s!SerifBold] [\s!name:dejavuserifbold][\s!features=serifbraille,\s!fallbacks=BrailleSerifBold]
+ \definefontsynonym [\s!SerifItalic] [\s!Serif]
+ \definefontsynonym [\s!SerifBoldItalic] [\s!SerifBold]
+ \definefontsynonym [\s!SerifSlanted] [\s!Serif]
+ \definefontsynonym [\s!SerifBoldSlanted][\s!SerifBold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [braille] [\s!name]
+ \definefontsynonym [\s!Sans] [\s!name:dejavusans] [\s!features=sansbraille,\s!fallbacks=BrailleSans]
+ \definefontsynonym [\s!SansBold] [\s!name:dejavusansbold][\s!features=sansbraille,\s!fallbacks=BrailleSansBold]
+ \definefontsynonym [\s!SansItalic] [\s!Sans]
+ \definefontsynonym [\s!SansBoldItalic] [\s!SansBold]
+ \definefontsynonym [\s!SansSlanted] [\s!Sans]
+ \definefontsynonym [\s!SansBoldSlanted][\s!SansBold]
+ \stoptypescript
+
+ \starttypescript [\s!mono] [braille] [\s!name]
+ \definefontsynonym [\s!Mono] [\s!name:dejavusansmono] [\s!features=monobraille,\s!fallbacks=BrailleMono]
+ \definefontsynonym [\s!MonoBold] [\s!name:dejavusansmonobold][\s!features=monobraille,\s!fallbacks=BrailleMonoBold]
+ \definefontsynonym [\s!MonoItalic] [\s!Mono]
+ \definefontsynonym [\s!MonoBoldItalic] [\s!MonoBold]
+ \definefontsynonym [\s!MonoSlanted] [\s!Mono]
+ \definefontsynonym [\s!MonoBoldSlanted][\s!MonoBold]
+ \stoptypescript
+
+ \starttypescript [\s!math][braille] [\s!name]
+ \loadfontgoodies[dejavu-math]
+ %\definefontsynonym[\s!MathRoman] [\s!file:texgyredejavu-math][\s!features={mathbraille,\s!math\mathsizesuffix},\s!fallbacks=BrailleMath]
+ %\definefontsynonym[\s!MathRomanBold][\s!file:texgyredejavu-math][\s!features={mathbraille,\s!math\mathsizesuffix,dejavu-math-bold},\s!fallbacks=BrailleMath]
+ \definefontsynonym[\s!MathRoman] [\s!file:texgyredejavu-math][\s!features={braillemath,\s!math\mathsizesuffix},\s!goodies=dejavu-math]
+ \definefontsynonym[\s!MathRomanBold][\s!file:texgyredejavu-math][\s!features={braillemath,\s!math\mathsizesuffix,dejavu-math-bold},\s!goodies=dejavu-math]
+ \stoptypescript
+
+ \starttypescript[braille]
+ \definetypeface [braille] [\s!rm] [\s!serif] [braille] [\s!default]
+ \definetypeface [braille] [\s!ss] [\s!sans] [braille] [\s!default]
+ \definetypeface [braille] [\s!tt] [\s!mono] [braille] [\s!default]
+ \definetypeface [braille] [\s!mm] [\s!math] [braille] [\s!default]
+ \stoptypescript
+
+\stoptypescriptcollection
diff --git a/tex/context/fonts/mkxl/type-imp-devanagari.mkxl b/tex/context/fonts/mkxl/type-imp-devanagari.mkxl
new file mode 100644
index 000000000..4fb082094
--- /dev/null
+++ b/tex/context/fonts/mkxl/type-imp-devanagari.mkxl
@@ -0,0 +1,244 @@
+%D \module
+%D [ file=type-imp-devanagari,
+%D version=2022.02.02,
+%D title=\CONTEXT\ Typescript Macros,
+%D subtitle=Devanagari,
+%D author=śrīrāma (Sreeram),
+%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 collection uses rscaling so that the fonts can be used alongside.
+
+\starttypescriptcollection[devanagari]
+
+ \definefontfeature
+ [shobhikafeatures]
+ [devanagari-two]
+ [goodies=shobhika.lfg,
+ indic={movematra=auto,conjuncts=quit},
+ sanitizer=dev2rkrf]
+
+ \definefontfeature
+ [baloofeatures]
+ [shobhikafeatures]
+
+ \definefontfeature
+ [amitafeatures]
+ [devanagari-two]
+ [goodies=shobhika.lfg,
+ sanitizer=dev2rkrf]
+
+ \definefontfeature
+ [jainifeatures]
+ [shobhikafeatures]
+ [\s!ss01=yes,ss05=yes]
+
+ \definefontfeature
+ [adishilafeatures]
+ [devanagari-one]
+ [indic={movematra=auto,conjuncts=quit}]
+
+ % Symbolic names for fonts:
+
+ \starttypescript [\s!serif] [adishila]
+ \definefontsynonym [Adishila-Regular] [\s!name:adishilaregular] [\s!features=adishilafeatures]
+ \definefontsynonym [Adishila-Bold] [\s!name:adishilabold] [\s!features=adishilafeatures]
+ \definefontsynonym [Adishila-Italic] [\s!name:adishilaitalic] [\s!features=adishilafeatures]
+ \definefontsynonym [Adishila-BoldItalic] [\s!name:adishilabolditalic] [\s!features=adishilafeatures]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-semibold]
+ \definefontsynonym [AdishilaSemibold-Regular] [\s!name:adishilasemiboldregular] [\s!features=adishilafeatures]
+ \definefontsynonym [AdishilaSemibold-Italic] [\s!name:adishilasemibolditalic] [\s!features=adishilafeatures]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-heavy]
+ \definefontsynonym [AdishilaHeavy-Regular] [\s!name:adishilaheavyregular] [\s!features=adishilafeatures]
+ \definefontsynonym [AdishilaHeavy-Italic] [\s!name:adishilaheavyitalic] [\s!features=adishilafeatures]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-dev]
+ \definefontsynonym [AdishilaDev-Regular] [\s!name:adishiladevregular] [\s!features=adishilafeatures]
+ \definefontsynonym [AdishilaDev-Bold] [\s!name:adishiladevbold] [\s!features=adishilafeatures]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-dev-guru]
+ \definefontsynonym [AdishilaDev-Guru] [\s!name:adishiladevguru] [\s!features=adishilafeatures]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-san]
+ \definefontsynonym [AdishilaSan-Regular] [\s!name:adishilasanregular] [\s!features=adishilafeatures]
+ \definefontsynonym [AdishilaSan-Bold] [\s!name:adishilasanbold] [\s!features=adishilafeatures]
+ \definefontsynonym [AdishilaSan-Italic] [\s!name:adishilasanitalic] [\s!features=adishilafeatures]
+ \definefontsynonym [AdishilaSan-BoldItalic] [\s!name:adishilasanbolditalic] [\s!features=adishilafeatures]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-san-letterpress]
+ \definefontsynonym [AdishilaSanLetterpress-Regular] [\s!name:adishilasanletterpressregular] [\s!features=adishilafeatures]
+ \definefontsynonym [AdishilaSanLetterpress-Bold] [\s!name:adishilasanletterpressbold] [\s!features=adishilafeatures]
+ \definefontsynonym [AdishilaSanLetterpress-Italic] [\s!name:adishilasanletterpressitalic] [\s!features=adishilafeatures]
+ \definefontsynonym [AdishilaSanLetterpress-BoldItalic] [\s!name:adishilasanletterpressbolditalic] [\s!features=adishilafeatures]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [shobhika]
+ \definefontsynonym [Shobhika-Regular] [\s!name:shobhikaregular] [\s!features=shobhikafeatures]
+ \definefontsynonym [Shobhika-Bold] [\s!name:shobhikabold] [\s!features=shobhikafeatures]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo,baloo-extrabold]
+ \definefontsynonym [Baloo2-Regular] [\s!name:baloo2regular] [\s!features=baloofeatures]
+ \definefontsynonym [Baloo2-Medium] [\s!name:baloo2medium] [\s!features=baloofeatures]
+ \definefontsynonym [Baloo2-Semibold] [\s!name:baloo2semibold] [\s!features=baloofeatures]
+ \definefontsynonym [Baloo2-Bold] [\s!name:baloo2bold] [\s!features=baloofeatures]
+ \definefontsynonym [Baloo2-Extrabold] [\s!name:baloo2extrabold] [\s!features=baloofeatures]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [jaini]
+ \definefontsynonym [Jaini-Regular] [\s!name:jainiregular] [\s!features=jainifeatures]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [jaini-purva]
+ \definefontsynonym [JainiPurva-Regular] [\s!name:jainipurvaregular] [\s!features=jainifeatures]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [amita]
+ \definefontsynonym [Amita-Regular] [\s!name:amitaregular] [\s!features=amitafeatures]
+ \definefontsynonym [Amita-Bold] [\s!name:amitabold] [\s!features=amitafeatures]
+ \stoptypescript
+
+ % Grouping of styles:
+
+ \starttypescript [\s!serif] [adishila] [\s!name]
+ \definefontsynonym [\s!Serif] [Adishila-Regular]
+ \definefontsynonym [\s!SerifBold] [Adishila-Bold]
+ \definefontsynonym [\s!SerifItalic] [Adishila-Italic]
+ \definefontsynonym [\s!SerifBoldItalic] [Adishila-BoldItalic]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-semibold] [\s!name]
+ \definefontsynonym [\s!Serif] [AdishilaSemibold-Regular]
+ \definefontsynonym [\s!SerifItalic] [AdishilaSemibold-Italic]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-heavy] [\s!name]
+ \definefontsynonym [\s!Serif] [AdishilaHeavy-Regular]
+ \definefontsynonym [\s!SerifItalic] [AdishilaHeavy-Italic]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-dev] [\s!name]
+ \definefontsynonym [\s!Serif] [AdishilaDev-Regular]
+ \definefontsynonym [\s!SerifBold] [AdishilaDev-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-dev-guru] [\s!name]
+ \definefontsynonym [\s!Serif] [AdishilaDev-Guru]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-san] [\s!name]
+ \definefontsynonym [\s!Serif] [AdishilaSan-Regular]
+ \definefontsynonym [\s!SerifBold] [AdishilaSan-Bold]
+ \definefontsynonym [\s!SerifItalic] [AdishilaSan-Italic]
+ \definefontsynonym [\s!SerifBoldItalic] [AdishilaSan-BoldItalic]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [adishila-san-letterpress] [\s!name]
+ \definefontsynonym [\s!Serif] [AdishilaSanLetterpress-Regular]
+ \definefontsynonym [\s!SerifBold] [AdishilaSanLetterpress-Bold]
+ \definefontsynonym [\s!SerifItalic] [AdishilaSanLetterpress-Italic]
+ \definefontsynonym [\s!SerifBoldItalic] [AdishilaSanLetterpress-BoldItalic]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [shobhika] [\s!name]
+ \definefontsynonym [\s!Serif] [Shobhika-Regular]
+ \definefontsynonym [\s!SerifBold] [Shobhika-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo] [\s!name]
+ \definefontsynonym [\s!Sans] [Baloo2-Regular]
+ \definefontsynonym [\s!SansBold] [Baloo2-Bold]
+ \definefontsynonym [\s!SansItalic] [Baloo2-Medium]
+ \definefontsynonym [\s!SansBoldItalic] [Baloo2-Semibold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-extrabold] [\s!name]
+ \definefontsynonym [\s!Sans] [Baloo2-Medium]
+ \definefontsynonym [\s!SansItalic] [Baloo2-Semibold]
+ \definefontsynonym [\s!SansBoldItalic] [Baloo2-Bold]
+ \definefontsynonym [\s!SansBold] [Baloo2-Extrabold]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [jaini] [\s!name]
+ \definefontsynonym [\s!Serif] [Jaini-Regular]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [jaini-purva] [\s!name]
+ \definefontsynonym [\s!Serif] [JainiPurva-Regular]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [amita] [\s!name]
+ \definefontsynonym [\s!Serif] [Amita-Regular]
+ \definefontsynonym [\s!SerifBold] [Amita-Bold]
+ \stoptypescript
+
+ % Typefaces:
+
+ \starttypescript [adishila]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [\typescriptone] [\s!default] [\s!rscale=1.42]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+ \starttypescript [adishila-semibold,adishila-heavy]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [\typescriptone] [\s!default] [\s!rscale=1.46]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [adishila-dev]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [\typescriptone] [\s!default] [\s!rscale=1.65]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [adishila-dev-guru,adishila-san,adishila-san-letterpress]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [\typescriptone] [\s!default] [\s!rscale=1.62]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [shobhika]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [\typescriptone] [\s!default]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [baloo,baloo-extrabold]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [\typescriptone] [\s!default]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [jaini,jaini-purva]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [\typescriptone] [\s!default] [\s!rscale=1.5]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [amita]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [\typescriptone] [\s!default] [\s!rscale=1.2]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+\stoptypescriptcollection
diff --git a/tex/context/fonts/mkxl/type-imp-euler.mkxl b/tex/context/fonts/mkxl/type-imp-euler.mkxl
new file mode 100644
index 000000000..a2e066f6b
--- /dev/null
+++ b/tex/context/fonts/mkxl/type-imp-euler.mkxl
@@ -0,0 +1,71 @@
+%D \module
+%D [ file=type-otf,
+%D version=2007.07.30,
+%D title=\CONTEXT\ Typescript Macros,
+%D subtitle=Euler,
+%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.
+
+% Instead of euler.otf we now use euler-math.otf which is a copy of the version
+% that Daniel Flipo maintains now. We will also make an euler-regular.otf for
+% text usage (which might have slighty different metrics then).
+
+\loadtypescriptfile[texgyre]
+\loadtypescriptfile[dejavu]
+
+\definefontfeature[pagellaovereuler][pagellaovereuler=yes]
+\definefontfeature[euleroverpagella][euleroverpagella=yes]
+
+\starttypescriptcollection[pagella-eulernova]
+
+ \starttypescript [\s!serif] [eulernova] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Serif] [\s!file:euler-math.otf] [\s!features=\s!default]
+ \stoptypescript
+
+ \starttypescript [\s!math] [eulernova] [\s!name]
+ \definefontsynonym [\s!MathRoman] [\s!file:euler-math.otf] [\s!features={\s!math\mathsizesuffix,mathextra},\s!goodies=euler-math]
+ \stoptypescript
+
+ \starttypescript [pagella-eulernova]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [pagella] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default] [\s!rscale=0.9]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [eulernova] [\s!default]
+ \quittypescriptscanning
+ \stoptypescript
+
+ \starttypescript [eulernova]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [eulernova] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default] [\s!rscale=0.9]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [eulernova] [\s!default]
+ \quittypescriptscanning
+ \stoptypescript
+
+ \starttypescript [\s!math] [euleroverpagella] [\s!name]
+ \definefontsynonym [\s!MathRoman] [texgyrepagella-math] [\s!features={\s!math\mathsizesuffix,euleroverpagella,mathextra},\s!fallbacks=euleroverpagella,\s!goodies=pagella-math]
+ \stoptypescript
+
+ \starttypescript [\s!math] [pagellaovereuler] [\s!name]
+ \definefontsynonym [\s!MathRoman] [\s!file:euler-math.otf] [\s!features={\s!math\mathsizesuffix,pagellaovereuler,mathextra},\s!fallbacks=pagellaovereuler,\s!goodies=euler-math]
+ \stoptypescript
+
+ \starttypescript [pagella-with-euler,euleroverpagella]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [pagella] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default] [\s!rscale=0.9]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [euleroverpagella] [\s!default]
+ \quittypescriptscanning
+ \stoptypescript
+
+ \starttypescript [euler-with-pagella,pagellaovereuler]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [eulernova] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default] [\s!rscale=0.9]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [pagellaovereuler] [\s!default]
+ \quittypescriptscanning
+ \stoptypescript
+
+\stoptypescriptcollection
diff --git a/tex/context/fonts/mkxl/type-imp-gujarati.mkxl b/tex/context/fonts/mkxl/type-imp-gujarati.mkxl
new file mode 100644
index 000000000..d7f3f7072
--- /dev/null
+++ b/tex/context/fonts/mkxl/type-imp-gujarati.mkxl
@@ -0,0 +1,77 @@
+%D \module
+%D [ file=type-imp-gujarati,
+%D version=2022.02.02,
+%D title=\CONTEXT\ Typescript Macros,
+%D subtitle=Gujarati,
+%D author=śrīrāma (Sreeram),
+%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.
+
+\starttypescriptcollection[gujarati]
+
+ \definefontfeature
+ [baloobhaifeatures]
+ [gujarati-two]
+ [goodies=bhai.lfg,
+ indic={movematra=auto,conjuncts=quit},
+ sanitizer=gjr2rkrf]
+
+ % Symbolic names for fonts:
+ \starttypescript [\s!serif] [noto-serif-gujarati]
+ \definefontsynonym [NotoSerifGujarati-Regular] [\s!name:notoserifgujaratiregular] [\s!features=baloobhaifeatures]
+ \definefontsynonym [NotoSerifGujarati-Bold] [\s!name:notoserifgujaratibold] [\s!features=baloobhaifeatures]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-bhai, baloo-bhai-extrabold]
+ \definefontsynonym [BalooBhai2-Regular] [\s!name:baloobhai2regular] [\s!features=baloobhaifeatures]
+ \definefontsynonym [BalooBhai2-Medium] [\s!name:baloobhai2medium] [\s!features=baloobhaifeatures]
+ \definefontsynonym [BalooBhai2-Semibold] [\s!name:baloobhai2semibold] [\s!features=baloobhaifeatures]
+ \definefontsynonym [BalooBhai2-Bold] [\s!name:baloobhai2bold] [\s!features=baloobhaifeatures]
+ \definefontsynonym [BalooBhai2-Extrabold] [\s!name:baloobhai2extrabold] [\s!features=baloobhaifeatures]
+ \stoptypescript
+
+ % Grouping of styles:
+
+ \starttypescript [\s!serif] [noto-serif-gujarati] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Serif] [NotoSerifGujarati-Regular]
+ \definefontsynonym [\s!SerifBold] [NotoSerifGujarati-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-bhai] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Sans] [BalooBhai2-Regular]
+ \definefontsynonym [\s!SansSlanted] [BalooBhai2-Medium]
+ \definefontsynonym [\s!SansBold] [BalooBhai2-Bold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooBhai2-Semibold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-bhai-extrabold] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Sans] [BalooBhai2-Medium]
+ \definefontsynonym [\s!SansSlanted] [BalooBhai2-Semibold]
+ \definefontsynonym [\s!SansBold] [BalooBhai2-Extrabold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooBhai2-Bold]
+ \stoptypescript
+
+ % Typefaces:
+
+ \starttypescript [baloo-bhai, baloo-bhai-extrabold]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [\typescriptone] [\s!default] [\s!rscale=1.1]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [noto-serif-gujarati]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [\typescriptone] [\s!default] [\s!rscale=1.1]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+\stoptypescriptcollection
diff --git a/tex/context/fonts/mkxl/type-imp-indic.mkxl b/tex/context/fonts/mkxl/type-imp-indic.mkxl
new file mode 100644
index 000000000..aeda08337
--- /dev/null
+++ b/tex/context/fonts/mkxl/type-imp-indic.mkxl
@@ -0,0 +1,800 @@
+%D \module
+%D [ file=type-imp-indic,
+%D version=2022.02.02,
+%D title=\CONTEXT\ Typescript Macros,
+%D subtitle=A Collection of Indic Fonts,
+%D author=Sreeram & Hans,
+%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 file is a compation to the other indic typescript that evolved out
+%D of a series of experiments with fonts and extensive research by Sreeram
+%D with respect to them either or not supporting level one and level two
+%D features. When there are issues, just ask on the mailing list.
+
+\definefilesynonym [type-imp-adishila.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-adishila-semibold.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-adishila-heavy.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-adishila-dev.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-adishila-dev-guru.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-adishila-san.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-adishila-san-letterpress.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-shobhika.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-baloo-extrabold.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-baloo.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-jaini.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-jaini-purva.mkxl] [type-imp-devanagari.mkxl]
+\definefilesynonym [type-imp-amita.mkxl] [type-imp-devanagari.mkxl]
+
+\definefilesynonym [type-imp-rit-rachana.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-panmana.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-ezhuthu.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-karumbi.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-chilanka.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-anjali-oldlipi.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-dyuthi.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-tn-joy.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-tn-joy-extrabold.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-gayathri.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-gayathri-thin.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-manjari.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-manjari-thin.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-baloo-chettan.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-baloo-chettan-extrabold.mkxl] [type-imp-malayalam.mkxl]
+\definefilesynonym [type-imp-rit-sundar.mkxl] [type-imp-malayalam.mkxl]
+
+\definefilesynonym [type-imp-baloo-tammudu.mkxl] [type-imp-telugu.mkxl]
+\definefilesynonym [type-imp-baloo-tammudu-extrabold.mkxl] [type-imp-telugu.mkxl]
+\definefilesynonym [type-imp-murty-telugu.mkxl] [type-imp-telugu.mkxl]
+
+\definefilesynonym [type-imp-murty-kannada.mkxl] [type-imp-kannada.mkxl]
+
+\definefilesynonym [type-imp-baloo-thambi.mkxl] [type-imp-tamil.mkxl]
+\definefilesynonym [type-imp-baloo-thambi-extrabold.mkxl] [type-imp-tamil.mkxl]
+
+\definefilesynonym [type-imp-baloo-bhai.mkxl] [type-imp-gujarati.mkxl]
+\definefilesynonym [type-imp-baloo-bhai-extrabold.mkxl] [type-imp-gujarati.mkxl]
+\definefilesynonym [type-imp-noto-serif-gujarati.mkxl] [type-imp-gujarati.mkxl]
+
+\definefilesynonym [type-imp-baloo-da.mkxl] [type-imp-bengali.mkxl]
+\definefilesynonym [type-imp-baloo-da-extrabold.mkxl] [type-imp-bengali.mkxl]
+\definefilesynonym [type-imp-murty-bangla.mkxl] [type-imp-bengali.mkxl]
+
+\continueifinputfile{type-imp-indic.mkxl}
+
+% \usetypescriptfile[type-imp-indic]
+
+\usemodule[article-basics]
+
+\setupbodyfont
+ [pagella]
+
+\setuphead
+ [title]
+ [alternative=middle,
+ hidenumber=yes,
+ after={\blank[halfline]},
+ before={\blank[line]},
+ page=no,
+ style=\bfb]
+
+\definedescription
+ [fs]
+ [alternative=left,
+ title=yes,
+ width=3cm,
+ distance=0cm,
+ before=,
+ after=,
+ headstyle={\switchtobodyfont[pagella]}]
+
+\usetransliteration
+ [indic]
+
+\definetransliteration
+ [devatoiast]
+ [color=blue,
+ vector={deva to iast},
+ before=]
+
+\definetransliteration
+ [devatomlym]
+ [vector={deva to mlym}]
+
+\definetransliteration
+ [devatotlgu]
+ [vector={deva to tlgu}]
+
+\definetransliteration
+ [devatoknda]
+ [vector={deva to knda}]
+
+\definetransliteration
+ [devatogujr]
+ [vector={deva to gujr}]
+
+\definetransliteration
+ [devatobngl]
+ [vector={deva to bngl}]
+
+\definebuffer[words]
+\definebuffer[iastbuffer]
+
+\language[sa]
+
+\starttext
+
+\startbuffer[words]
+दंष्ट्रा श्रेयस्करी त्रेता विक्रेता तच्छ्री अङ्कित शृङ्गार क्व्य शार्ङ्ग निरृति
+क्रतुवित्त बर्हिस् प्रेप्सित अङ्घ्रि पङ्क्ति कर्त्तव्य कर्तव्य श्लाघ्यम्
+अवप्लुतम् युङ्क्ष्वा क्षेत्रज्ञ अग्निमीळे चँद्र हर्त्रे श्री आर्द्रं
+\stopbuffer
+
+\startbuffer
+\getbuffer[words]
+\stopbuffer
+
+
+% \startbuffer[iastbuffer]
+% \startdevatoiast[before=\blank,after=\blank]
+% \getbuffer
+% \stopdevatoiast
+% \stopbuffer
+%
+% \getbuffer[iastbuffer]
+
+%
+%
+% Devanagari
+%
+%
+\starttitle[title={Adishila}]
+ \start
+ \switchtobodyfont[adishila]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Italic}
+ {\it\getbuffer}
+ \stopfs
+ \startfs{Bold Italic}
+ {\bi\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Adishila Semibold}]
+ \start
+ \switchtobodyfont[adishila-semibold]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Italic}
+ {\it\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Adishila Heavy}]
+ \start
+ \switchtobodyfont[adishila-heavy]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Italic}
+ {\it\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Adishila Dev}]
+ \start
+ \switchtobodyfont[adishila-dev]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Adishila Dev}]
+ \start
+ \switchtobodyfont[adishila-dev-guru]
+ \startfs{Guru}
+ \getbuffer
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Adishila San}]
+ \start
+ \switchtobodyfont[adishila-san]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Italic}
+ {\it\getbuffer}
+ \stopfs
+ \startfs{Bold Italic}
+ {\bi\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Adishila San Letterpress}]
+ \start
+ \switchtobodyfont[adishila-san-letterpress]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Italic}
+ {\it\getbuffer}
+ \stopfs
+ \startfs{Bold Italic}
+ {\bi\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Shobhika}]
+ \start
+ \switchtobodyfont[shobhika]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Baloo 2 Extra Bold}]
+ \start
+ \switchtobodyfont[baloo-extrabold]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Italic}
+ {\it\getbuffer}
+ \stopfs
+ \startfs{Bold Italic}
+ {\bi\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Baloo 2}]
+ \start
+ \switchtobodyfont[baloo]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Italic}
+ {\it\getbuffer}
+ \stopfs
+ \startfs{Bold Italic}
+ {\bi\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Jaini}]
+ \start
+ \switchtobodyfont[jaini]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Jaini Purva}]
+ \start
+ \switchtobodyfont[jaini-purva]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Amita}]
+ \start
+ \switchtobodyfont[amita]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+%
+%
+% Malayalam
+%
+%
+\startbuffer
+\startdevatomlym
+\getbuffer[words]
+\stopdevatomlym
+\stopbuffer
+
+\starttitle[title={RIT Rachana}]
+ \start
+ \switchtobodyfont[rit-rachana]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Italic}
+ {\it\getbuffer}
+ \stopfs
+ \startfs{Bold Italic}
+ {\bi\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Panmana}]
+ \start
+ \switchtobodyfont[panmana]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Ezhuthu}]
+ \start
+ \switchtobodyfont[ezhuthu]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Slanted}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Bold Slanted}
+ {\bs\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Karumbi}]
+ \start
+ \switchtobodyfont[karumbi]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Chilanka}]
+ \start
+ \switchtobodyfont[chilanka]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Anjali Old Lipi}]
+ \start
+ \switchtobodyfont[anjali-oldlipi]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Dyuthi}]
+ \start
+ \switchtobodyfont[dyuthi]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={TN Joy}]
+ \start
+ \switchtobodyfont[tn-joy]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={TN Joy Extrabold}]
+ \start
+ \switchtobodyfont[tn-joy-extrabold]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Gayathri}]
+ \start
+ \switchtobodyfont[gayathri]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Gayathri Thin}]
+ \start
+ \switchtobodyfont[gayathri-thin]
+ \startfs{Thin (R)}
+ \getbuffer
+ \stopfs
+ \startfs{Bold*}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Manjari}]
+ \start
+ \switchtobodyfont[manjari]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Manjari Thin}]
+ \start
+ \switchtobodyfont[manjari-thin]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Baloo Chettan 2}]
+ \start
+ \switchtobodyfont[baloo-chettan]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Medium \type{\sl}}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Semibold \type{\bs}}
+ {\bs\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Baloo Chettan 2 Extrabold}]
+ \start
+ \switchtobodyfont[baloo-chettan-extrabold]
+ \startfs{Medium \type{\tf}}
+ \getbuffer
+ \stopfs
+ \startfs{Extrabold \type{\bf}}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Semibold \type{\sl}}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Bold \type{\bs}}
+ {\bs\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={RIT Sundar}]
+ \start
+ \switchtobodyfont[rit-sundar]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+%
+%
+% Telugu
+%
+%
+\startbuffer
+\startdevatotlgu
+\getbuffer[words]
+\stopdevatotlgu
+\stopbuffer
+
+\starttitle[title={Baloo Tammudu 2}]
+ \start
+ \switchtobodyfont[baloo-tammudu]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Slanted}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Bold Slanted}
+ {\bs\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Baloo Tammudu 2 Extrabold}]
+ \start
+ \switchtobodyfont[baloo-tammudu-extrabold]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Italic}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Bold Italic}
+ {\bs\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Murty Telugu}]
+ \start
+ \switchtobodyfont[murty-telugu]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Regular}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Regular}
+ {\bf\getbuffer}
+ \stopfs
+ \startfs{Regular}
+ {\bs\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+%
+%
+% Kannada
+%
+%
+\startbuffer
+\startdevatoknda
+\getbuffer[words]
+\stopdevatoknda
+\stopbuffer
+
+\starttitle[title={Murty Kannada}]
+ \start
+ \switchtobodyfont[murty-kannada]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Regular}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+%
+%
+% Tamil
+%
+%
+\start
+\language[ta]
+\startbuffer
+சிற்றமபலம் புயல் காற்று முன்னர் அதே எதெ அதை ஔவையார்
+தொடர்கதை கிழால்லி அழைப்பு வாயிலாக இயற்கை நுழைவாயில்
+இளமை காஞ்சி கச்சி இல்க்கியம் ஸ்ரீ
+\stopbuffer
+
+\starttitle[title={Baloo Thambi 2}]
+ \start
+ \switchtobodyfont[baloo-thambi]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{ஂMedium \type{\sl}}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Semibold \type{\bs}}
+ {\bs\getbuffer}
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Baloo Thambi 2 Extrabold}]
+ \start
+ \switchtobodyfont[baloo-thambi-extrabold]
+ \startfs{Medium}
+ \getbuffer
+ \stopfs
+ \startfs{Semibold \type{\sl}}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Bold \type{\bs}}
+ {\bs\getbuffer}
+ \stopfs
+ \startfs{Extrabold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+\stop
+%
+%
+% Gujarati
+%
+%
+\startbuffer
+\startdevatogujr
+\getbuffer[words]
+\stopdevatogujr
+\stopbuffer
+
+\starttitle[title={Baloo Bhai 2}]
+ \start
+ \switchtobodyfont[baloo-bhai]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{ஂMedium \type{\sl}}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Semibold \type{\bs}}
+ {\bs\getbuffer}
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Baloo Bhai 2 Extrabold}]
+ \start
+ \switchtobodyfont[baloo-bhai-extrabold]
+ \startfs{Medium}
+ \getbuffer
+ \stopfs
+ \startfs{Semibold \type{\sl}}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Bold \type{\bs}}
+ {\bs\getbuffer}
+ \stopfs
+ \startfs{Extrabold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Noto Serif Gujarati}]
+ \start
+ \switchtobodyfont[noto-serif-gujarati]
+ \startfs{Medium}
+ \getbuffer
+ \stopfs
+ \startfs{Extrabold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+%
+%
+% Bengali
+%
+%
+\startbuffer
+\startdevatobngl
+\getbuffer[words]
+\stopdevatobngl
+\stopbuffer
+
+\starttitle[title={Baloo Da 2}]
+ \start
+ \switchtobodyfont[baloo-da]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Medium \type{\sl}}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Semibold \type{\bs}}
+ {\bs\getbuffer}
+ \stopfs
+ \startfs{Bold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Baloo Da 2 Extrabold}]
+ \start
+ \switchtobodyfont[baloo-da-extrabold]
+ \startfs{Medium}
+ \getbuffer
+ \stopfs
+ \startfs{Semibold \type{\sl}}
+ {\sl\getbuffer}
+ \stopfs
+ \startfs{Bold \type{\bs}}
+ {\bs\getbuffer}
+ \stopfs
+ \startfs{Extrabold}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\starttitle[title={Murty Bengali}]
+ \start
+ \switchtobodyfont[murty-bangla]
+ \startfs{Regular}
+ \getbuffer
+ \stopfs
+ \startfs{Regular}
+ {\bf\getbuffer}
+ \stopfs
+ \stop
+\stoptitle
+
+\stoptext
diff --git a/tex/context/fonts/mkxl/type-imp-kannada.mkxl b/tex/context/fonts/mkxl/type-imp-kannada.mkxl
new file mode 100644
index 000000000..4838075b2
--- /dev/null
+++ b/tex/context/fonts/mkxl/type-imp-kannada.mkxl
@@ -0,0 +1,73 @@
+%D \module
+%D [ file=type-imp-kannada,
+%D version=2022.01.27,
+%D title=\CONTEXT\ Typescript Macros,
+%D subtitle=Dekannada,
+%D author=śrīrāma (Sreeram),
+%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.
+
+\starttypescriptcollection[kannada]
+
+ \doifunknownfontfeature {kannada-bold-30} {\definefontfeature[kannada-bold-30][boldened-30]}
+
+ % Symbolic names for fonts:
+
+ \starttypescript [\s!serif] [murty-kannada]
+ \definefontsynonym [MurtyKannada-Regular] [\s!name:murtykannadaregular] [\s!features=kannada-two]
+ \definefontsynonym [MurtyKannada-Bold] [\s!name:murtykannadaregular] [\s!features={kannada-two,kannada-bold-30}]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-tamma, baloo-tamma-extrabold]
+ \definefontsynonym [BalooTamma2-Regular] [\s!name:balootamma2regular] [\s!features=kannada-two]
+ \definefontsynonym [BalooTamma2-Medium] [\s!name:balootamma2medium] [\s!features=kannada-two]
+ \definefontsynonym [BalooTamma2-Semibold] [\s!name:balootamma2semibold] [\s!features=kannada-two]
+ \definefontsynonym [BalooTamma2-Bold] [\s!name:balootamma2bold] [\s!features=kannada-two]
+ \definefontsynonym [BalooTamma2-Extrabold] [\s!name:balootamma2extrabold] [\s!features=kannada-two]
+ \stoptypescript
+
+ % Grouping of styles:
+
+ \starttypescript [\s!sans] [baloo-tamma] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Sans] [BalooTamma2-Regular]
+ \definefontsynonym [\s!SansSlanted] [BalooTamma2-Medium]
+ \definefontsynonym [\s!SansBold] [BalooTamma2-Bold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooTamma2-Semibold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-tamma-extrabold] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Sans] [BalooTamma2-Medium]
+ \definefontsynonym [\s!SansSlanted] [BalooTamma2-Semibold]
+ \definefontsynonym [\s!SansBold] [BalooTamma2-Extrabold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooTamma2-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [murty-kannada] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Serif] [MurtyKannada-Regular]
+ \definefontsynonym [\s!SerifBold] [MurtyKannada-Bold]
+ \stoptypescript
+
+ % Typefaces:
+
+ \starttypescript [baloo-tamma, baloo-tamma-extrabold]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [\typescriptone] [\s!default]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [murty-kannada]
+ \definetypeface [murty-kannada] [\s!rm] [\s!serif] [murty-kannada] [\s!default]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+\stoptypescriptcollection
diff --git a/tex/context/fonts/mkxl/type-imp-malayalam.mkxl b/tex/context/fonts/mkxl/type-imp-malayalam.mkxl
new file mode 100644
index 000000000..67a35d472
--- /dev/null
+++ b/tex/context/fonts/mkxl/type-imp-malayalam.mkxl
@@ -0,0 +1,224 @@
+%D \module
+%D [ file=type-imp-malayam,
+%D version=2022.01.27,
+%D title=\CONTEXT\ Typescript Macros,
+%D subtitle=Demalayalam,
+%D author=śrīrāma (Sreeram),
+%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 collection uses rscaling so that the fonts can be used alongside.
+
+\starttypescriptcollection[malayalam]
+
+ \doifunknownfontfeature {malayalam-bold-30} {\definefontfeature[malayalam-bold-30][boldened-30]}
+
+ % Symbolic names for fonts:
+
+ \starttypescript [\s!serif] [rit-rachana]
+ \definefontsynonym [RITRachana-Regular] [\s!name:ritrachanaregular] [\s!features=malayalam-two]
+ \definefontsynonym [RITRachana-Bold] [\s!name:ritrachanabold] [\s!features=malayalam-two]
+ \definefontsynonym [RITRachana-Italic] [\s!name:ritrachanaitalic] [\s!features=malayalam-two]
+ \definefontsynonym [RITRachana-BoldItalic] [\s!name:ritrachanabolditalic] [\s!features=malayalam-two]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [panmana]
+ \definefontsynonym [Panmana-Regular] [\s!name:panmanaregular] [\s!features=malayalam-two]
+ \definefontsynonym [Panmana-Bold] [\s!name:panmanaregular] [\s!features={malayalam-two,malayalam-bold-30}]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [rit-sundar]
+ \definefontsynonym [RITSundar-Regular] [\s!name:ritsundarbold] [\s!features=malayalam-two]
+ \definefontsynonym [RITSundar-Bold] [\s!name:ritsundarbold] [\s!features={malayalam-two,malayalam-bold-30}]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [tn-joy, tn-joy-extrabold]
+ \definefontsynonym [TNJoy-Regular] [\s!name:tnjoyregular] [\s!features=malayalam-two]
+ \definefontsynonym [TNJoy-Bold] [\s!name:tnjoybold] [\s!features=malayalam-two]
+ \definefontsynonym [TNJoy-Extrabold] [\s!name:tnjoyextrabold] [\s!features=malayalam-two]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [ezhuthu]
+ \definefontsynonym [Ezhuthu-Regular] [\s!name:ezhuthuregular] [\s!features=malayalam-two]
+ \definefontsynonym [Ezhuthu-Bold] [\s!name:ezhuthuregular] [\s!features={malayalam-two,malayalam-bold-30}]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-chettan,baloo-chettan-extrabold]
+ \definefontsynonym [BalooChettan2-Regular] [\s!name:baloochettan2regular] [\s!features=malayalam-two]
+ \definefontsynonym [BalooChettan2-Medium] [\s!name:baloochettan2medium] [\s!features=malayalam-two]
+ \definefontsynonym [BalooChettan2-Semibold] [\s!name:baloochettan2semibold] [\s!features=malayalam-two]
+ \definefontsynonym [BalooChettan2-Bold] [\s!name:baloochettan2bold] [\s!features=malayalam-two]
+ \definefontsynonym [BalooChettan2-Extrabold] [\s!name:baloochettan2extrabold] [\s!features=malayalam-two]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [gayathri, gayathri-thin]
+ \definefontsynonym [Gayathri-Regular] [\s!name:gayathriregular] [\s!features=malayalam-two]
+ \definefontsynonym [Gayathri-Bold] [\s!name:gayathribold] [\s!features=malayalam-two]
+ \definefontsynonym [Gayathri-Thin] [\s!name:gayathrithin] [\s!features=malayalam-two]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [manjari,manjari-thin]
+ \definefontsynonym [Manjari-Regular] [\s!name:manjariregular] [\s!features=malayalam-two]
+ \definefontsynonym [Manjari-Bold] [\s!name:manjaribold] [\s!features=malayalam-two]
+ \definefontsynonym [Manjari-Thin] [\s!name:manjarithin] [\s!features=malayalam-two]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [karumbi]
+ \definefontsynonym [Karumbi-Regular] [\s!name:karumbiregular] [\s!features=malayalam-two]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [chilanka]
+ \definefontsynonym [Chilanka-Regular] [\s!name:chilankaregular] [\s!features=malayalam-two]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [anjali-oldlipi]
+ \definefontsynonym [Anjali-Oldlipi-Regular] [\s!name:anjalioldlipiregular] [\s!features=malayalam-two]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [dyuthi]
+ \definefontsynonym [Dyuthi-Regular] [\s!name:dyuthiregular] [\s!features=malayalam-two]
+ \stoptypescript
+
+ % Grouping of styles:
+
+ \starttypescript [\s!serif] [rit-rachana] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Serif] [RITRachana-Regular]
+ \definefontsynonym [\s!SerifBold] [RITRachana-Bold]
+ \definefontsynonym [\s!SerifItalic] [RITRachana-Italic]
+ \definefontsynonym [\s!SerifBoldItalic] [RITRachana-BoldItalic]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [panmana] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Serif] [Panmana-Regular]
+ \definefontsynonym [\s!SerifBold] [Panmana-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [rit-sundar] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Serif] [RITSundar-Regular]
+ \definefontsynonym [\s!SerifBold] [RITSundar-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [tn-joy] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [TNJoy-Regular]
+ \definefontsynonym [\s!SansBold] [TNJoy-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [tn-joy-extrabold] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [TNJoy-Bold]
+ \definefontsynonym [\s!SansBold] [TNJoy-Extrabold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [ezhuthu] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [Ezhuthu-Regular]
+ \definefontsynonym [\s!SansBold] [Ezhuthu-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [karumbi] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [Karumbi-Regular]
+ \definefontsynonym [\s!SansBold] [Karumbi-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [chilanka] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [Chilanka-Regular]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [anjali-oldlipi] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [Anjali-Oldlipi-Regular]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [dyuthi] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [Dyuthi-Regular]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [gayathri] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [Gayathri-Regular]
+ \definefontsynonym [\s!SansBold] [Gayathri-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [gayathri-thin] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [Gayathri-Thin]
+ \definefontsynonym [\s!SansBold] [Gayathri-Regular]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [manjari] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans ] [Manjari-Regular]
+ \definefontsynonym [\s!SansBold] [Manjari-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [manjari-thin] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [Manjari-Thin]
+ \definefontsynonym [\s!SansBold] [Manjari-Regular]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-chettan] [\s!name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [BalooChettan2-Regular]
+ \definefontsynonym [\s!SansBold] [BalooChettan2-Bold]
+ \definefontsynonym [\s!SansSlanted] [BalooChettan2-Medium]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooChettan2-Semibold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-chettan-extrabold] [name]
+ \setups[\s!font:\s!fallback:\s!sans]
+ \definefontsynonym [\s!Sans] [BalooChettan2-Medium]
+ \definefontsynonym [\s!SansSlanted] [BalooChettan2-Semibold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooChettan2-Bold]
+ \definefontsynonym [\s!SansBold] [BalooChettan2-Extrabold]
+ \stoptypescript
+
+ % Typefaces:
+
+ \starttypescript [rit-rachana,rit-sundar,panmana]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [\typescriptone] [\s!default] [\s!rscale=1.25]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [ezhuthu,karumbi,tn-joy,tn-joy-extrabold]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [\typescriptone] [\s!default] [\s!rscale=1.25]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [chilanka,anjali-oldlipi]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [\typescriptone] [\s!default]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [dyuthi,gayathri,gayathri-thin,manjari,manjari-thin]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [\typescriptone] [\s!default] [\s!rscale=1.1]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [baloo-chettan,baloo-chettan-extrabold]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [baloo-chettan] [\s!default]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+\stoptypescriptcollection
diff --git a/tex/context/fonts/mkxl/type-imp-tamil.mkxl b/tex/context/fonts/mkxl/type-imp-tamil.mkxl
new file mode 100644
index 000000000..90516365e
--- /dev/null
+++ b/tex/context/fonts/mkxl/type-imp-tamil.mkxl
@@ -0,0 +1,53 @@
+%D \module
+%D [ file=type-imp-tamil,
+%D version=2022.02.02,
+%D title=\CONTEXT\ Typescript Macros,
+%D subtitle=Tamil,
+%D author=śrīrāma (Sreeram),
+%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.
+
+\starttypescriptcollection[tamil]
+
+ % Symbolic names for fonts:
+
+ \starttypescript [\s!sans] [baloo-thambi, baloo-thambi-extrabold]
+ \definefontsynonym [BalooThambi2-Regular] [\s!name:baloothambi2regular] [\s!features=tamil-two]
+ \definefontsynonym [BalooThambi2-Medium] [\s!name:baloothambi2medium] [\s!features=tamil-two]
+ \definefontsynonym [BalooThambi2-Semibold] [\s!name:baloothambi2semibold] [\s!features=tamil-two]
+ \definefontsynonym [BalooThambi2-Bold] [\s!name:baloothambi2bold] [\s!features=tamil-two]
+ \definefontsynonym [BalooThambi2-Extrabold] [\s!name:baloothambi2extrabold] [\s!features=tamil-two]
+ \stoptypescript
+
+ % Grouping of styles:
+
+ \starttypescript [\s!sans] [baloo-thambi] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Sans] [BalooThambi2-Regular]
+ \definefontsynonym [\s!SansSlanted] [BalooThambi2-Medium]
+ \definefontsynonym [\s!SansBold] [BalooThambi2-Bold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooThambi2-Semibold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-thambi-extrabold] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Sans] [BalooThambi2-Medium]
+ \definefontsynonym [\s!SansSlanted] [BalooThambi2-Semibold]
+ \definefontsynonym [\s!SansBold] [BalooThambi2-Extrabold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooThambi2-Bold]
+ \stoptypescript
+
+ % Typefaces:
+
+ \starttypescript [baloo-thambi, baloo-thambi-extrabold]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [\typescriptone] [\s!default]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+\stoptypescriptcollection
diff --git a/tex/context/fonts/mkxl/type-imp-telugu.mkxl b/tex/context/fonts/mkxl/type-imp-telugu.mkxl
new file mode 100644
index 000000000..33d07664c
--- /dev/null
+++ b/tex/context/fonts/mkxl/type-imp-telugu.mkxl
@@ -0,0 +1,74 @@
+%D \module
+%D [ file=type-imp-telugu,
+%D version=2022.01.27,
+%D title=\CONTEXT\ Typescript Macros,
+%D subtitle=Telugu,
+%D author=śrīrāma (Sreeram),
+%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.
+
+\starttypescriptcollection[telugu]
+
+ \doifunknownfontfeature {telugu-bold-30} {\definefontfeature[telugu-bold-30][boldened-30]}
+ \doifunknownfontfeature {telugu-slant} {\definefontfeature[telugu-slant][slant=0.25]}
+
+ % Symbolic names for fonts:
+
+ \starttypescript [\s!serif] [murty-telugu]
+ \definefontsynonym [MurtyTelugu-Regular] [\s!name:murtyteluguregular] [\s!features=telugu-two]
+ \definefontsynonym [MurtyTelugu-Bold] [\s!name:murtyteluguregular] [\s!features={telugu-two,telugu-bold-30}]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-tammudu, baloo-tammudu-extrabold]
+ \definefontsynonym [BalooTammudu2-Regular] [\s!name:balootammudu2regular] [\s!features=telugu-two]
+ \definefontsynonym [BalooTammudu2-Medium] [\s!name:balootammudu2medium] [\s!features=telugu-two]
+ \definefontsynonym [BalooTammudu2-Semibold] [\s!name:balootammudu2semibold] [\s!features=telugu-two]
+ \definefontsynonym [BalooTammudu2-Bold] [\s!name:balootammudu2bold] [\s!features=telugu-two]
+ \definefontsynonym [BalooTammudu2-Extrabold] [\s!name:balootammudu2extrabold] [\s!features=telugu-two]
+ \stoptypescript
+
+ % Grouping of styles:
+
+ \starttypescript [\s!sans] [baloo-tammudu] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Sans] [BalooTammudu2-Regular]
+ \definefontsynonym [\s!SansSlanted] [BalooTammudu2-Medium]
+ \definefontsynonym [\s!SansBold] [BalooTammudu2-Bold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooTammudu2-Semibold]
+ \stoptypescript
+
+ \starttypescript [\s!sans] [baloo-tammudu-extrabold] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Sans] [BalooTammudu2-Medium]
+ \definefontsynonym [\s!SansSlanted] [BalooTammudu2-Semibold]
+ \definefontsynonym [\s!SansBold] [BalooTammudu2-Extrabold]
+ \definefontsynonym [\s!SansBoldSlanted] [BalooTammudu2-Bold]
+ \stoptypescript
+
+ \starttypescript [\s!serif] [murty-telugu] [\s!name]
+ \setups[\s!font:\s!fallback:\s!serif]
+ \definefontsynonym [\s!Serif] [MurtyTelugu-Regular]
+ \definefontsynonym [\s!SerifBold] [MurtyTelugu-Bold]
+ \stoptypescript
+
+ % Typefaces:
+
+ \starttypescript [baloo-tammudu, baloo-tammudu-extrabold]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [\typescriptone] [\s!default]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+ \starttypescript [murty-telugu]
+ \definetypeface [\typescriptone] [\s!rm] [\s!serif] [murty-telugu] [\s!default]
+ \definetypeface [\typescriptone] [\s!ss] [\s!sans] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!mm] [\s!math] [dejavu] [\s!default]
+ \definetypeface [\typescriptone] [\s!tt] [\s!mono] [dejavu] [\s!default]
+ \stoptypescript
+
+\stoptypescriptcollection