|
|
94a3d8eeb4
|
done implementing 'helpInsert' for BRANCH case (need to imlement the LEAF case next)
|
2025-12-01 13:09:46 +00:00 |
|
|
|
780aefae34
|
begin implementing function to insert into PersistentVector.t
|
2025-12-01 12:24:45 +00:00 |
|
|
|
8fdc710db4
|
begin parsing right-arrow in normal mode, for normal mode commands
|
2025-11-25 21:37:09 +00:00 |
|
|
|
d60e8bf7aa
|
add todo note to implement yh/yj/yk/yl motions (yank according to h/j/k/l motions)
|
2025-11-23 23:44:24 +00:00 |
|
|
|
eefe5221ba
|
begin parsing left arrow in normal mode
|
2025-11-23 23:19:31 +00:00 |
|
|
|
766945ac88
|
remove some dead code
|
2025-10-19 14:32:57 +01:00 |
|
|
|
7d1272180b
|
remove 'Cursor.tillPrevChr', replacing usages of that function with 'Cursor.toPrevChr'
|
2025-10-19 14:30:26 +01:00 |
|
|
|
60ec24453f
|
reimplement 'yt<char>' motion to use 'Cursor.toNextChr'
|
2025-10-18 19:55:53 +01:00 |
|
|
|
9f53c5549a
|
rename 'Cursor.toNextChrNew' function to 'Cursor.toNextChr', and update usages to change the name as well.
|
2025-10-18 15:17:26 +01:00 |
|
|
|
e07f21d6f4
|
remove usages of 'Cursor.toNextChr' and delete it
|
2025-10-18 15:14:41 +01:00 |
|
|
|
ee96419901
|
repace usage of 'Cursor.toNextChr' with 'Cursor.toNextChrNew' ins make-normal-delete.sml
|
2025-10-18 15:07:14 +01:00 |
|
|
|
d7adae374f
|
reimplement 'dt' motion
|
2025-10-18 14:59:37 +01:00 |
|
|
|
bc44c7bcd0
|
add another test for 'df<char>' motion, checking that we leave a newline behind if the whole buffer is deleted
|
2025-10-18 14:29:20 +01:00 |
|
|
|
5d00da2cbb
|
reimplement 'df' motion as per previous commits, and add a new test for 'df' motion to check that cursor does not land on a 'newline following a non-newline' position, after deleting using 'df<char>'
|
2025-10-18 14:24:16 +01:00 |
|
|
|
239aaacfc5
|
reimplement 't' movement motion the same way that 'f' movement motion was reimplemented in previous commit
|
2025-10-18 14:05:25 +01:00 |
|
|
|
e44eae6d46
|
reimplement 'f' move motion more efficiently, not leaving the LineGap.t data structure while iterating to next count
|
2025-10-18 14:01:06 +01:00 |
|
|
|
05961a460c
|
adjust colours to be same as 'morning' theme in neovim
|
2025-10-17 23:37:09 +01:00 |
|
|
|
111e0cf66d
|
remove usage of concurrent ml, deciding that we prefer to run everything in the main thread instead
|
2025-10-17 23:08:16 +01:00 |
|
|
|
b8beeaaa60
|
add some more tests for 'df<char' motion, and fix implementation to pass those tests (if our cursor is at the same position after calling 'fMove', then exit the loop to find the next occurrence of <char>)
|
2025-10-17 16:19:17 +01:00 |
|
|
|
c4c6634d79
|
add 'D' motion, which does the same thing as 'd$' (these two aliases exist in Vim too, to do the same thing)
|
2025-10-16 15:02:45 +01:00 |
|
|
|
7676556513
|
fix failing test for 'd$' motion, which means completing tests for 'd$' motion too
|
2025-10-16 12:07:27 +01:00 |
|
|
|
c2eaa5537c
|
modify 'd$' implementation to pass failing test (we don't want to delete newline at end of line, so we don't do that now)
|
2025-10-16 11:09:20 +01:00 |
|
|
|
a855cecd25
|
implement 'dG' motion (need to test it next)
|
2025-10-16 01:13:14 +01:00 |
|
|
|
82c1d48c6f
|
add tests for 'dgg' motion
|
2025-10-15 15:06:04 +01:00 |
|
|
|
60b6cc6d6d
|
better naming of functions to create search/char highlight
|
2025-10-15 10:01:50 +01:00 |
|
|
|
e2ed022ccc
|
clearer names for colour-related fields in text-builder-utils.sml
|
2025-10-15 09:55:36 +01:00 |
|
|
|
999a35cb8b
|
fix failing test for 'dge' motion: if the deletion takes us to a newliune that follows a non-newline-character, we should decrement the cursor to be on the non-newline-character
|
2025-10-14 12:31:18 +01:00 |
|
|
|
22a8b807d2
|
handle edge case when building dfa from a string, where an exception was raised when our search regex contains an alternation where the second alternation is a substring of the first alternation, and add a test for it to make sure that it passes
|
2025-10-14 02:24:45 +01:00 |
|
|
|
be7a9b3035
|
add minimal modifications to implementation of 'dge' motion, so that failing test for 'dge' motion passes
|
2025-10-13 22:08:33 +01:00 |
|
|
|
ca2c2f438c
|
when adding to followset in ONE_OR_MORE case, make sure we add the child to the followset as well
|
2025-10-12 00:32:55 +01:00 |
|
|
|
ce3470e612
|
fix bug in regex-test: dfa-gen.sml should add the position of the endMarker to the followSet as well
|
2025-10-12 00:22:14 +01:00 |
|
|
|
7f1f1f7bdc
|
at end of char loop, track if length of dstate changed. If it did not, that means that we have encountered a loop that is at the end; thus, we should add the endMarker
|
2025-10-11 13:39:28 +01:00 |
|
|
|
b2931753d0
|
make dfa-gen.sml compile again, with parity before reimplementing it
|
2025-10-11 13:23:44 +01:00 |
|
|
|
96f0afc2b2
|
attempt at fixing dfa-gen to convert properly
|
2025-10-11 11:32:30 +01:00 |
|
|
|
a44afca40b
|
checkpoint for reimplementing dfa-gen.sml
|
2025-10-10 11:54:34 +01:00 |
|
|
|
5a43954aef
|
checkpoint
|
2025-10-10 04:59:32 +01:00 |
|
|
|
244d0ce26d
|
begin attempt to compute followpos properly
|
2025-10-10 04:44:18 +01:00 |
|
|
|
bdfca17b5a
|
implement function to insert a list to a pos
|
2025-10-10 04:00:34 +01:00 |
|
|
|
58c3e65fdd
|
add list of follows to leaves in regex parse tree (only changed data type; need to populate follows list later)
|
2025-10-10 03:49:09 +01:00 |
|
|
|
108a30ea79
|
add utility function to insert from a list into a set
|
2025-10-10 03:29:52 +01:00 |
|
|
|
88eb30dbf2
|
done caching firstpos and lastpos, and using the cached data
|
2025-10-10 01:56:54 +01:00 |
|
|
|
6e646bdffa
|
begin computing firstpos and lastpos during parsing
|
2025-10-10 01:43:24 +01:00 |
|
|
|
3197315478
|
fix failing tests for escaping regex metacharacters
|
2025-10-09 06:22:21 +01:00 |
|
|
|
a5fec6f1a2
|
add tests for escape sequences
|
2025-10-09 06:06:07 +01:00 |
|
|
|
250ae239be
|
begin adding tests for regex
|
2025-10-09 05:34:32 +01:00 |
|
|
|
70215fbc0a
|
done implementing functionality to get PersistentVector.prevMatch working. We use the call stack to try the node at the previous index if we receive an invalid state from the recursive call.
|
2025-10-08 11:10:06 +01:00 |
|
|
|
088c5c3d98
|
checkpoint while implementing prevMatch functionality
|
2025-10-08 10:39:49 +01:00 |
|
|
|
0de7a9278a
|
progress implementing help-prev-match for vector
|
2025-10-08 10:27:19 +01:00 |
|
|
|
3b823d7ae6
|
delete 'nextMatch' function in search-list.sml, and refactor other code to use alternative function
|
2025-10-08 08:16:20 +01:00 |
|
|
|
8941ce9f89
|
reimplement functionality to search forwards using 'n' command
|
2025-10-08 08:10:51 +01:00 |
|