RTG3J32S5SQX6KC74FFHSK2MAJCMISFUHANSDCIFQA7TGDGDORGAC
end
function update_metadata(pane)
local y = 0
pane.line_cache = {}
for i=1,#pane.lines do
local line = pane.lines[i]
pane.line_cache[i] = {}
line.start_relative_y = y
if line.mode == 'text' then
-- semi-permanently initialize some cached stuff until the next edit
Text.compute_fragments(pane, i)
Text.populate_screen_line_starting_pos(pane, i)
y = y + Line_height*#pane.line_cache[i].screen_line_starting_pos
elseif line.mode == 'drawing' then
-- nothing
y = y + Drawing.pixels(line.h, Display_settings.column_width) + Drawing_padding_height
else
print(line.mode)
assert(false)
end
end
pane.height = y