extract couple of functions
[?]
May 25, 2022, 10:25 PM
KECEMMMRW2VVBZ567HJQPGLC57LTSBKWH7UFP32IW43D23X6WTEQCDependencies
- [2]
MDXGMZU2disable all debug prints - [3]
DLQMM265scroll past first page - [4]
DAENUOGVeliminate assumptions that line length == size in bytes - [5]
2RXZ3PGObeginning of a new approach to scroll+wrap - [6]
2ZYV7D3Whandle tab characters - [7]
XNFTJHC4split keyboard handling between Text and Drawing - [*]
BULPIBEGbeginnings of a module for the text editor - [*]
SVJZZDC3snapshot - no, that's all wrong
Change contents
- replacement in text.lua at line 772[3.1036]→[3.1131:1240](∅→∅),[3.1240]→[3.1141:1150](∅→∅),[3.1141]→[3.1141:1150](∅→∅),[3.1150]→[3.1241:1284](∅→∅),[3.1284]→[3.1192:1325](∅→∅),[3.1192]→[3.1192:1325](∅→∅),[3.1325]→[3.1285:1389](∅→∅),[3.175]→[3.1415:1443](∅→∅),[3.1389]→[3.1415:1443](∅→∅),[3.1415]→[3.1415:1443](∅→∅),[3.1443]→[3.1:11](∅→∅),[3.11]→[3.1390:1476](∅→∅),[3.93]→[3.1443:1461](∅→∅),[3.1476]→[3.1443:1461](∅→∅),[3.1443]→[3.1443:1461](∅→∅)
assert(Lines[Cursor1.line].mode == 'text')if Cursor1.pos > 1 thenCursor1.pos = Cursor1.pos-1elselocal new_cursor_line = Cursor1.linewhile new_cursor_line > 1 donew_cursor_line = new_cursor_line-1if Lines[new_cursor_line].mode == 'text' thenCursor1.line = new_cursor_lineCursor1.pos = utf8.len(Lines[Cursor1.line].data) + 1breakendendif Cursor1.line < Screen_top1.line thenScreen_top1.line = Cursor1.lineendendText.left() - replacement in text.lua at line 774[3.1492]→[3.1477:1620](∅→∅),[3.1620]→[3.1621:1630](∅→∅),[3.1621]→[3.1621:1630](∅→∅),[3.1630]→[3.1621:1664](∅→∅),[3.1664]→[3.1672:1813](∅→∅),[3.1672]→[3.1672:1813](∅→∅),[3.1813]→[3.1665:1732](∅→∅),[3.1732]→[3.1878:1916](∅→∅),[3.1878]→[3.1878:1916](∅→∅),[3.1916]→[3.1733:1822](∅→∅),[3.1822]→[3.179:189](∅→∅),[3.179]→[3.179:189](∅→∅),[3.189]→[3.1916:1924](∅→∅),[3.1916]→[3.1916:1924](∅→∅)
assert(Lines[Cursor1.line].mode == 'text')if Cursor1.pos <= utf8.len(Lines[Cursor1.line].data) thenCursor1.pos = Cursor1.pos+1elselocal new_cursor_line = Cursor1.linewhile new_cursor_line <= #Lines-1 donew_cursor_line = new_cursor_line+1if Lines[new_cursor_line].mode == 'text' thenCursor1.line = new_cursor_lineCursor1.pos = 1breakendendif Cursor1.line > Screen_bottom1.line thenScreen_top1.line = Cursor1.lineendendText.right() - edit in text.lua at line 925[2.1453][10.1321]
endendfunction Text.left()assert(Lines[Cursor1.line].mode == 'text')if Cursor1.pos > 1 thenCursor1.pos = Cursor1.pos-1elselocal new_cursor_line = Cursor1.linewhile new_cursor_line > 1 donew_cursor_line = new_cursor_line-1if Lines[new_cursor_line].mode == 'text' thenCursor1.line = new_cursor_lineCursor1.pos = utf8.len(Lines[Cursor1.line].data) + 1breakendendif Cursor1.line < Screen_top1.line thenScreen_top1.line = Cursor1.lineendendendfunction Text.right()assert(Lines[Cursor1.line].mode == 'text')if Cursor1.pos <= utf8.len(Lines[Cursor1.line].data) thenCursor1.pos = Cursor1.pos+1elselocal new_cursor_line = Cursor1.linewhile new_cursor_line <= #Lines-1 donew_cursor_line = new_cursor_line+1if Lines[new_cursor_line].mode == 'text' thenCursor1.line = new_cursor_lineCursor1.pos = 1breakendendif Cursor1.line > Screen_bottom1.line thenScreen_top1.line = Cursor1.lineend