|
|
01213fb2fb
|
fix bug with tillNextChr which would place cursor on a newline
|
2024-10-26 16:20:24 +01:00 |
|
|
|
62a9aaaaab
|
progress with moving cursor to specific char (vi's 't' command and vi's 'f' command)
|
2024-10-26 10:47:45 +01:00 |
|
|
|
17a69720fd
|
add function to go to first non-space character in line
|
2024-10-25 21:44:46 +01:00 |
|
|
|
7a62ad3afc
|
pass higher order function to word motions, for less code duplication
|
2024-10-25 21:27:58 +01:00 |
|
|
|
a198840961
|
add WORD motions (as opposed to word motions)
|
2024-10-25 21:01:48 +01:00 |
|
|
|
c2ea6e5e04
|
just formatting cursor.sml
|
2024-10-25 15:47:39 +01:00 |
|
|
|
b79a8696f5
|
refactor many functions in cursor.sml so they don't need to be mutually recursive
|
2024-10-25 15:25:39 +01:00 |
|
|
|
8b3bd97af3
|
fully remove 'word_type' datatype from cursor.sml
|
2024-10-24 13:44:12 +01:00 |
|
|
|
5534fd3645
|
refactor another cursor.sml function
|
2024-10-24 13:30:02 +01:00 |
|
|
|
50a0a3e31b
|
begin preparation to remove 'word_type' datatype in cursor.sml, which will simplify implementation of word motions
|
2024-10-24 13:13:49 +01:00 |
|
|
|
1f9b01c858
|
implement equivalent of vi's 'e' command
|
2024-10-24 12:29:43 +01:00 |
|
|
|
15ff3a111a
|
implement equivalent of vi's 'b' cursor motion
|
2024-10-24 06:26:40 +01:00 |
|
|
|
80cdcdccd6
|
implement nextWord in cursor.sml (vi's lowercase w)
|
2024-10-23 04:31:34 +01:00 |
|
|
|
a454524ecc
|
reimplement part of non-recursive start function 'viK' in cursor.sml
|
2024-10-22 09:46:29 +01:00 |
|
|
|
dd71dda9f2
|
in start of cursor.sml's viK function, use vi0 function if cursor is at newline, so there's no need to worry about or track column
|
2024-10-22 07:06:16 +01:00 |
|
|
|
b22222cf5d
|
implement vi0 and viDlr (viDlr = function called when pressing $), which both work fine
|
2024-10-21 03:04:47 +01:00 |
|
|
|
e08f2c4f77
|
add implementation of viK, completing hjkl movement keys
|
2024-10-21 01:34:54 +01:00 |
|
|
|
d8e1c9d0fd
|
in cursor.sml's 'viJ' function, make sure to call helpViJString with nest str hd/tl, when strIdx is in the strTl
|
2024-10-20 21:58:58 +01:00 |
|
|
|
6b3d322c1c
|
progress with viJ to move cursor downwards
|
2024-10-20 21:30:06 +01:00 |
|
|
|
47f4d452fe
|
amend error in cursor.sml's 'getCursorColumn' function, where we may need to check tail of string to start convert cursorIdx to relative strIdx
|
2024-10-19 23:04:26 +01:00 |
|
|
|
e0f44fc8ea
|
better handling of double linebreaks in cursor.sml's viH function
|
2024-10-19 07:24:27 +01:00 |
|
|
|
7fd59c734a
|
add function to retrieve column that cursor is on, relative to line
|
2024-10-19 07:03:32 +01:00 |
|
|
|
92b834427c
|
code 'viH' function to move leftwards by one char
|
2024-10-18 00:40:43 +01:00 |
|
|
|
19073cb56c
|
improve code to move rightwards in cursor.sml (making it clearer with comments), and improve code to draw cursor at newline in text=builder.sml
|
2024-10-17 08:40:28 +01:00 |
|
|
|
0299a9e6b2
|
draw cursor at newline linebreaks (only \n though and not \r\n)
|
2024-10-17 06:25:43 +01:00 |
|
|
|
8fb362ba8b
|
handle \r\n pair in 'viL' function
|
2024-10-17 04:03:45 +01:00 |
|
|
|
766ab6787c
|
in viL function, use 'cursorIdx + 1' instead of 'bufferIdx + ...' because what we want is to increment the cursor by one index, rather than to move the cursor to the end of the hd
|
2024-10-17 03:17:57 +01:00 |
|
|
|
428e5f2ecd
|
complete implementation of rightwards navigation (viL)
|
2024-10-17 02:57:26 +01:00 |
|