723bfd8413
- fixed 'I' command in normal mode not moving to exact start of line
2026-02-23 14:42:53 -05:00
d817aed056
fixed error messages in shopt.rs
2026-02-23 14:15:55 -05:00
5a8b7831a8
changed bell style option to a simple boolean
2026-02-23 14:11:41 -05:00
6f334395f7
line editor now sends bell on no-op edits
2026-02-20 14:15:25 -05:00
5721cdb7ca
Highlighter now handles highlighting visual mode selections instead of LineBuf
2026-02-20 14:03:42 -05:00
a0cf2a7edd
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
f0e1e6e2b5
visual mode deletions now properly yank deleted text into the selected register
2026-02-20 12:18:34 -05:00
129390c2da
Implemented the exec builtin
...
Fixed readline and terminal interactions using stdin instead of /dev/tty
2026-02-20 12:17:48 -05:00
2184b9b361
implemented the pushd, popd, and dirs builtins
2026-02-20 01:29:40 -05:00
e8473e82a1
arg underlining now only affects the last argument
2026-02-19 21:52:29 -05:00
886d348d53
fixed highlighting for double globs like 'dir/**/*.rs'
2026-02-19 21:43:49 -05:00
a18a0b622f
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
b668dab522
Fixed some weirdness in the logic for scrolling through command history
2026-02-19 20:12:51 -05:00
18e36622a0
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
934c41714a
implemented nixos and home-manager nix modules for the flake
2026-02-19 17:30:21 -05:00
982d11f21b
implemented the trap builtin
2026-02-19 16:39:18 -05:00
9483477edd
fixed the $0 parameter not being populated correctly
2026-02-19 14:24:55 -05:00
8cb8f20a35
Implemented completion for variable names
...
Fixed 'w' and 'b' motions in vi mode stopping on underscores
2026-02-19 10:13:04 -05:00
0d200ba089
fixed backslashes not being stripped for special characters in double quotes
2026-02-19 00:33:02 -05:00
8354ad400d
added a bunch of tests
2026-02-18 23:54:25 -05:00
3b698628c6
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
01684cf8e5
more highlighter tune-ups
2026-02-18 16:29:40 -05:00
af70266f6a
Some highlighter bug fixes
2026-02-18 11:29:16 -05:00
43b171fab1
Implemented syntax highlighting
2026-02-18 02:00:45 -05:00
87d465034a
properly implemented read builtin
...
fixed bugs related to redirections and compound commands
improved io routing logic
2026-02-17 17:30:21 -05:00
12f36283ca
fixed empty arguments being filtered out during word splitting
2026-02-16 19:09:10 -05:00
142194c100
migrated polling logic from virtterm branch to main
2026-02-16 18:28:57 -05:00
d04dd4bc1e
Various bugfixes
2026-01-29 19:47:12 -05:00
8933153c2b
Fixed conditional block parsing not handling command chains
2026-01-29 05:01:26 -05:00
0e28b7bf49
Various edge case fixes for prompt expansion and command substitution
2026-01-29 04:58:04 -05:00
a4f48abd49
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
70f0e849ba
Fixed logic for EINTR propagation
2026-01-28 20:48:29 -05:00
7f3e1cfcee
renamed fern.rs back to main.rs
2026-01-28 19:57:14 -05:00
ad0e4277cb
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
8ad53f09b3
Added rustfmt.toml, formatted codebase
2025-08-12 13:58:25 -04:00
23fb67aba8
implemented support for the 'sentence' text object in the line editor
2025-06-12 04:52:51 -04:00
dbeeff579d
Work on implementing more text objects
2025-06-12 03:15:52 -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