diff options
Diffstat (limited to 'Master/texmf-dist/tex/context/base/node-ltp.lua')
-rw-r--r-- | Master/texmf-dist/tex/context/base/node-ltp.lua | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/Master/texmf-dist/tex/context/base/node-ltp.lua b/Master/texmf-dist/tex/context/base/node-ltp.lua index 6ad5de140b9..9529213fc37 100644 --- a/Master/texmf-dist/tex/context/base/node-ltp.lua +++ b/Master/texmf-dist/tex/context/base/node-ltp.lua @@ -406,13 +406,13 @@ end -- resolvers -- -local whatsiters = { +local whatsitters = { get_width = { }, get_dimensions = { }, } -local get_whatsit_width = whatsiters.get_width -local get_whatsit_dimensions = whatsiters.get_dimensions +local get_whatsit_width = whatsitters.get_width +local get_whatsit_dimensions = whatsitters.get_dimensions local function get_width (n,dir) return getfield(n,"width") end local function get_dimensions(n,dir) return getfield(n,"width"), getfield(n,"height"), getfield(n,"depth") end @@ -423,6 +423,8 @@ get_whatsit_width[pdfrefxform_code ] = get_width get_whatsit_dimensions[pdfrefximage_code] = get_dimensions get_whatsit_dimensions[pdfrefxform_code ] = get_dimensions +nodes.whatsitters = whatsitters + -- expansion etc -- local function calculate_fraction(x,n,d,max_answer) @@ -1243,6 +1245,7 @@ local function post_line_break(par) setfield(prevlast,"post",nil) end elseif subtype == first_disc_code then + -- what is v ... next probably if not (getid(v) == disc_code and getsubtype(v) == second_disc_code) then report_parbuilders('unsupported disc at location %a',4) end @@ -2547,10 +2550,10 @@ function diagnostics.feasible_break(par, current, r, b, pi, d, artificial_demeri par.font_in_short_display = short_display("log",getnext(printed_node),par.font_in_short_display) else local save_link = getnext(current) - setfield(cur_p,"next",nil) + setfield(current,"next",nil) write_nl("log","") par.font_in_short_display = short_display("log",getnext(printed_node),par.font_in_short_display) - setfield(cur_p,"next",save_link) + setfield(current,"next",save_link) end par.printed_node = current end @@ -3145,7 +3148,7 @@ local function hpack(head,width,method,direction,firstline,line) -- fast version end diagnostics.overfull_hbox(hlist,line,-delta) end - elseif order == 0 and hlist.list and last_badness > tex.hbadness then + elseif order == 0 and getlist(hlist) and last_badness > tex.hbadness then diagnostics.bad_hbox(hlist,line,last_badness) end end @@ -3154,6 +3157,8 @@ end xpack_nodes = hpack -- comment this for old fashioned expansion (we need to fix float mess) +constructors.methods.hpack = hpack + local function common_message(hlist,line,str) write_nl("") if status.output_active then -- unset |