Commit Graph

249 Commits

Author SHA1 Message Date
cfdd208b0e Merge pull request #2 from km-clay/readline_refactor
Readline refactor
2025-06-09 02:34:17 -04:00
ff0207a27f implemented quote/delimiter text objects 2025-06-09 02:29:34 -04:00
2c14e4c202 re-implemented command history and hinting 2025-06-08 01:53:13 -04:00
80eb8d278a Improved logical accuracy of Ctrl+W in insert mode
Moved test libraries to dev-dependencies

Implemented some more motion types

Implemented ToLower, ToUpper, JoinLines, Indent, Undo, and Redo verbs

'O' and 'o' operators now behave correctly

Added many more unit tests for the readline module
2025-06-07 23:45:51 -04:00
3cfc49d638 finally found a good way to select line spans 2025-06-07 03:50:35 -04:00
4472478703 work on linewise logic 2025-06-06 23:24:10 -04:00
245fe53044 implemented some more editor tests 2025-06-05 03:33:08 -04:00
f57cf625ef more work on re-implementing the readline module 2025-06-05 01:48:44 -04:00
2c6577ad06 copied rustyline's homework 2025-06-02 03:18:13 -04:00
92482da8a7 work on implementing screen-wise motions 2025-06-01 02:18:22 -04:00
275d902849 implemented rot13 with 'g?' 2025-05-31 01:52:27 -04:00
25ec8c72be improved escape sequence parsing for Terminal 2025-05-31 01:07:41 -04:00
e7d8b98a73 implemented 'gv' to select the previously selected visual selection 2025-05-30 20:15:41 -04:00
09767c9682 work on implementing visual mode 2025-05-30 19:06:09 -04:00
6d9c876640 started work on text objects
pressing l in normal mode now accepts hints
2025-05-30 13:17:58 -04:00
8bdc21c8d5 implemented autosuggestions for the line editor 2025-05-30 01:12:18 -04:00
220f636ebd removed placeholder text in prompt
cd no longer panics if the given directory doesn't exist (wtf?)
2025-05-29 01:29:25 -04:00
4465a4f6f6 Merging fern line editor implementation
Implement a line editor instead of using Rustyline
2025-05-28 20:32:43 -04:00
8cacbfdbdd implemented history for the line editor 2025-05-28 20:24:09 -04:00
f67543c111 early implementation of inserting verbatim with ctrl+v 2025-05-28 03:21:51 -04:00
d15903fea1 early support for visual line motions like gk and gj 2025-05-28 02:45:16 -04:00
1c33578478 implemented more vi commands
implemented replace mode

re-implemented undo and redo
2025-05-28 01:01:49 -04:00
0e95e006d8 implemented proper cursor placement for line editor 2025-05-27 03:32:08 -04:00
1e3715d353 prompt and buffer drawing appears functional 2025-05-27 02:41:19 -04:00
45b7a16cae about to refactor the line buffer 2025-05-23 10:27:11 -04:00
c0eff4a9a3 implemented verb and motion repetition 2025-05-23 09:47:05 -04:00
9db6137934 more work on vi stuff 2025-05-23 02:14:56 -04:00
ac170d31c8 further work on implementing vi features 2025-05-22 03:36:27 -04:00
47759a05d4 continued work on vi line editing 2025-05-20 18:03:43 -04:00
25534d4cd9 more work on vi line editing 2025-05-20 02:55:41 -04:00
b30de3232b Fully implemented vi-style editor commands 2025-05-19 16:08:21 -04:00
4af31ba8ef Reduced the amount of time that file redirections stay open 2025-05-19 00:03:50 -04:00
1b2fa49458 forgot snapshot files in git history 2025-05-18 14:52:01 -04:00
56f674415c added snapshots to gitignore 2025-05-18 14:50:31 -04:00
73e7c0efc4 split readline into it's own module directory 2025-05-18 14:42:00 -04:00
f51dc9e3b8 implemented command system 2025-05-15 11:54:59 -04:00
14f9b6dca4 initial commit for fern's readline impl 2025-05-15 03:35:41 -04:00
94e22d68f3 about to implement readline myself 2025-05-15 00:53:39 -04:00
c9414c8ce3 properly implemented $(( )) substitution 2025-05-14 16:35:04 -04:00
6006244739 more unit tests, better highlighting 2025-05-13 20:22:25 -04:00
de6e0166c5 implemented support for running scripts 2025-05-13 13:48:18 -04:00
df17ecdfb8 added arithmetic substitution 2025-05-13 13:08:53 -04:00
25e85edab0 Added regex to [[ ]] tests 2025-05-13 00:48:19 -04:00
952298ed11 implemented unit tests for variable parameter expansions. currently all green 2025-05-12 17:00:07 -04:00
3ce8f6d53d improved hinting 2025-05-12 16:32:44 -04:00
bbb8162201 implemented most variable parameter expansion builtins 2025-05-12 16:14:06 -04:00
2666670939 began work on implementing those weird variable string op things 2025-05-12 01:04:53 -04:00
cc8d384704 About to rework lexer and parser return types 2025-05-09 01:00:36 -04:00
18d0b669b3 Parser tweaks 2025-05-08 21:21:23 -04:00
7523944d63 Early implementation of syntax highlighting
Various bug fixes related to command substitution
2025-05-08 21:21:23 -04:00