summaryrefslogtreecommitdiff
path: root/tex/context/base/mkiv/syst-aux.lua
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/mkiv/syst-aux.lua')
-rw-r--r--tex/context/base/mkiv/syst-aux.lua37
1 files changed, 26 insertions, 11 deletions
diff --git a/tex/context/base/mkiv/syst-aux.lua b/tex/context/base/mkiv/syst-aux.lua
index 34e5c4e88..06f6176b1 100644
--- a/tex/context/base/mkiv/syst-aux.lua
+++ b/tex/context/base/mkiv/syst-aux.lua
@@ -11,7 +11,7 @@ if not modules then modules = { } end modules ['syst-aux'] = {
-- utfmatch(str,"(.?)(.*)$")
-- utf.sub(str,1,1)
-local tonumber = tonumber
+local tonumber, next = tonumber, next
local utfsub = utf.sub
local P, S, R, C, Cc, Cs, Carg, lpegmatch = lpeg.P, lpeg.S, lpeg.R, lpeg.C, lpeg.Cc, lpeg.Cs, lpeg.Carg, lpeg.match
local next = next
@@ -23,7 +23,7 @@ local formatters = string.formatters
local setcatcode = tex.setcatcode
local utf8character = lpeg.patterns.utf8character
local settings_to_array = utilities.parsers.settings_to_array
-local settings_to_set = utilities.parsers.settings_to_set
+local settings_to_set = utilities.parsers.settings_to_set
local setmacro = interfaces.setmacro
local pattern = C(utf8character^-1) * C(P(1)^0)
@@ -390,8 +390,8 @@ local function doifelsecommon(a,b)
end
return
end
- local ba = find(a,",")
- local bb = find(b,",")
+ local ba = find(a,",",1,true)
+ local bb = find(b,",",1,true)
if ba and bb then
local ha = hash[a]
local hb = hash[b]
@@ -433,8 +433,8 @@ local function doifcommon(a,b)
end
return
end
- local ba = find(a,",")
- local bb = find(b,",")
+ local ba = find(a,",",1,true)
+ local bb = find(b,",",1,true)
if ba and bb then
local ha = hash[a]
local hb = hash[b]
@@ -476,8 +476,8 @@ local function doifnotcommon(a,b)
end
return
end
- local ba = find(a,",")
- local bb = find(b,",")
+ local ba = find(a,",",1,true)
+ local bb = find(b,",",1,true)
if ba and bb then
local ha = hash[a]
local hb = hash[b]
@@ -519,7 +519,7 @@ local function doifelseinset(a,b)
end
return
end
- local bb = find(b,",")
+ local bb = find(b,",",1,true)
if bb then
if hash[b][a] then
-- if settings_to_set(b)[a] then
@@ -542,7 +542,7 @@ local function doifinset(a,b)
end
return
end
- local bb = find(b,",")
+ local bb = find(b,",",1,true)
if bb then
if hash[b][a] then
-- if settings_to_set(b)[a] then
@@ -565,7 +565,7 @@ local function doifnotinset(a,b)
end
return
end
- local bb = find(b,",")
+ local bb = find(b,",",1,true)
if bb then
if hash[b][a] then
-- if settings_to_set(b)[a] then
@@ -652,3 +652,18 @@ implement {
-- context(s)
-- end
-- }
+
+local bp = number.dimenfactors.bp
+
+interfaces.implement {
+ name = "tobigpoints",
+ actions = function(d) context("%.5F",bp * d) end,
+ arguments = "dimension",
+}
+
+interfaces.implement {
+ name = "towholebigpoints",
+ actions = function(d) context("%r",bp * d) end,
+ arguments = "dimension",
+}
+