|
|
02086e0922
|
code outline of a function to extend an existing match in search-list.sml.
|
2026-02-06 20:30:07 +00:00 |
|
|
|
11a632556c
|
progress refactoring delete functions in fcore/normal-mode/make-normal-delete.sml so that searchList is incrementally rebuilt when buffer is deleted from
|
2026-02-06 09:41:39 +00:00 |
|
|
|
2ee963a3d8
|
done implementing tests for yank. Also simplify 'NormalDelete.deleteLineDown' and 'NormalYank.yankLineDown' functions by removing an if-branch which can never trigger. (The code path can only be executed in the event that 'endLineIdx' is on a newline, and there is an if-expression in that branch checking whether 'endLineIdx' is on a newline, which is redundant.)
|
2026-01-31 22:20:52 +00:00 |
|
|
|
000cf4ab62
|
implement 'yj' motion. (Next: add tests for it.)
|
2026-01-31 12:05:16 +00:00 |
|
|
|
faa15866f8
|
seems like 'NormalYankDelete' functions need to yank one character more than the deletion range, so implement that, and make note to add tests for that module
|
2026-01-23 21:08:12 +00:00 |
|
|
|
8b46f1edfc
|
make sure that characters sent from RGFW to mlton char callback are shifted if shift is held
|
2026-01-23 21:05:12 +00:00 |
|
|
|
238e6f8907
|
mostly done implementing callbacks for rgfw
|
2026-01-23 20:53:37 +00:00 |
|
|
|
a89bb8fa5f
|
consume events in RGFW loop. (Next: react to input events.)
|
2026-01-23 11:13:33 +00:00 |
|
|
|
b4573441fb
|
progrfess scaffolding rgfw (next: consume events and add callbacks for events)
|
2026-01-23 10:55:43 +00:00 |
|
|
|
d0f9220cfe
|
progress binding RGFW and making RGFW shell
|
2026-01-22 21:02:22 +00:00 |
|
|
|
96fe9cea0d
|
update todo.md notes with next steps to focus on
|
2026-01-20 09:13:03 +00:00 |
|
|
|
6f89fbc89c
|
begin binding gamepad functions from GLFW to SML
|
2026-01-19 13:23:47 +00:00 |
|
|
|
c6dee6e9f9
|
implement function that deletes from both LineGap.t and SearchList, maintaining an exact match between both
|
2026-01-18 09:59:00 +00:00 |
|
|
|
29d84a9f9f
|
done adding tests for 'PersistentVector.delete' function
|
2026-01-18 08:08:45 +00:00 |
|
|
|
185ef3fc12
|
done implementing 'PersistentVector.merge', which means that 'PersistentVector.delete' is now complete. (Todo: test 'PersistentVector.delete'.)
|
2026-01-18 06:58:41 +00:00 |
|
|
|
66d672505a
|
fix calculation of number to decrement by in 'PersistentVector.delete', after additional test showed that calculation resulted in incorrect metadata. (Todo: just implement function to merge left and right subtrees.)
|
2026-01-18 00:27:03 +00:00 |
|
|
|
08abb43e3b
|
added tests for 'PersistentVector.splitLeft' function
|
2026-01-16 21:30:56 +00:00 |
|
|
|
559b254b0c
|
initial implementation of 'PersistentVector.splitLeft' function
|
2026-01-15 06:13:38 +00:00 |
|
|
|
e1077b7780
|
add tests for 'yk' motion (next: implement 'yj' motion and test it)
|
2026-01-14 04:49:41 +00:00 |
|
|
|
66f1fb0b5e
|
implement 'yk' motion (next: add tests for it)
|
2026-01-13 23:54:48 +00:00 |
|
|
|
f1dd822d5b
|
add tests for 'yl' motion
|
2026-01-07 07:52:06 +00:00 |
|
|
|
8b0031ca71
|
add tests for 'yh' motion
|
2026-01-07 06:33:10 +00:00 |
|
|
|
adb8757ed8
|
implemented 'yh' motion (yank left)
|
2026-01-05 10:39:42 +00:00 |
|
|
|
d2f32c1512
|
add tests for 'da<symbol>' motion, finishing all delete-tests
|
2026-01-03 08:39:41 +00:00 |
|
|
|
ba6798f476
|
make implementation of 'di<symbol>' more robust (we check if the cursor is inside a symbol-pair before checking if there is a symbol pair after the cursor), and add tests for 'di<symbol>' motion
|
2026-01-03 08:09:08 +00:00 |
|
|
|
bce2a5a22d
|
finish reimplementing 'di<symbol>' and 'da<symbol>' motions so that they align more closely with the behaviour of Vim. (Todo: test them next)
|
2026-01-02 20:07:36 +00:00 |
|
|
|
8fdf2411a8
|
add tests for 'd/home/humza/Downloads/sml/shf/todo.md' motion
|
2026-01-01 18:47:38 +00:00 |
|
|
|
54ef305314
|
reimplement d% motion so that it first searches for the next occurrence of a pair-character before trying to match it. (Next: add tests for d% motion.)
|
2026-01-01 07:05:06 +00:00 |
|
|
|
44dbe1ffb0
|
reimplement '/home/humza/Downloads/sml/shf/todo.md' motion so that it has the same behaviour as Vim. (If the cursor is not at a pair character, then check after the cursor to see if we find a pair-character there. If some location after the cursor has a pair-character, then move the cursor to it and find the pair of the character, if any.)
|
2026-01-01 06:58:30 +00:00 |
|
|
|
a65b950b77
|
add tests for 'daW' motion
|
2025-12-31 11:44:42 +00:00 |
|
|
|
99bb3b257e
|
done with delete-around-word ('daw') tests. Next: delete-around-WORD ('daW') tests.
|
2025-12-28 01:37:29 +00:00 |
|
|
|
9e809e146a
|
done adding tests for when cursor is on a space, for 'daw' motion
|
2025-12-27 02:41:13 +00:00 |
|
|
|
d1b865bda8
|
implmenet 'daW' motion (next: test it)
|
2025-12-13 03:57:21 +00:00 |
|
|
|
7130fe7dda
|
add tests for 'diW' motion, and fix a bug in the implementation (contiguous spaces were not deleted properly)
|
2025-12-12 20:08:53 +00:00 |
|
|
|
11cb00860b
|
reimplemen 'diw' motion to fix failing test
|
2025-12-12 11:32:03 +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 |
|
|
|
308c28c709
|
done adding tests for 'dT<char>' motion
|
2025-10-19 14:52:04 +01:00 |
|
|
|
0799128f7c
|
add tests for 'dt<char>' motion
|
2025-10-17 16:24:43 +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 |
|
|
|
52f8e2307c
|
add tests for 'dN' motion
|
2025-10-16 21:28:18 +01:00 |
|
|
|
ad506c0c0a
|
add tests for 'dn' motion
|
2025-10-16 21:21:09 +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 |
|
|
|
3e1e80cd93
|
remove 'dd' tests from todo list, because we already have tests for 'dd' motion
|
2025-10-16 14:49:27 +01:00 |
|
|
|
2667e58a26
|
done adding tests for d^ motion
|
2025-10-16 13:19:01 +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 |
|
|
|
abde4dc8a6
|
add tests for 'dG' motion
|
2025-10-16 01:21:30 +01:00 |
|
|
|
a855cecd25
|
implement 'dG' motion (need to test it next)
|
2025-10-16 01:13:14 +01:00 |
|
|
|
5fcee88911
|
add tests for 'd0' motion
|
2025-10-15 22:38:15 +01:00 |
|
|
|
e1347da0e1
|
add to-do list of things to do next
|
2025-10-15 15:29:19 +01:00 |
|