summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/context/base/mkiv/typo-rep.lua
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/context/base/mkiv/typo-rep.lua')
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/typo-rep.lua10
1 files changed, 7 insertions, 3 deletions
diff --git a/Master/texmf-dist/tex/context/base/mkiv/typo-rep.lua b/Master/texmf-dist/tex/context/base/mkiv/typo-rep.lua
index d29eb17b8f3..b6aae0cae37 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/typo-rep.lua
+++ b/Master/texmf-dist/tex/context/base/mkiv/typo-rep.lua
@@ -21,6 +21,8 @@ local nodes = nodes
local enableaction = nodes.tasks.enableaction
local nuts = nodes.nuts
+local tonut = nuts.tonut
+local tonode = nuts.tonode
local getnext = nuts.getnext
local getchar = nuts.getchar
@@ -79,8 +81,9 @@ local function process(what,head,current,char)
return head, current
end
-function nodes.handlers.stripping(head) -- use loop
- local current = head
+function nodes.handlers.stripping(head)
+ head = tonut(head)
+ local current, done = head, false
while current do
local char, id = isglyph(current)
if char then
@@ -90,6 +93,7 @@ function nodes.handlers.stripping(head) -- use loop
local what = glyphs[char]
if what then
head, current = process(what,head,current,char)
+ done = true
else -- handling of spacing etc has to be done elsewhere
current = getnext(current)
end
@@ -100,7 +104,7 @@ function nodes.handlers.stripping(head) -- use loop
current = getnext(current)
end
end
- return head
+ return tonode(head), done
end
local enabled = false