this fixes the immediate regression

[?]
Jun 10, 2022, 9:52 PM
KZ5GAYRPWF2BA5VEIW3A4G2TULATBL7YEDGFJU42GBP5DET7BI3AC

Dependencies

  • [2] GCEF4N3V stop repeatedly checking for line wrapping
  • [3] R53OF3ON one bug I've repeatedly run into while testing with Moby Dick
  • [4] HOSPP2AN crisp font rendering
  • [5] ZPUQSPQP extract a few methods
  • [6] GN3IF4WF bugfix: pasting newlines
  • [7] YPHKZVWM extract a new variable
  • [8] CVSRHMJ2 experiment: slightly adaptive scrolling
  • [9] 2RXZ3PGO beginning of a new approach to scroll+wrap
  • [10] PESSMQBJ no, make sure to compute line width after screen dimensions
  • [11] OGUV4HSA remove some memory leaks from rendered fragments
  • [12] KOYAJWE4 extract a couple more methods
  • [13] ESETRNLB bugfix: printing the first part of a line at the bottom made it seem non-wrapping
  • [14] P66MRF3U bugfix: don't append metadata when it already exists
  • [15] YLKLDF4R .
  • [16] 3OKKTUT4 up and down arrow now moving by screen line where possible
  • [17] AYE2VEGJ extract a couple of methods
  • [*] BULPIBEG beginnings of a module for the text editor

Change contents

  • replacement in text.lua at line 391
    [3.74][2.3:21]()
    print('pageup')
    [3.74]
    [3.74]
    --? print('pageup')
  • replacement in text.lua at line 397
    [3.1366][3.254:282](),[3.254][3.254:282]()
    --? print(y, top2.line)
    [3.1366]
    [3.282]
    --? print(y, top2.line, top2.screen_line, top2.screen_pos)
  • replacement in text.lua at line 411
    [3.857][2.22:44]()
    print('pageup end')
    [3.857]
    [3.83]
    --? print('pageup end')
  • replacement in text.lua at line 415
    [3.883][2.45:65]()
    print('pagedown')
    [3.883]
    [3.2828]
    --? print('pagedown')
  • replacement in text.lua at line 436
    [3.184][2.66:90]()
    print('pagedown end')
    [3.184]
    [3.1214]
    --? print('pagedown end')
  • replacement in text.lua at line 813
    [3.1588][3.7866:8031](),[3.7866][3.7866:8031](),[3.8031][3.1205:1236](),[3.1236][3.8065:8096](),[3.8065][3.8065:8096](),[3.8096][3.1237:1285](),[3.1285][3.8129:8153](),[3.8129][3.8129:8153]()
    result.screen_pos = pos1.pos
    else
    for i=#Lines[pos1.line].screen_line_starting_pos,1,-1 do
    local spos = Lines[pos1.line].screen_line_starting_pos[i]
    if spos <= pos1.pos then
    result.screen_line = i
    result.screen_pos = pos1.pos - spos + 1
    break
    end
    [3.1588]
    [3.8153]
    Text.populate_screen_line_starting_pos(pos1.line)
    end
    for i=#Lines[pos1.line].screen_line_starting_pos,1,-1 do
    local spos = Lines[pos1.line].screen_line_starting_pos[i]
    if spos <= pos1.pos then
    result.screen_line = i
    result.screen_pos = pos1.pos - spos + 1
    break
  • replacement in text.lua at line 869
    [3.1778][3.1778:1952]()
    return {line=pos2.line-1, screen_line=1, screen_pos=1}
    else
    return {line=pos2.line-1, screen_line=#Lines[pos2.line-1].screen_line_starting_pos, screen_pos=1}
    [3.1778]
    [3.1952]
    Text.populate_screen_line_starting_pos(pos2.line-1)
  • edit in text.lua at line 871
    [3.1960]
    [3.1960]
    return {line=pos2.line-1, screen_line=#Lines[pos2.line-1].screen_line_starting_pos, screen_pos=1}
  • replacement in text.lua at line 876
    [3.2209][3.47:101]()
    --? print('Text.populate_screen_line_starting_pos')
    [3.2209]
    [3.2250]
    --? print('Text.populate_screen_line_starting_pos', line_index)
  • replacement in text.lua at line 905
    [3.4025][2.250:280]()
    print('clearing fragments')
    [3.4025]
    [3.4025]
    --? print('clearing fragments')