Commit Graph

140 Commits

Author SHA1 Message Date
632e7b6f00 line editor now sends bell on no-op edits 2026-02-20 14:15:25 -05:00
3b515c42a6 Highlighter now handles highlighting visual mode selections instead of LineBuf 2026-02-20 14:03:42 -05:00
6aa5521562 Cursor now moved to end of the line while scrolling history, original position in pending command still remembered -m Undo now moves the cursor to it's original position in normal mode 2026-02-20 12:33:18 -05:00
13cf5cf032 visual mode deletions now properly yank deleted text into the selected register 2026-02-20 12:18:34 -05:00
88c0945e47 Implemented the exec builtin
Fixed readline and terminal interactions using stdin instead of /dev/tty
2026-02-20 12:17:48 -05:00
9b8c8d704b implemented the pushd, popd, and dirs builtins 2026-02-20 01:29:40 -05:00
081f12da5b arg underlining now only affects the last argument 2026-02-19 21:52:29 -05:00
d61958d2af fixed highlighting for double globs like 'dir/**/*.rs' 2026-02-19 21:43:49 -05:00
74988166f0 command arguments are now underlined if they match an existing path -m ran rustfmt on the entire codebase 2026-02-19 21:32:03 -05:00
959ea9346a Fixed some weirdness in the logic for scrolling through command history 2026-02-19 20:12:51 -05:00
1d4c177c64 handled some unwraps in cd
error reporting now blames the function call span instead of the errored command inside the function
2026-02-19 18:27:51 -05:00
bcd0306ad6 fixed alias and export renderers writing values in single quotes 2026-02-19 18:19:49 -05:00
32cad70d98 fixed bug in .fernrc renderer in hm module 2026-02-19 18:09:57 -05:00
54b20eea75 added aliases and env vars to home manager module 2026-02-19 18:02:58 -05:00
9836c79feb implemented nixos and home-manager nix modules for the flake 2026-02-19 17:30:21 -05:00
744693a89d implemented the trap builtin 2026-02-19 16:39:18 -05:00
ff00affc90 bumped version to 0.2.0 2026-02-19 14:27:21 -05:00
4ea08879a1 fixed the $0 parameter not being populated correctly 2026-02-19 14:24:55 -05:00
c8fe7b7978 Implemented completion for variable names
Fixed 'w' and 'b' motions in vi mode stopping on underscores
2026-02-19 10:13:04 -05:00
9ec4ba85ea fixed backslashes not being stripped for special characters in double quotes 2026-02-19 00:33:02 -05:00
abe602c8ce added shellPath to flake.nix package 2026-02-19 00:20:18 -05:00
763b8ea73e updated .gitignore 2026-02-19 00:01:31 -05:00
7d8faa51cb added a bunch of tests 2026-02-18 23:54:25 -05:00
07f8688758 Added a flake.nix 2026-02-18 23:10:32 -05:00
7d0614943c Tab completion has been implemented
more small highlighter tune ups

2>&1 style redirections now work properly
2026-02-18 21:53:36 -05:00
b7c8850493 more highlighter tune-ups 2026-02-18 16:29:40 -05:00
67674cf5b5 Some highlighter bug fixes 2026-02-18 11:29:16 -05:00
8068b43146 Implemented syntax highlighting 2026-02-18 02:00:45 -05:00
0575616ac2 properly implemented read builtin
fixed bugs related to redirections and compound commands

improved io routing logic
2026-02-17 17:30:21 -05:00
6055f3434d fixed empty arguments being filtered out during word splitting 2026-02-16 19:09:10 -05:00
cefd55e7af migrated polling logic from virtterm branch to main 2026-02-16 18:28:57 -05:00
5ba521e493 Various bugfixes 2026-01-29 19:47:12 -05:00
9fea0430c8 Fixed conditional block parsing not handling command chains 2026-01-29 05:01:26 -05:00
6d6e55375c Various edge case fixes for prompt expansion and command substitution 2026-01-29 04:58:04 -05:00
222e06bee6 Added prompt escape code expansion flag to echo, -p
Added non-formatted runtime to prompt escape codes

Added prompt escape code that expands to the output of a shell function

Reworked internal logic for termios control
2026-01-29 03:46:35 -05:00
4a6a941f1e Fixed logic for EINTR propagation 2026-01-28 20:48:29 -05:00
2c52a3621e renamed fern.rs back to main.rs 2026-01-28 19:57:14 -05:00
ae3c9a0445 Implemented proper variable scoping
Extracted business logic out of signal handler functions

Consolidated state variables into a single struct

Implemented var types
2026-01-28 19:30:48 -05:00
5aead4fcdc Added rustfmt.toml, formatted codebase 2025-08-12 13:58:25 -04:00
d2b3cd51e0 implemented support for the 'sentence' text object in the line editor 2025-06-12 04:52:51 -04:00
4372cf3820 Work on implementing more text objects 2025-06-12 03:15:52 -04:00
2295669382 Merge pull request #2 from km-clay/readline_refactor
Readline refactor
2025-06-09 02:34:17 -04:00
1a270ae195 implemented quote/delimiter text objects 2025-06-09 02:29:34 -04:00
08c86009a6 re-implemented command history and hinting 2025-06-08 01:53:13 -04:00
518648be24 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
b1b1b4b76f finally found a good way to select line spans 2025-06-07 03:50:35 -04:00
c9098b5805 work on linewise logic 2025-06-06 23:24:10 -04:00
73e05a6635 implemented some more editor tests 2025-06-05 03:33:08 -04:00
c465251976 more work on re-implementing the readline module 2025-06-05 01:48:44 -04:00
72f7788abc copied rustyline's homework 2025-06-02 03:18:13 -04:00