summaryrefslogtreecommitdiff
path: root/tex/context/base/util-seq.lua
diff options
context:
space:
mode:
authorContext Git Mirror Bot <phg42.2a@gmail.com>2014-08-27 12:15:04 +0200
committerContext Git Mirror Bot <phg42.2a@gmail.com>2014-08-27 12:15:04 +0200
commitcd0cb59de49408633f5c06fea35b94f3cf558170 (patch)
treebcf964d8b58f1de82790f85d116796f31c072195 /tex/context/base/util-seq.lua
parent471adab575a305cb8c52614be3bd54e488e35c73 (diff)
downloadcontext-cd0cb59de49408633f5c06fea35b94f3cf558170.tar.gz
2014-08-27 11:53:00
Diffstat (limited to 'tex/context/base/util-seq.lua')
-rw-r--r--tex/context/base/util-seq.lua13
1 files changed, 13 insertions, 0 deletions
diff --git a/tex/context/base/util-seq.lua b/tex/context/base/util-seq.lua
index 35e693285..4dd9ddc33 100644
--- a/tex/context/base/util-seq.lua
+++ b/tex/context/base/util-seq.lua
@@ -31,6 +31,7 @@ local functions = allocate()
sequencers.functions = functions
local removevalue = tables.removevalue
+local replacevalue = tables.replacevalue
local insertaftervalue = tables.insertaftervalue
local insertbeforevalue = tables.insertbeforevalue
@@ -189,6 +190,18 @@ function sequencers.removeaction(t,group,action,force)
end
end
+function sequencers.replaceaction(t,group,oldaction,newaction,force)
+ t = known[t]
+ if t then
+ local g = t.list[group]
+ if g and (force or validaction(oldaction)) then
+ replacevalue(g,oldaction,newaction)
+ t.dirty = true
+ t.runner = nil
+ end
+ end
+end
+
local function localize(str)
return (gsub(str,"[%.: ]+","_"))
end