OSDN Git Service

Add tools to dump luatexja.fmt (work in progress).
[luatex-ja/luatexja.git] / config / luadump.tex
1 %
2 % luadump.tex
3 %
4
5 \catcode`@=11
6
7 \directlua{require('luadump')}
8
9 \let\luadump@directlua@orig\directlua
10
11 \long\def\luadump@directlua#1{%
12   \luadump@directlua@orig{
13     #1
14     lua.bytecode[luadump.bytecode_index] = function()
15       #1
16     end
17     luadump.bytecode_index = luadump.bytecode_index + 1
18   }%
19 }
20
21 \def\luadump@init{%
22   \directlua{luadump.init()}
23   \let\directlua\luadump@directlua
24 }
25
26 \def\luadump@finalize{%
27   \let\directlua\luadump@directlua@orig
28   \let\luadump@directlua\undefined
29   \let\luadump@directlua@orig\undefined
30   \let\luadump@init\undefined
31   \let\luadump@finalize\undefined
32   \directlua{luadump.finalize()}
33   \everyjob{\directlua{require('luadump'); luadump.restore()}}
34   \catcode`@=12
35 }
36
37 \endinput