+
+local function whatsit_callback(Np, lp, Nq, bsl)
+ if Np and Np.nuc then return Np
+ elseif Np and lp.user_id == 30114 then
+ Np.first = lp; Np.nuc = lp; Np.last = lp
+ Np.char = 'parbdd'
+ Np.met = nil
+ Np.pre = 0; Np.post = 0
+ Np.xspc_before = false
+ Np.xspc_after = false
+ Np.auto_xspc = false
+ return Np
+ end
+end
+local function whatsit_after_callback(s, Nq, Np, bsl)
+ if not s and Nq.nuc.user_id == 30114 then
+ local x, y = node.prev(Nq.nuc), Nq.nuc
+ Nq.first, Nq.nuc, Nq.last = x, x, x
+ head = node_remove(head, y)
+ end
+ return s
+end
+
+luatexbase.add_to_callback("luatexja.jfmglue.whatsit_getinfo", whatsit_callback,
+ "luatexja.beginpar.np_info", 1)
+luatexbase.add_to_callback("luatexja.jfmglue.whatsit_after", whatsit_after_callback,
+ "luatexja.beginpar.np_info_after", 1)
+