Merge text.love
[?]
Mar 24, 2023, 4:48 AM
LXFHXL2NSH7KLRNNN66OPNSU4DXZ6UU2CUPXUHCFEISDB6BY7KDACDependencies
- [2]
QF3HGULOMerge text.love - [3]
VOU73AK6Merge lines.love - [4]
BJ5X5O4Alet's prevent the text cursor from ever getting on a drawing - [5]
XX7G2FFJintermingle freehand line drawings with text - [6]
4SR3Z4Y3document the version of LÖVE I've been using - [7]
OWPI7Y4QMerge text.love - [8]
4YDBYBA4clean up memory leak experiments - [9]
JOPVPUSAediting source code from within the app - [10]
4DHGKUMDMerge text.love - [11]
R5QXEHUIsomebody stop me - [12]
LXTTOB33extract a couple of files - [13]
BLWAYPKVextract a module - [14]
T4FRZSYLdelete an ancient, unused file - [15]
EX43CDDIMerge text.love - [16]
KMSL74GAsupport selections in the source editor - [17]
K74U4BAUMerge lines.love - [18]
TVCPXAAUrename - [19]
MD3W5IRAnew fork: rip out drawing support - [20]
2CTN2IEFMerge lines.love - [21]
3QNOKBFMbeginnings of a test harness - [22]
GUOQRUL7Merge lines.love - [23]
TXDMRA5Jbugfix: alt-tab shouldn't emit keypress events - [24]
OTIBCAUJlove2d scaffold - [25]
ZTZOO2OQMerge lines.love - [26]
ECBDENZ4Merge text.love - [27]
BULPIBEGbeginnings of a module for the text editor - [28]
VP5KC4XZMerge lines.love - [29]
6LJZN727handle chords - [30]
OGUV4HSAremove some memory leaks from rendered fragments - [31]
ETXNVRPTMerge lines.love - [32]
3G723RV5Merge text.love - [33]
C3GUE45IMerge text.love - [34]
AVTNUQYRbasic test-enabled framework - [35]
JRLBUB6Lmore intuitive point delete from polygons - [36]
TLOAPLBJadd a license - [37]
FS2ITYYHrecord a known issue - [38]
XGHCLIKBMerge lines.love - [39]
VHQCNMARseveral more modules - [40]
2Y7YH7UPinfrastructure for caching LÖVE text objects - [41]
2CK5QI7Wmake love event names consistent - [42]
3PSFWAILMerge lines.love - [43]
2TQUKHBCMerge lines.love - [44]
UAYCSFSKMerge text.love - [45]
VHUNJHXBMerge lines.love - [46]
K2X6G75Zstart writing some tests for drawings - [47]
Q7XPSKIIMerge lines.love - [48]
D2GCFTTTclean up repl functionality - [49]
KKMFQDR4editing source code from within the app - [50]
GFXWHTE6mouse wheel support - [51]
CE4LZV4Tdrop last couple of manual tests - [52]
36Z442IVback to commit 8123959e52f without code editing - [53]
73OCE2MCafter much struggle, a brute-force undo - [54]
66X36NZNa little more prose describing manual_tests - [55]
D4B52CQ2Merge lines.love - [56]
A4BSGS2CMerge lines.love - [57]
RSZD5A7Gforgot to add json.lua - [58]
ORKN6EOBMerge lines.love - [59]
VXORMHMEdelete experimental REPL - [60]
2L5MEZV3experiment: new edit namespace
Change contents
- file deletion: source_edit.lua source_edit.lua
endendfunction edit.mouse_wheel_move(State, dx,dy)if dy > 0 thenState.cursor1 = {line=State.screen_top1.line, pos=State.screen_top1.pos}for i=1,math.floor(dy) doText.up(State)endelseif dy < 0 thenState.cursor1 = {line=State.screen_bottom1.line, pos=State.screen_bottom1.pos}for i=1,math.floor(-dy) doText.down(State)endend - file deletion: source.lua source.lua
function source.mouse_wheel_move(dx,dy)Cursor_time = 0 -- ensure cursor is visible immediately after it movesif Focus == 'edit' thenreturn edit.mouse_wheel_move(Editor_state, dx,dy)elsereturn log_browser.mouse_wheel_move(Log_browser_state, dx,dy)endendfunction source.text_input(t) - file deletion: run.lua run.lua
function run.mouse_wheel_move(dx,dy)Cursor_time = 0 -- ensure cursor is visible immediately after it movesreturn edit.mouse_wheel_move(Editor_state, dx,dy)endfunction run.text_input(t) - file deletion: log_browser.lua log_browser.lua
function log_browser.down(State)while State.screen_top1.line < #State.lines doState.screen_top1.line = State.screen_top1.line+1if should_show(State.lines[State.screen_top1.line]) thenbreakendendendfunction log_browser.height(State, line_index)local line = State.lines[line_index]if line.data == nil then-- section headerreturn State.line_heightelseif type(line.data) == 'string' thenreturn State.line_heightelseif line.height == nil then--? print('nil line height! rendering off screen to calculate')line.height = log_render[line.data.name](line.data, State.left, App.screen.height, State.right-State.left)endreturn line.heightendendendendendfunction log_browser.up(State)while State.screen_top1.line > 1 doState.screen_top1.line = State.screen_top1.line-1if should_show(State.lines[State.screen_top1.line]) thenbreakendendendlog_browser.down(State)elseif chord == 'pageup' thenlocal y = 0while State.screen_top1.line > 1 and y < App.screen.height - 100 doState.screen_top1.line = State.screen_top1.line - 1if should_show(State.lines[State.screen_top1.line]) theny = y + log_browser.height(State, State.screen_top1.line)endendelseif chord == 'pagedown' thenlocal y = 0while State.screen_top1.line < #State.lines and y < App.screen.height - 100 doif should_show(State.lines[State.screen_top1.line]) theny = y + log_browser.height(State, State.screen_top1.line)endState.screen_top1.line = State.screen_top1.line + 1log_browser.up(State)elseif chord == 'down' thenendfunction log_browser.mouse_wheel_move(State, dx,dy)if dy > 0 thenfor i=1,math.floor(dy) dolog_browser.up(State)endelseif dy < 0 thenfor i=1,math.floor(-dy) dolog_browser.down(State)endendend - edit in main.lua at line 185
function App.wheelmoved(dx,dy)Cursor_time = 0 -- ensure cursor is visible immediately after it movesreturn edit.mouse_wheel_move(Editor_state, dx,dy)end - edit in main.lua at line 229[4.7809]→[4.264:268](∅→∅),[4.191241]→[4.264:268](∅→∅),[4.191780]→[4.264:268](∅→∅),[4.264]→[4.264:268](∅→∅),[4.268]→[4.9:9](∅→∅),[4.102]→[3.1040:1071](∅→∅),[4.102]→[3.1040:1071](∅→∅),[4.190461]→[3.1072:1137](∅→∅),[4.190461]→[3.1072:1137](∅→∅),[4.190572]→[3.1138:1209](∅→∅),[4.190572]→[3.1138:1209](∅→∅),[4.355]→[3.842:842](∅→∅),[4.355]→[3.842:842](∅→∅),[4.355]→[3.842:842](∅→∅),[3.842]→[4.823:889](∅→∅),[4.5101]→[4.823:889](∅→∅),[4.5101]→[4.823:889](∅→∅)
endfunction App.wheelmoved(dx,dy)if run.mouse_wheel_move then run.mouse_wheel_move(dx,dy) endif source.mouse_wheel_move then source.mouse_wheel_move(dx,dy) endelseassert(false, 'unknown app "'..Current_app..'"')end - resurrect zombie in main.lua at line 229
end - resolve order conflict in main.lua at line 229
- edit in main.lua at line 230[4.893]→[4.893:894](∅→∅),[4.893]→[4.893:894](∅→∅),[4.894]→[3.843:889](∅→∅),[4.894]→[3.843:889](∅→∅),[3.889]→[4.925:956](∅→∅),[4.925]→[4.925:956](∅→∅),[4.925]→[4.925:956](∅→∅),[4.925]→[4.925:956](∅→∅),[4.956]→[3.890:961](∅→∅),[4.956]→[3.890:961](∅→∅),[4.956]→[3.890:961](∅→∅),[3.961]→[4.1021:1059](∅→∅),[4.1021]→[4.1021:1059](∅→∅),[4.1021]→[4.1021:1059](∅→∅),[4.1021]→[4.1021:1059](∅→∅),[4.1059]→[3.962:1039](∅→∅),[4.1059]→[3.962:1039](∅→∅),[4.1059]→[3.962:1039](∅→∅)
function App.mousereleased(x,y, mouse_button)if Current_app == 'run' thenif run.mouse_release then run.mouse_release(x,y, mouse_button) endelseif Current_app == 'source' thenif source.mouse_release then source.mouse_release(x,y, mouse_button) end