From c06e4e00885df7a7e679311a36059669caaa1435 Mon Sep 17 00:00:00 2001 From: Marius Date: Sat, 4 Dec 2010 20:40:13 +0200 Subject: beta 2010.12.04 19:31 --- tex/context/base/buff-ver.mkiv | 19 +++++++++++- tex/context/base/cldf-com.lua | 3 ++ tex/context/base/cont-new.tex | 2 +- tex/context/base/context.tex | 2 +- tex/context/base/font-gds.lua | 32 +++++++++++--------- tex/context/base/math-def.mkiv | 2 +- tex/context/base/math-vfu.lua | 47 +++++++++++++++-------------- tex/context/base/tabl-tab.mkiv | 6 ++-- tex/context/fonts/lm-math.lfg | 3 ++ tex/context/fonts/lucida-math.lfg | 5 ++- tex/context/interface/cont-cs.xml | 9 ++++++ tex/context/interface/cont-de.xml | 9 ++++++ tex/context/interface/cont-en.xml | 9 ++++++ tex/context/interface/cont-fr.xml | 9 ++++++ tex/context/interface/cont-it.xml | 9 ++++++ tex/context/interface/cont-nl.xml | 9 ++++++ tex/context/interface/cont-pe.xml | 9 ++++++ tex/context/interface/cont-ro.xml | 9 ++++++ tex/generic/context/luatex-fonts-merged.lua | 2 +- 19 files changed, 149 insertions(+), 46 deletions(-) diff --git a/tex/context/base/buff-ver.mkiv b/tex/context/base/buff-ver.mkiv index f4402eb41..f6847f055 100644 --- a/tex/context/base/buff-ver.mkiv +++ b/tex/context/base/buff-ver.mkiv @@ -269,6 +269,20 @@ %D %D \typebuffer +% beware, the command is supposed to do something like +% \framed and not manipulate content i.e. it gets no +% argument but something b/egrouped instead +% +% so, if we only had left and right it woul dbe: +% +% \def\doleftoftype {\typeparameter\c!left\bgroup} % we need the grouping in order +% \def\dorightoftype{\egroup\typeparameter\c!right} % to get the normal font +% +% but with command: + +\def\doleftoftype {\typeparameter\c!left\typeparameter\c!command\bgroup} +\def\dorightoftype{\egroup\typeparameter\c!right} + \unexpanded\def\type{\dotype\empty} \unexpanded\def\typ {\dotyp \empty} @@ -283,7 +297,8 @@ \dodotype} \def\dodotype - {\futurelet\next\dodotypeone} + {\doleftoftype + \futurelet\next\dodotypeone} \def\dotyp#1% {\dontleavehmode @@ -338,6 +353,7 @@ nature = "inline", }}% \dostoptagged + \dorightoftype \egroup} \def\dodotypenested#1% @@ -351,6 +367,7 @@ nature = "inline", }}% \dostoptagged + \dorightoftype \egroup \gobbleoneargument} % grab last > diff --git a/tex/context/base/cldf-com.lua b/tex/context/base/cldf-com.lua index 4c5e106a7..ab20e2e89 100644 --- a/tex/context/base/cldf-com.lua +++ b/tex/context/base/cldf-com.lua @@ -6,6 +6,9 @@ if not modules then modules = { } end modules ['cldf-com'] = { license = "see context related readme files" } +local tostring, type = tostring, type +local format = string.format + local context = context local generics = context.generics local variables = interfaces.variables diff --git a/tex/context/base/cont-new.tex b/tex/context/base/cont-new.tex index c37350f86..0c2bf2a49 100644 --- a/tex/context/base/cont-new.tex +++ b/tex/context/base/cont-new.tex @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2010.12.04 09:44} +\newcontextversion{2010.12.04 19:31} %D This file is loaded at runtime, thereby providing an %D excellent place for hacks, patches, extensions and new diff --git a/tex/context/base/context.tex b/tex/context/base/context.tex index 1a1d0f38a..c23e2893a 100644 --- a/tex/context/base/context.tex +++ b/tex/context/base/context.tex @@ -20,7 +20,7 @@ %D your styles an modules. \edef\contextformat {\jobname} -\edef\contextversion{2010.12.04 09:44} +\edef\contextversion{2010.12.04 19:31} %D For those who want to use this: diff --git a/tex/context/base/font-gds.lua b/tex/context/base/font-gds.lua index ac83a611c..e85662af6 100644 --- a/tex/context/base/font-gds.lua +++ b/tex/context/base/font-gds.lua @@ -281,22 +281,25 @@ node_initializers.goodies = setgoodies local function initialize(goodies) local mathgoodies = goodies.mathematics - local virtuals = mathgoodies and mathgoodies.virtuals - local mapfiles = mathgoodies and mathgoodies.mapfiles - local maplines = mathgoodies and mathgoodies.maplines - if virtuals then - for name, specification in next, virtuals do - mathematics.makefont(name,specification) + if mathgoodies then + local virtuals = mathgoodies.virtuals + local mapfiles = mathgoodies.mapfiles + local maplines = mathgoodies.maplines + local variables = mathgoodies.variables + if virtuals then + for name, specification in next, virtuals do + mathematics.makefont(name,specification,variables) + end end - end - if mapfiles then - for i=1,#mapfiles do - fonts.map.loadfile(mapfiles[i]) -- todo: backend function + if mapfiles then + for i=1,#mapfiles do + fonts.map.loadfile(mapfiles[i]) -- todo: backend function + end end - end - if maplines then - for i=1,#maplines do - fonts.map.loadline(maplines[i]) -- todo: backend function + if maplines then + for i=1,#maplines do + fonts.map.loadline(maplines[i]) -- todo: backend function + end end end end @@ -390,4 +393,3 @@ fonts.goodies.register("compositions", initialize) -- tex/fonts/data/foundry/collection -- -- see lfg files in distribution - diff --git a/tex/context/base/math-def.mkiv b/tex/context/base/math-def.mkiv index 62691c655..4d8883c0f 100644 --- a/tex/context/base/math-def.mkiv +++ b/tex/context/base/math-def.mkiv @@ -240,7 +240,7 @@ #1\crcr\mathstrut\crcr\noalign{\kern-\baselineskip}}}\,} \definemathcommand [mathstrut] {\vphantom{(}} -\definemathcommand [joinrel] {\mathrel{\mkern-4mu}} % was mistakenly 3mu +\definemathcommand [joinrel] {\mathrel{\mkern-3mu}} % \definemathcommand [matrix] {\PLAINmatrix} % \definemathcommand [over] {\normalover} % hack, to do diff --git a/tex/context/base/math-vfu.lua b/tex/context/base/math-vfu.lua index c97978a79..b8c63e76b 100644 --- a/tex/context/base/math-vfu.lua +++ b/tex/context/base/math-vfu.lua @@ -293,8 +293,10 @@ local function stack(main,characters,id,size,unicode,u1,d12,u2) end end -function vfmath.alas(main,id,size) +function vfmath.alas(main,id,size,variables) local characters = main.characters + local shared = main.shared + local joinrelfactor = variables.joinrelfactor or 3 for i=0x7A,0x7D do make(main,characters,id,size,i,1) end @@ -319,23 +321,23 @@ function vfmath.alas(main,id,size) vertbar (main,characters,id,size,0xFF605,0.30,0xFF606) vertbar (main,characters,id,size,0xFF606,0.30,0xFF607) vertbar (main,characters,id,size,0xFF607,0.30,0xFF608) - jointwo (main,characters,id,size,0x21A6,0xFE321,0,0x02192) -- \mapstochar\rightarrow - jointwo (main,characters,id,size,0x21A9,0x02190,3,0xFE323) -- \leftarrow\joinrel\rhook - jointwo (main,characters,id,size,0x21AA,0xFE322,3,0x02192) -- \lhook\joinrel\rightarrow - stack (main,characters,id,size,0x2259,0x0003D,3,0x02227) -- \buildrel\wedge\over= - jointwo (main,characters,id,size,0x22C8,0x022B3,4,0x022B2) -- \mathrel\triangleright\joinrel\mathrel\triangleleft (4 looks better than 3) - jointwo (main,characters,id,size,0x2260,0x00338,0,0x0003D) -- \not\equal - jointwo (main,characters,id,size,0x2284,0x00338,0,0x02282) -- \not\subset - jointwo (main,characters,id,size,0x2285,0x00338,0,0x02283) -- \not\supset - jointwo (main,characters,id,size,0x22A7,0x0007C,3,0x0003D) -- \mathrel|\joinrel= - jointwo (main,characters,id,size,0x27F5,0x02190,3,0x0002D) -- \leftarrow\joinrel\relbar - jointwo (main,characters,id,size,0x27F6,0x0002D,3,0x02192) -- \relbar\joinrel\rightarrow - jointwo (main,characters,id,size,0x27F7,0x02190,3,0x02192) -- \leftarrow\joinrel\rightarrow - jointwo (main,characters,id,size,0x27F8,0x021D0,3,0x0003D) -- \Leftarrow\joinrel\Relbar - jointwo (main,characters,id,size,0x27F9,0x0003D,3,0x021D2) -- \Relbar\joinrel\Rightarrow - jointwo (main,characters,id,size,0x27FA,0x021D0,3,0x021D2) -- \Leftarrow\joinrel\Rightarrow - jointhree(main,characters,id,size,0x27FB,0x02190,3,0x0002D,0,0xFE324) -- \leftarrow\joinrel\relbar\mapsfromchar - jointhree(main,characters,id,size,0x27FC,0xFE321,0,0x0002D,3,0x02192) -- \mapstochar\relbar\joinrel\rightarrow + jointwo (main,characters,id,size,0x21A6,0xFE321,0,0x02192) -- \mapstochar\rightarrow + jointwo (main,characters,id,size,0x21A9,0x02190,joinrelfactor,0xFE323) -- \leftarrow\joinrel\rhook + jointwo (main,characters,id,size,0x21AA,0xFE322,joinrelfactor,0x02192) -- \lhook\joinrel\rightarrow + stack (main,characters,id,size,0x2259,0x0003D,3,0x02227) -- \buildrel\wedge\over= + jointwo (main,characters,id,size,0x22C8,0x022B3,joinrelfactor,0x022B2) -- \mathrel\triangleright\joinrel\mathrel\triangleleft (4 looks better than 3) + jointwo (main,characters,id,size,0x2260,0x00338,0,0x0003D) -- \not\equal + jointwo (main,characters,id,size,0x2284,0x00338,0,0x02282) -- \not\subset + jointwo (main,characters,id,size,0x2285,0x00338,0,0x02283) -- \not\supset + jointwo (main,characters,id,size,0x22A7,0x0007C,joinrelfactor,0x0003D) -- \mathrel|\joinrel= + jointwo (main,characters,id,size,0x27F5,0x02190,joinrelfactor,0x0002D) -- \leftarrow\joinrel\relbar + jointwo (main,characters,id,size,0x27F6,0x0002D,joinrelfactor,0x02192) -- \relbar\joinrel\rightarrow + jointwo (main,characters,id,size,0x27F7,0x02190,joinrelfactor,0x02192) -- \leftarrow\joinrel\rightarrow + jointwo (main,characters,id,size,0x27F8,0x021D0,joinrelfactor,0x0003D) -- \Leftarrow\joinrel\Relbar + jointwo (main,characters,id,size,0x27F9,0x0003D,joinrelfactor,0x021D2) -- \Relbar\joinrel\Rightarrow + jointwo (main,characters,id,size,0x27FA,0x021D0,joinrelfactor,0x021D2) -- \Leftarrow\joinrel\Rightarrow + jointhree(main,characters,id,size,0x27FB,0x02190,joinrelfactor,0x0002D,0,0xFE324) -- \leftarrow\joinrel\relbar\mapsfromchar + jointhree(main,characters,id,size,0x27FC,0xFE321,0,0x0002D,joinrelfactor,0x02192) -- \mapstochar\relbar\joinrel\rightarrow end local unique = 0 -- testcase: \startTEXpage \math{!\text{-}\text{-}\text{-}} \stopTEXpage @@ -385,7 +387,8 @@ setmetatable ( reverse, { __index = function(t,name) return r end } ) -function vfmath.define(specification,set) +function vfmath.define(specification,set,variables) + variables = variables or { } local name = specification.name -- symbolic name local size = specification.size -- given size local fnt, lst, main = { }, { }, nil @@ -671,7 +674,7 @@ function vfmath.define(specification,set) end lst[#lst+1] = { id = font.nextid(), size = size } if mp then -- weak catch - vfmath.alas(main,#lst,size) + vfmath.alas(main,#lst,size,variables) end if trace_virtual or trace_timings then report_virtual("loading and virtualizing font %s at size %s took %0.3f seconds",name,size,os.clock()-start) @@ -685,9 +688,9 @@ function vfmath.define(specification,set) return main end -function mathematics.makefont(name, set) +function mathematics.makefont(name, set, variables) fonts.definers.methods.variants[name] = function(specification) - return vfmath.define(specification,set) + return vfmath.define(specification,set,variables) end end diff --git a/tex/context/base/tabl-tab.mkiv b/tex/context/base/tabl-tab.mkiv index e724b0188..274ae74bf 100644 --- a/tex/context/base/tabl-tab.mkiv +++ b/tex/context/base/tabl-tab.mkiv @@ -1544,9 +1544,9 @@ \dotablestandardbegin[\ifsplittables u\else b\fi]% \the\localtabledefinitions \forgetall % added - \doifsomething{#1} - {\def\currenttableformat{#1}% - \dogettablenofcolumns\currenttableformat + \edef\currenttableformat{#1}% + \doifsomething\currenttableformat + {\dogettablenofcolumns\currenttableformat % more modern is to use catcode tables \expandafter\dobegintableformat\currenttableformat\doendtableformat}} diff --git a/tex/context/fonts/lm-math.lfg b/tex/context/fonts/lm-math.lfg index 7b3bfe6e0..9b2fe0f2d 100644 --- a/tex/context/fonts/lm-math.lfg +++ b/tex/context/fonts/lm-math.lfg @@ -234,6 +234,9 @@ return { ["lmroman10-boldmath"] = ten_bold, ["lmroman12-math"] = twelve, ["lmroman17-math"] = seventeen, + }, + variables = { + joinrelfactor = 3, -- default anyway } } } diff --git a/tex/context/fonts/lucida-math.lfg b/tex/context/fonts/lucida-math.lfg index 9a554d65b..746d281e0 100644 --- a/tex/context/fonts/lucida-math.lfg +++ b/tex/context/fonts/lucida-math.lfg @@ -331,7 +331,10 @@ return { { name = "file:lsr.afm", vector = "tex-ss" }, { name = "file:lstr.afm", vector = "tex-tt" }, { name = "file:lbl.afm", vector = "lbr-fraktur" }, -- more complete - } + }, + }, + variables = { + joinrelfactor = 4, -- default is 3 } } } diff --git a/tex/context/interface/cont-cs.xml b/tex/context/interface/cont-cs.xml index e4d5db460..5d689a769 100644 --- a/tex/context/interface/cont-cs.xml +++ b/tex/context/interface/cont-cs.xml @@ -869,6 +869,15 @@ + + + + + + + + + diff --git a/tex/context/interface/cont-de.xml b/tex/context/interface/cont-de.xml index 36f3c7f23..2bdfb751c 100644 --- a/tex/context/interface/cont-de.xml +++ b/tex/context/interface/cont-de.xml @@ -869,6 +869,15 @@ + + + + + + + + + diff --git a/tex/context/interface/cont-en.xml b/tex/context/interface/cont-en.xml index 826fabd93..28f2d724b 100644 --- a/tex/context/interface/cont-en.xml +++ b/tex/context/interface/cont-en.xml @@ -869,6 +869,15 @@ + + + + + + + + + diff --git a/tex/context/interface/cont-fr.xml b/tex/context/interface/cont-fr.xml index 84cfb0dba..5317c19ce 100644 --- a/tex/context/interface/cont-fr.xml +++ b/tex/context/interface/cont-fr.xml @@ -869,6 +869,15 @@ + + + + + + + + + diff --git a/tex/context/interface/cont-it.xml b/tex/context/interface/cont-it.xml index 38e5d5a8d..8e14050d2 100644 --- a/tex/context/interface/cont-it.xml +++ b/tex/context/interface/cont-it.xml @@ -869,6 +869,15 @@ + + + + + + + + + diff --git a/tex/context/interface/cont-nl.xml b/tex/context/interface/cont-nl.xml index a0f6b6fba..a3cc591ac 100644 --- a/tex/context/interface/cont-nl.xml +++ b/tex/context/interface/cont-nl.xml @@ -869,6 +869,15 @@ + + + + + + + + + diff --git a/tex/context/interface/cont-pe.xml b/tex/context/interface/cont-pe.xml index de53b0679..25ce62678 100644 --- a/tex/context/interface/cont-pe.xml +++ b/tex/context/interface/cont-pe.xml @@ -869,6 +869,15 @@ + + + + + + + + + diff --git a/tex/context/interface/cont-ro.xml b/tex/context/interface/cont-ro.xml index 1bb4625bd..de44c2a6b 100644 --- a/tex/context/interface/cont-ro.xml +++ b/tex/context/interface/cont-ro.xml @@ -869,6 +869,15 @@ + + + + + + + + + diff --git a/tex/generic/context/luatex-fonts-merged.lua b/tex/generic/context/luatex-fonts-merged.lua index 19b110416..dfba66938 100644 --- a/tex/generic/context/luatex-fonts-merged.lua +++ b/tex/generic/context/luatex-fonts-merged.lua @@ -1,6 +1,6 @@ -- merged file : luatex-fonts-merged.lua -- parent file : luatex-fonts.lua --- merge date : 12/04/10 09:44:58 +-- merge date : 12/04/10 19:31:58 do -- begin closure to overcome local limits and interference -- cgit v1.2.3