summaryrefslogtreecommitdiff
path: root/tex/context/base/mkiv/node-dir.lua
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2019-12-24 21:10:09 +0100
committerContext Git Mirror Bot <phg@phi-gamma.net>2019-12-24 21:10:09 +0100
commitd40e81dea53da7bbc91df306814003f7720a167f (patch)
tree8aed8a716370cac0d04145a72405c1beed11b94d /tex/context/base/mkiv/node-dir.lua
parentd1f4da02201fd33c139ee1756296e8df53580ff7 (diff)
downloadcontext-d40e81dea53da7bbc91df306814003f7720a167f.tar.gz
2019-12-24 19:54:00
Diffstat (limited to 'tex/context/base/mkiv/node-dir.lua')
-rw-r--r--tex/context/base/mkiv/node-dir.lua36
1 files changed, 27 insertions, 9 deletions
diff --git a/tex/context/base/mkiv/node-dir.lua b/tex/context/base/mkiv/node-dir.lua
index ef26286e5..762f20739 100644
--- a/tex/context/base/mkiv/node-dir.lua
+++ b/tex/context/base/mkiv/node-dir.lua
@@ -32,10 +32,32 @@ local new_kern = nuts.pool.kern
local setcolor = nodes.tracers.colors.set
local settransparency = nodes.tracers.transparencies.set
+-- local function dirdimensions(parent,begindir) -- can be a helper
+-- local level = 1
+-- local enddir = begindir
+-- local width = 0
+-- for current, subtype in nextdir, getnext(begindir) do
+-- if subtype == normaldir_code then -- todo
+-- level = level + 1
+-- else
+-- level = level - 1
+-- end
+-- if level == 0 then -- does the type matter
+-- enddir = current
+-- width = rangedimensions(parent,begindir,enddir)
+-- return width, enddir
+-- end
+-- end
+-- if enddir == begindir then
+-- width = rangedimensions(parent,begindir)
+-- end
+-- return width, enddir
+-- end
+
local function dirdimensions(parent,begindir) -- can be a helper
- local level = 1
- local enddir = begindir
- local width = 0
+ local level = 1
+ local lastdir = nil
+ local width = 0
for current, subtype in nextdir, getnext(begindir) do
if subtype == normaldir_code then -- todo
level = level + 1
@@ -43,14 +65,10 @@ local function dirdimensions(parent,begindir) -- can be a helper
level = level - 1
end
if level == 0 then -- does the type matter
- enddir = current
- width = rangedimensions(parent,begindir,enddir)
+ return (rangedimensions(parent,begindir,current)), current
end
end
- if enddir == begindir then
- width = rangedimensions(parent,begindir)
- end
- return width, enddir
+ return (rangedimensions(parent,begindir)), begindir
end
nuts.dirdimensions = dirdimensions