summaryrefslogtreecommitdiff
path: root/macros/luatex/generic/minim/minim-alloc.lua
diff options
context:
space:
mode:
Diffstat (limited to 'macros/luatex/generic/minim/minim-alloc.lua')
-rw-r--r--macros/luatex/generic/minim/minim-alloc.lua19
1 files changed, 15 insertions, 4 deletions
diff --git a/macros/luatex/generic/minim/minim-alloc.lua b/macros/luatex/generic/minim/minim-alloc.lua
index 3b14f5cc80..8e84553c2f 100644
--- a/macros/luatex/generic/minim/minim-alloc.lua
+++ b/macros/luatex/generic/minim/minim-alloc.lua
@@ -195,10 +195,6 @@ function M.table_to_text (tbl)
return '{ ' .. table.concat (r,', ') .. ' }'
end
-local cb = require('minim-callbacks')
-M.remember('minim-callbacks')
-M.remember('minim-alloc')
-
-- 1 allocation functions
-- like \unset
@@ -271,6 +267,21 @@ make_alloc_old ('box', globoffset + 4 )
make_alloc_old ('toks', globoffset + 5 )
make_alloc_old ('marks', globoffset + 6 )
+-- 1 other extensions
+
+local cb = require('minim-callbacks')
+M.remember('minim-callbacks')
+M.remember('minim-alloc')
+
+-- Add a callback just before a box is shipped out, opposite to 'finish_pdfpage'.
+cb.new_callback('pre_shipout', 'simple')
+M.primitive_shipout = tex.shipout
+function tex.shipout(nr)
+ cb.call_callback('pre_shipout', nr)
+ M.primitive_shipout(nr)
+end
+
+-- define tex commands from lua
function M.luadef (csname, fn, ...)
local nr = M.new_function(csname)
lua.get_functions_table()[nr] = fn