Commit Graph

177 Commits

Author SHA1 Message Date
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
3a0b171058 work on implementing screen-wise motions 2025-06-01 02:18:22 -04:00
ff05dd0e3b implemented rot13 with 'g?' 2025-05-31 01:52:27 -04:00
238e1540fe improved escape sequence parsing for Terminal 2025-05-31 01:07:41 -04:00
1c9790a517 implemented 'gv' to select the previously selected visual selection 2025-05-30 20:15:41 -04:00
2ea91555f4 work on implementing visual mode 2025-05-30 19:06:09 -04:00
f8ba49ade3 started work on text objects
pressing l in normal mode now accepts hints
2025-05-30 13:17:58 -04:00
f87913697f implemented autosuggestions for the line editor 2025-05-30 01:12:18 -04:00
ded3f02cf6 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
2f250ade62 Merging fern line editor implementation
Implement a line editor instead of using Rustyline
2025-05-28 20:32:43 -04:00
53799f42b3 implemented history for the line editor 2025-05-28 20:24:09 -04:00
038d9ff144 early implementation of inserting verbatim with ctrl+v 2025-05-28 03:21:51 -04:00
5cef14f568 early support for visual line motions like gk and gj 2025-05-28 02:45:16 -04:00
ee07c5156a implemented more vi commands
implemented replace mode

re-implemented undo and redo
2025-05-28 01:01:49 -04:00