Merge text.love
[?]
May 14, 2023, 12:34 AM
ZJFSVE47FYDOAPGKXNF6TNKD4Q2ESVYQBG4VBF54PQRA7FI2JSOACDependencies
- [2]
2CFLXLIEMerge text.love - [3]
RAXUQQ6ZMerge lines.love - [4]
TVCPXAAUrename - [5]
BULPIBEGbeginnings of a module for the text editor - [6]
LXTTOB33extract a couple of files - [7]
TLOAPLBJadd a license - [8]
ZLJYLPOTMerge lines.love - [9]
Q6RXCILQMerge text.love - [10]
2H76FV5Sbugfix: searching files containing unicode - [11]
LLAOOMULbugfix: search upwards - [12]
2L5MEZV3experiment: new edit namespace - [13]
2CTN2IEFMerge lines.love - [14]
4YDBYBA4clean up memory leak experiments - [15]
3QNOKBFMbeginnings of a test harness - [16]
KMSL74GAsupport selections in the source editor - [17]
73OCE2MCafter much struggle, a brute-force undo - [18]
MUJTM6REbring back a level of wrapping - [19]
2JBAEQHUMerge lines.love - [20]
FS2ITYYHrecord a known issue - [21]
T4FRZSYLdelete an ancient, unused file - [22]
AVTNUQYRbasic test-enabled framework - [23]
ECBDENZ4Merge text.love - [24]
N2NUGNN4include a brief reference enabling many useful apps - [25]
66X36NZNa little more prose describing manual_tests - [26]
VXORMHMEdelete experimental REPL - [27]
CE4LZV4Tdrop last couple of manual tests - [28]
K74U4BAUMerge lines.love - [29]
36Z442IVback to commit 8123959e52f without code editing - [30]
C3GUE45IMerge text.love - [31]
OGUV4HSAremove some memory leaks from rendered fragments - [32]
JOPVPUSAediting source code from within the app - [33]
KB7KTSCPMerge lines.love - [34]
LF7BWEG4group all editor globals - [35]
BJ5X5O4Alet's prevent the text cursor from ever getting on a drawing - [36]
VHQCNMARseveral more modules - [37]
MSOQI3A5bugfix: check before cursor on same line - [38]
ATQO62TFMerge lines.love - [39]
VP5KC4XZMerge lines.love - [40]
7PZ4CQFVsearch: transparently handle drawings everywhere - [41]
R5QXEHUIsomebody stop me - [42]
3PSFWAILMerge lines.love - [43]
EX43CDDIMerge text.love - [44]
BLWAYPKVextract a module - [45]
AMOPICKVbugfix: check after cursor on same line when searching upwards - [46]
KKMFQDR4editing source code from within the app - [47]
VHUNJHXBMerge lines.love - [48]
XX7G2FFJintermingle freehand line drawings with text - [49]
ORKN6EOBMerge lines.love - [50]
KWIVKQQ7Merge lines.love - [51]
YDUIKWSFMerge text.love - [52]
RSZD5A7Gforgot to add json.lua - [53]
MD3W5IRAnew fork: rip out drawing support - [54]
A4BSGS2CMerge lines.love - [55]
K2X6G75Zstart writing some tests for drawings - [56]
QD4LOFQRMerge text.love - [57]
O3WZWLYCMerge text.love - [58]
QSKWIEU3support special chars like '(' in search - [59]
MVFQNLLIMerge text.love - [60]
6LJZN727handle chords - [61]
4SR3Z4Y3document the version of LÖVE I've been using - [62]
JZR3QMTNMerge lines.love - [63]
5ZA3BRNYadd state arg to a few functions - [64]
JCXL74WVbring back everything from commit a68647ae22 - [65]
ZTZOO2OQMerge lines.love - [66]
D2GCFTTTclean up repl functionality - [67]
EETIR4GXbugfix: skip over drawings when searching - [68]
OTIBCAUJlove2d scaffold - [69]
UAYCSFSKMerge text.love - [70]
PJ5PQAQErecord support for multiple versions
Change contents
- file deletion: source_text_tests.lua source_text_tests.lua
check_eq(Editor_state.cursor1.pos, 6, '1/cursor:pos')endEditor_state.lines = load_array{'abc ’abd'} -- contains unicode quoteText.redraw_all(Editor_state)Editor_state.cursor1 = {line=1, pos=1}Editor_state.screen_top1 = {line=1, pos=1}Editor_state.screen_bottom1 = {}edit.draw(Editor_state)-- search upwards for a stringedit.run_after_keychord(Editor_state, 'C-f')check_eq(Editor_state.cursor1.pos, 2, '1/cursor:pos')endfunction test_search_wrap_upwards()Editor_state.cursor1 = {line=2, pos=1}Editor_state.screen_top1 = {line=1, pos=1}Editor_state.screen_bottom1 = {}edit.draw(Editor_state)-- search for a stringedit.run_after_keychord(Editor_state, 'C-f')Editor_state.lines = load_array{'’abc', 'def'} -- contains unicode quote in first lineText.redraw_all(Editor_state)check_eq(Editor_state.cursor1.pos, 2, '2/cursor:pos')endfunction test_search_wrap()Editor_state.cursor1 = {line=2, pos=1}Editor_state.screen_top1 = {line=1, pos=1}Editor_state.screen_bottom1 = {}edit.draw(Editor_state)-- search for a stringedit.run_after_keychord(Editor_state, 'C-f')Editor_state.lines = load_array{'’abc', 'abd'} -- contains unicode quoteText.redraw_all(Editor_state)check_eq(Editor_state.cursor1.pos, 2, '2/cursor:pos')endfunction test_search_upwards()Editor_state.lines = load_array{'```lines', '```', 'def', 'ghi', '’deg'} -- contains unicode quote in final lineText.redraw_all(Editor_state)Editor_state.cursor1 = {line=1, pos=1}Editor_state.screen_top1 = {line=1, pos=1}Editor_state.screen_bottom1 = {}edit.draw(Editor_state)-- search for a stringedit.run_after_keychord(Editor_state, 'C-f') - edit in search.lua at line 21
local pos = find(State.lines[State.cursor1.line].data, State.search_term, State.cursor1.pos, --[[literal]] true) - edit in search.lua at line 31[4.211]→[4.1152:1251](∅→∅),[4.211]→[4.1152:1251](∅→∅),[4.219]→[4.1252:1294](∅→∅),[4.219]→[4.1252:1294](∅→∅)
pos = find(State.lines[i].data, State.search_term, --[[from start]] nil, --[[literal]] true)State.cursor1 = {line=i, pos=pos} - edit in search.lua at line 42[4.368]→[4.1295:1394](∅→∅),[4.368]→[4.1295:1394](∅→∅),[4.50207]→[4.1395:1437](∅→∅),[4.50207]→[4.1395:1437](∅→∅)
pos = find(State.lines[i].data, State.search_term, --[[from start]] nil, --[[literal]] true)State.cursor1 = {line=i, pos=pos} - edit in search.lua at line 52
pos = find(State.lines[State.cursor1.line].data, State.search_term, --[[from start]] nil, --[[literal]] true) - edit in search.lua at line 74
local pos = rfind(State.lines[State.cursor1.line].data, State.search_term, State.cursor1.pos-1, --[[literal]] true) - edit in search.lua at line 84[4.1238]→[4.1672:1770](∅→∅),[4.1238]→[4.1672:1770](∅→∅),[4.51016]→[4.1771:1813](∅→∅),[4.51016]→[4.1771:1813](∅→∅)
pos = rfind(State.lines[i].data, State.search_term, --[[from end]] nil, --[[literal]] true)State.cursor1 = {line=i, pos=pos} - edit in search.lua at line 95[4.1411]→[4.1814:1912](∅→∅),[4.1411]→[4.1814:1912](∅→∅),[4.51247]→[4.1913:1955](∅→∅),[4.51247]→[4.1913:1955](∅→∅)
pos = rfind(State.lines[i].data, State.search_term, --[[from end]] nil, --[[literal]] true)State.cursor1 = {line=i, pos=pos} - edit in search.lua at line 105
pos = rfind(State.lines[State.cursor1.line].data, State.search_term, --[[from end]] nil, --[[literal]] true)