diff options
Diffstat (limited to 'tex/context/base/mkxl/math-frc.lmt')
-rw-r--r-- | tex/context/base/mkxl/math-frc.lmt | 98 |
1 files changed, 64 insertions, 34 deletions
diff --git a/tex/context/base/mkxl/math-frc.lmt b/tex/context/base/mkxl/math-frc.lmt index 0bc0e3895..c82b8387d 100644 --- a/tex/context/base/mkxl/math-frc.lmt +++ b/tex/context/base/mkxl/math-frc.lmt @@ -29,50 +29,79 @@ end) local ctx_Uatop = context.Uatop local ctx_Uover = context.Uover -local function umathfraction(how,style,left,right,width) - style = tonumber(style) -- or nil +-- local function umathfraction(how,style,left,right,width) +-- style = tonumber(style) -- or nil +-- if how == v_no then +-- if left == 0x002E and right == 0x002E then +-- if style then +-- context("\\Uatop style %i",style) +-- else +-- ctx_Uatop() +-- end +-- else +-- if style then +-- context("\\Uatopwithdelims style %i %s%s",style,resolved[left],resolved[right]) +-- else +-- context("\\Uatopwithdelims%s%s",resolved[left],resolved[right]) +-- end +-- end +-- elseif how == v_yes or how == v_hidden then +-- local norule = how == v_hidden and " norule " or "" +-- if style then +-- if left == 0x002E and right == 0x002E then +-- context("\\Uabove style %i %s%ssp",style,norule,width) +-- else +-- context("\\Uabovewithdelims style %i %s%s%s%ssp",style,norule,resolved[left],resolved[right],width) +-- end +-- else +-- if left == 0x002E and right == 0x002E then +-- context("\\Uabove%s%ssp",norule,width) +-- else +-- context("\\Uabovewithdelims%s%s%s%ssp",norule,resolved[left],resolved[right],width) +-- end +-- end +-- else -- v_auto +-- if left == 0x002E and right == 0x002E then +-- if style then +-- context("\\Uover style %i",style) +-- else +-- ctx_Uover() +-- end +-- else +-- if style then +-- context("\\Uoverwithdelims style %i %s%s",style,resolved[left],resolved[right]) +-- else +-- context("\\Uoverwithdelims%s%s",resolved[left],resolved[right]) +-- end +-- end +-- end +-- end +-- +-- interfaces.implement { +-- name = "umathfraction", +-- actions = umathfraction, +-- arguments = { "string", "string", "number", "number", "dimen" } +-- } + +local function umathfraction(how,left,right,width) if how == v_no then if left == 0x002E and right == 0x002E then - if style then - context("\\Uatop style %i",style) - else - ctx_Uatop() - end + ctx_Uatop() else - if style then - context("\\Uatopwithdelims style %i %s%s",style,resolved[left],resolved[right]) - else - context("\\Uatopwithdelims%s%s",resolved[left],resolved[right]) - end + context("\\Uatopwithdelims%s%s",resolved[left],resolved[right]) end elseif how == v_yes or how == v_hidden then local norule = how == v_hidden and " norule " or "" - if style then - if left == 0x002E and right == 0x002E then - context("\\Uabove style %i %s%ssp",style,norule,width) - else - context("\\Uabovewithdelims style %i %s%s%s%ssp",style,norule,resolved[left],resolved[right],width) - end + if left == 0x002E and right == 0x002E then + context("\\Uabove %s%ssp",norule,width) else - if left == 0x002E and right == 0x002E then - context("\\Uabove%s%ssp",norule,width) - else - context("\\Uabovewithdelims%s%s%s%ssp",norule,resolved[left],resolved[right],width) - end + context("\\Uabovewithdelims %s%s%s%ssp",norule,resolved[left],resolved[right],width) end else -- v_auto if left == 0x002E and right == 0x002E then - if style then - context("\\Uover style %i",style) - else - ctx_Uover() - end + ctx_Uover() else - if style then - context("\\Uoverwithdelims style %i %s%s",style,resolved[left],resolved[right]) - else - context("\\Uoverwithdelims%s%s",resolved[left],resolved[right]) - end + context("\\Uoverwithdelims%s%s",resolved[left],resolved[right]) end end end @@ -80,5 +109,6 @@ end interfaces.implement { name = "umathfraction", actions = umathfraction, - arguments = { "string", "string", "number", "number", "dimen" } + protected = true, + arguments = { "string", "number", "number", "dimen" } } |