summaryrefslogtreecommitdiff
path: root/tex/context/base/syst-aux.lua
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/syst-aux.lua')
-rw-r--r--tex/context/base/syst-aux.lua33
1 files changed, 2 insertions, 31 deletions
diff --git a/tex/context/base/syst-aux.lua b/tex/context/base/syst-aux.lua
index cda340cb6..7fd25d6ab 100644
--- a/tex/context/base/syst-aux.lua
+++ b/tex/context/base/syst-aux.lua
@@ -6,37 +6,19 @@ if not modules then modules = { } end modules ['syst-aux'] = {
license = "see context related readme files"
}
--- slower than lpeg:
---
--- utfmatch(str,"(.?)(.*)$")
--- utf.sub(str,1,1)
-
-local commands, context = commands, context
-
local settings_to_array = utilities.parsers.settings_to_array
local concat = table.concat
-local format = string.format
-local utfsub = utf.sub
-local P, C, Carg, lpegmatch, utf8char = lpeg.P, lpeg.C, lpeg.Carg, lpeg.match, lpeg.patterns.utf8char
local setvalue = context.setvalue
-local pattern = C(utf8char^-1) * C(P(1)^0)
-
function commands.getfirstcharacter(str)
- local first, rest = lpegmatch(pattern,str)
+ local first, rest = utf.match(str,"(.?)(.*)$")
setvalue("firstcharacter",first)
setvalue("remainingcharacters",rest)
end
-local pattern = C(utf8char^-1)
-
function commands.doiffirstcharelse(chr,str)
- commands.doifelse(lpegmatch(pattern,str) == chr)
-end
-
-function commands.getsubstring(str,first,last)
- context(utfsub(str,tonumber(first),tonumber(last)))
+ commands.doifelse(utf.sub(str,1,1) == chr)
end
-- function commands.addtocommalist(list,item)
@@ -68,14 +50,3 @@ end
-- end
-- end
-- end
-
-local pattern = (C((1-P("%"))^1) * Carg(1)) /function(n,d) return format("%.0fsp",d * tonumber(n)/100) end * P("%") * P(-1)
-
--- commands.percentageof("10%",65536*10)
-
-function commands.percentageof(str,dim)
- context(lpegmatch(pattern,str,1,dim) or str)
-end
-
--- \gdef\setpercentdimen#1#2%
--- {#1=\ctxcommand{percentageof("#2",\number#1)}\relax}