Merge lines.love
[?]
Apr 20, 2023, 5:15 AM
MXSAHZN4AGTGEXFTMREVVYJLR2KY7X2Z4SUYKEPO2TGSVYR6N5MQCDependencies
- [2]
JYZKEDDGMerge lines.love - [3]
VDFARWQXremove some support for long lines from source editor - [4]
TVCPXAAUrename - [5]
2JBAEQHUMerge lines.love - [6]
KMSL74GAsupport selections in the source editor - [7]
4SR3Z4Y3document the version of LÖVE I've been using - [8]
XX7G2FFJintermingle freehand line drawings with text - [9]
LF7BWEG4group all editor globals - [10]
JOPVPUSAediting source code from within the app - [11]
2CTN2IEFMerge lines.love - [12]
A4BSGS2CMerge lines.love - [13]
2RXZ3PGObeginning of a new approach to scroll+wrap - [14]
VXORMHMEdelete experimental REPL - [15]
RSZD5A7Gforgot to add json.lua - [16]
MDXGMZU2disable all debug prints - [17]
LXTTOB33extract a couple of files - [18]
4YDBYBA4clean up memory leak experiments - [19]
MXA3RZYKdeduce left/right from state where possible - [20]
VP5KC4XZMerge lines.love - [21]
BLWAYPKVextract a module - [22]
G54H3YG2get rid of all bifold text - [23]
MD3W5IRAnew fork: rip out drawing support - [24]
ZLJYLPOTMerge lines.love - [25]
VHQCNMARseveral more modules - [26]
K2X6G75Zstart writing some tests for drawings - [27]
66X36NZNa little more prose describing manual_tests - [28]
2L5MEZV3experiment: new edit namespace - [29]
ORKN6EOBMerge lines.love - [30]
T4FRZSYLdelete an ancient, unused file - [31]
CE4LZV4Tdrop last couple of manual tests - [32]
K74U4BAUMerge lines.love - [33]
2TQUKHBCMerge lines.love - [34]
KWIVKQQ7Merge lines.love - [35]
JZR3QMTNMerge lines.love - [36]
3QNOKBFMbeginnings of a test harness - [37]
N2NUGNN4include a brief reference enabling many useful apps - [38]
TLOAPLBJadd a license - [39]
6LJZN727handle chords - [40]
R5QXEHUIsomebody stop me - [41]
FS2ITYYHrecord a known issue - [42]
3PSFWAILMerge lines.love - [43]
242L3OQXbugfix: ensure Cursor_line is always on a text line - [44]
ZTZOO2OQMerge lines.love - [45]
73OCE2MCafter much struggle, a brute-force undo - [46]
OGUV4HSAremove some memory leaks from rendered fragments - [47]
QCPXQ2E3add state arg to a few functions - [48]
D2GCFTTTclean up repl functionality - [49]
OI4FPFINsupport drawings in the source editor - [50]
BULPIBEGbeginnings of a module for the text editor - [51]
AVTNUQYRbasic test-enabled framework - [52]
VHUNJHXBMerge lines.love - [53]
KKMFQDR4editing source code from within the app - [54]
OTIBCAUJlove2d scaffold - [55]
BJ5X5O4Alet's prevent the text cursor from ever getting on a drawing
Change contents
- file deletion: source_text.lua source_text.lua
endif State.cursor1.pos == nil thenState.cursor1.pos = 1end-- hack: insert a text line at bottom of file if necessaryif State.cursor1.line > #State.lines thenassert(State.cursor1.line == #State.lines+1)table.insert(State.lines, {mode='text', data=''})table.insert(State.line_cache, {})end--? print(y, App.screen.height, App.screen.height-State.line_height)if y > App.screen.height - State.line_height thenState.screen_top1 = {line=State.screen_bottom1.line, pos=State.screen_bottom1.pos}--? print('setting top to', State.screen_top1.line, State.screen_top1.pos) - edit in text.lua at line 570
if State.cursor1.pos == nil thenState.cursor1.pos = 1end - resolve order conflict in text.lua at line 570
- replacement in source_text.lua at line 432[4.108453]→[4.3599:3762](∅→∅),[4.3762]→[4.108453:108506](∅→∅),[4.108453]→[4.108453:108506](∅→∅),[4.108506]→[4.3763:3856](∅→∅),[4.3856]→[4.108506:108635](∅→∅),[4.108506]→[4.108506:108635](∅→∅),[4.108635]→[4.3857:3944](∅→∅),[4.3944]→[4.108722:108728](∅→∅),[4.5439]→[4.108722:108728](∅→∅),[4.108722]→[4.108722:108728](∅→∅)
-- If a line/paragraph gets to a page boundary, I often want to scroll-- before I get to the bottom.-- However, only do this if it makes forward progress.local bot2 = Text.to2(State, State.screen_bottom1)if bot2.screen_line > 1 thenbot2.screen_line = math.max(bot2.screen_line-10, 1)endlocal new_top1 = Text.to1(State, bot2)if Text.lt1(State.screen_top1, new_top1) thenState.screen_top1 = new_top1elseState.screen_top1 = {line=State.screen_bottom1.line, pos=State.screen_bottom1.pos}endState.screen_top1 = {line=State.screen_bottom1.line, pos=State.screen_bottom1.pos} - edit in source_text.lua at line 678
endif State.cursor1.pos == nil thenState.cursor1.pos = 1