summaryrefslogtreecommitdiff
path: root/otfl-math-ext.lua
diff options
context:
space:
mode:
Diffstat (limited to 'otfl-math-ext.lua')
-rw-r--r--otfl-math-ext.lua155
1 files changed, 0 insertions, 155 deletions
diff --git a/otfl-math-ext.lua b/otfl-math-ext.lua
deleted file mode 100644
index fd65592..0000000
--- a/otfl-math-ext.lua
+++ /dev/null
@@ -1,155 +0,0 @@
-if not modules then modules = { } end modules ['math-ext'] = {
- version = 1.001,
- comment = "companion to math-ini.mkiv",
- author = "Hans Hagen, PRAGMA-ADE, Hasselt NL",
- copyright = "PRAGMA ADE / ConTeXt Development Team",
- license = "see context related readme files"
-}
-
-local trace_virtual = false trackers.register("math.virtual", function(v) trace_virtual = v end)
-
-mathematics = mathematics or { }
-characters = characters or { }
-
-mathematics.extras = mathematics.extras or { }
-characters.math = characters.math or { }
-
-local chardata = characters.data
-local mathdata = characters.math
-
-function mathematics.extras.add(unicode,t)
- local min, max = mathematics.extrabase, mathematics.privatebase - 1
- if unicode >= min and unicode <= max then
- mathdata[unicode], chardata[unicode] = t, t
- else
- logs.report("math extra","extra U+%04X should be in range U+%04X - U+%04X",unicode,min,max)
- end
-end
-
-function mathematics.extras.copy(tfmdata)
- local math_parameters = tfmdata.math_parameters
- local MathConstants = tfmdata.MathConstants
- if (math_parameters and next(math_parameters)) or (MathConstants and next(MathConstants)) then
- local characters = tfmdata.characters
- for unicode, extradesc in next, mathdata do
- -- always, because in an intermediate step we can have a non math font
- local extrachar = characters[unicode]
- local nextinsize = extradesc.nextinsize
- if nextinsize then
- for i=1,#nextinsize do
- local nextslot = nextinsize[i]
- local nextbase = characters[nextslot]
- if nextbase then
- local nextnext = nextbase and nextbase.next
- if nextnext then
- local nextchar = characters[nextnext]
- if nextchar then
- if trace_virtual then
- logs.report("math extra","extra U+%04X in %s at %s maps on U+%04X (class: %s, name: %s)",unicode,file.basename(tfmdata.fullname),tfmdata.size,nextslot,extradesc.mathclass or "?",extradesc.mathname or "?")
- end
- characters[unicode] = nextchar
- break
- end
- end
- end
- end
- if not characters[unicode] then
- for i=1,#nextinsize do
- local nextbase = characters[nextinsize[i]]
- if nextbase then
- characters[unicode] = nextchar
- break
- end
- end
- end
- end
- end
- else
- -- let's not waste time on non-math
- end
-end
-
-table.insert(fonts.tfm.mathactions,mathematics.extras.copy)
-
--- 0xFE302 -- 0xFE320 for accents
-
-mathematics.extras.add(0xFE302, {
- category="mn",
- description="WIDE MATHEMATICAL HAT",
- direction="nsm",
- linebreak="cm",
- mathclass="accent",
- mathname="widehat",
- mathstretch="h",
- unicodeslot=0xFE302,
- nextinsize={ 0x00302, 0x0005E },
-} )
-
-mathematics.extras.add(0xFE303, {
- category="mn",
- cjkwd="a",
- description="WIDE MATHEMATICAL TILDE",
- direction="nsm",
- linebreak="cm",
- mathclass="accent",
- mathname="widetilde",
- mathstretch="h",
- unicodeslot=0xFE303,
- nextinsize={ 0x00303, 0x0007E },
-} )
-
--- 0xFE321 -- 0xFE340 for missing characters
-
-mathematics.extras.add(0xFE321, {
- category="sm",
- description="MATHEMATICAL SHORT BAR",
--- direction="on",
--- linebreak="nu",
- mathclass="relation",
- mathname="mapstochar",
- unicodeslot=0xFE321,
-} )
-
-mathematics.extras.add(0xFE322, {
- category="sm",
- description="MATHEMATICAL LEFT HOOK",
- mathclass="relation",
- mathname="lhook",
- unicodeslot=0xFE322,
-} )
-
-mathematics.extras.add(0xFE323, {
- category="sm",
- description="MATHEMATICAL RIGHT HOOK",
- mathclass="relation",
- mathname="rhook",
- unicodeslot=0xFE323,
-} )
-
---~ mathematics.extras.add(0xFE304, {
---~ category="sm",
---~ description="TOP AND BOTTOM PARENTHESES",
---~ direction="on",
---~ linebreak="al",
---~ mathclass="doubleaccent",
---~ mathname="doubleparent",
---~ unicodeslot=0xFE304,
---~ accents={ 0x023DC, 0x023DD },
---~ } )
-
---~ mathematics.extras.add(0xFE305, {
---~ category="sm",
---~ description="TOP AND BOTTOM BRACES",
---~ direction="on",
---~ linebreak="al",
---~ mathclass="doubleaccent",
---~ mathname="doublebrace",
---~ unicodeslot=0xFE305,
---~ accents={ 0x023DE, 0x023DF },
---~ } )
-
---~ \Umathchardef\braceld="0 "1 "FF07A
---~ \Umathchardef\bracerd="0 "1 "FF07B
---~ \Umathchardef\bracelu="0 "1 "FF07C
---~ \Umathchardef\braceru="0 "1 "FF07D
-