Commit Graph

170 Commits

Author SHA1 Message Date
66e1f63d41 Prompt now only redraws on completed jobs and new commands
Tab completion now finds env var names as well as internally set names
2026-02-25 16:48:49 -05:00
6651f86ce3 fixed commands not getting hashed through symlinks 2026-02-25 16:03:42 -05:00
86c9fe281a Implemented proper behavior for deleting/yanking lines into registers and putting them 2026-02-25 15:54:31 -05:00
22adbce9e4 Various line editor fixes and optimizations 2026-02-25 15:43:08 -05:00
8d694d8281 Fixed system messages printing an extra line for no reason 2026-02-25 02:10:57 -05:00
953b387b44 Added job count prompt escape code, '\j' 2026-02-25 01:56:24 -05:00
9c8a5713db Added PSR environment variable for drawing a string on the right side of the prompt
Pending normal mode sequences are now shown in the top right of the prompt
2026-02-25 01:13:12 -05:00
2da197361a Updated README.md 2026-02-24 18:30:38 -05:00
e6242c4d8a changed package name from 'fern' to 'shed' 2026-02-24 18:02:13 -05:00
03a435c03f implemented builtins: readonly, unset, true, false, and : (no-op) 2026-02-24 17:57:09 -05:00
f1ecec88bd flow control keywords are now highlighted purple 2026-02-24 16:22:59 -05:00
16f47ad225 Fixed functions not properly forking a new process when executed in a pipeline 2026-02-24 16:03:22 -05:00
b71fca22ec subshells now fork a new process 2026-02-24 15:15:30 -05:00
930d16c5d4 Fixed 'command' builtin executing shell functions with same name as the command 2026-02-24 14:54:36 -05:00
49c6d688b6 fixed new crash caused by recent refactor 2026-02-24 14:18:36 -05:00
0fc283e966 bumped version to 0.3.0 2026-02-24 13:54:41 -05:00
622e9f4a1e Refactored internals for builtins inside of pipelines 2026-02-24 10:54:24 -05:00
cab7a0fea7 Ran the codebase through rustfmt 2026-02-23 23:32:46 -05:00
367218d3e8 Fixed command substitutions not expanding when used as a command name 2026-02-23 23:32:12 -05:00
62d651eb8d Fixed hint-related regression caused by recent history logic changes 2026-02-23 21:25:27 -05:00
55d47f6d90 Added more accurate logic for @ expansion 2026-02-23 21:16:29 -05:00
f55e204c82 autocd will now prioritize running a command if a directory name is entered that matches the name of a command 2026-02-23 21:05:59 -05:00
05f731b8c5 Added auto-indent to multi-line editing -m Added shopt for enabling/disabling auto-indent -m Fixed some multi-line editing render bugs -m Scrolling up in history now preserves undo/redo history in the pending command 2026-02-23 20:52:33 -05:00
4f834e9709 Fixed some hangs in the lexer 2026-02-23 19:21:57 -05:00
d8fda01a5c Added new scopestack tests 2026-02-23 19:11:59 -05:00
fdb182a0c5 Fixed mutation of variables created by the local command 2026-02-23 19:04:31 -05:00
aed0e6fb8c - fixed 'I' command in normal mode not moving to exact start of line
- Added disown builtin
- Fixed job table not hanging up child processes on exit
- Added target architecture and os to --version output
- Added local builtin for creating variables scoped to functions
2026-02-23 16:10:49 -05:00
1a44a783e0 - fixed 'I' command in normal mode not moving to exact start of line 2026-02-23 14:42:53 -05:00
96425fb48f fixed error messages in shopt.rs 2026-02-23 14:15:55 -05:00
34b780c644 changed bell style option to a simple boolean 2026-02-23 14:11:41 -05:00
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