Commit Graph

36 Commits

Author SHA1 Message Date
3b6dff3081 begin scaffolding NormalSearchMode (normal mode, except we are searching) 2025-08-31 02:10:57 +01:00
de46376e4e reimplement search list functionality (when building whole search list, not from range) to start from index 0, to get rid of edge cases resulting from reading the string backwards 2025-08-30 23:05:11 +01:00
7497dc7e7a add code for clojure-style persistent vectors 2025-08-30 18:12:47 +01:00
af15b97400 pull in new version of cozette-ascii library, and fix resulting compile errors (which all occurred in text-builder.sml) 2025-08-18 02:17:13 +01:00
850d3b7bcb done refactoring one text builder loop 2025-08-17 19:32:46 +01:00
3e67d90512 progress functorising text builder 2025-08-17 17:15:15 +01:00
14f97ecc57 done refactoring normal mode functions 2025-08-07 18:09:52 +01:00
f63e416e8f move normal-mode deletion functions to their own file 2025-08-07 18:02:47 +01:00
bc188b9175 begin refactoring (split app-update into different files) 2025-08-07 17:41:10 +01:00
704854c80f use concurrency for rebuilding search list after deletion so we don't block main thread on very, very large files 2025-08-07 12:20:57 +01:00
e06a27d5ad delete some dead code 2025-08-06 00:30:50 +01:00
f0f28a1318 clean up some dead code 2025-08-06 00:16:50 +01:00
01369627bf begin reimplementing search list data structure 2025-08-05 13:24:55 +01:00
ce0f700253 abstract exception handler/logger into its own file 2025-08-04 09:03:47 +01:00
528aea59a1 reimplement vi's '$' motion as a DFA, also eliminating a bug that involves double deleteion in the process 2025-08-04 05:37:08 +01:00
8d67c33893 reimplement vi's 'w' command to use ViWordDfa 2025-07-20 16:04:48 +01:00
10b76d98c5 functorise some boilerplate code to start a DFA loop 2025-07-20 09:39:17 +01:00
25fb8bfc5e make DFA for vi next WORD motion, still passing tests 2025-07-20 09:12:23 +01:00
deb24c2063 with cursor movements, instead of passing in functions as parameters (callbacks/higher order functions), functorise the cursor movement functions instead so we can take advantage of defunctorisation and avoid the runtime cost of closures/higher order functions/function pointers 2025-01-09 22:30:51 +00:00
d6c59e140e replace text-builder.sml's 'buildCursor' function with a new 'Rect.lerp' function (which is in fcore/rect.sml) 2024-11-15 21:14:43 +00:00
cac0d02fab initial implementation of building search list 2024-11-15 05:37:53 +00:00
cae9f19787 add search list to app type 2024-11-14 08:12:27 +00:00
8bf0b64ef3 implement insRight function in search-list.sml 2024-11-12 03:05:14 +00:00
287dc5548d progress implementing searchList data structure 2024-11-11 13:23:37 +00:00
308d042deb add functionality to centre text window to cursor 2024-10-30 10:05:16 +00:00
4b1ee33954 begin moving text window when cursor goes off screen (currently, we only move the window when cursor goes backwards but this works fine and as expected) 2024-10-28 09:34:55 +00:00
428e5f2ecd complete implementation of rightwards navigation (viL) 2024-10-17 02:57:26 +01:00
5cc4357cc7 progress drawing cursor 2024-10-09 11:59:41 +01:00
6e4cc9acff a bit of refactoring 2024-10-08 08:53:43 +01:00
b95fc48252 scaffolding for concurrent ml 2024-10-06 09:32:56 +01:00
6766fd1485 a bit of scaffolding to prepare for adding resize callback + message types 2024-10-06 08:18:24 +01:00
de70d31ee1 progress adding function to draw text 2024-10-04 23:23:25 +01:00
ff8d911010 add dependencies to .mlb file 2024-10-04 15:08:47 +01:00
eb0ca122d6 add draw module (very incomplete) 2024-10-01 08:25:12 +01:00
ae8005dceb add shader strings for open gl 2024-09-30 15:46:19 +01:00
c37c8d60e3 init 2024-09-30 13:43:43 +01:00