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
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
744693a89d
implemented the trap builtin
2026-02-19 16:39:18 -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
7d8faa51cb
added a bunch of tests
2026-02-18 23:54:25 -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
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
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
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
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
93d0152d48
implemented proper cursor placement for line editor
2025-05-27 03:32:08 -04:00
98b0e24e27
prompt and buffer drawing appears functional
2025-05-27 02:41:19 -04:00