Commit Graph

13 Commits

Author SHA1 Message Date
307386ffc6 tightened up some logic with indenting and joining lines
added more linebuf tests

extracted all verb match arms into private methods on LineBuf
2026-03-13 19:24:30 -04:00
ae73969969 fixed compiler warnings 2026-03-07 00:37:51 -05:00
fe9fd5c797 Fix function $0 param, scope positional args locally, follow symlinks in completion, expose SHED_VI_MODE variable, and clean up test helpers 2026-03-07 00:23:05 -05:00
b137c38e92 completely rewrote test suite for top level src files and all builtin files 2026-03-06 23:42:14 -05:00
7be79a3803 rustfmt'd the codebase 2026-03-04 19:52:29 -05:00
fbadbebf8c Implemented the autocmd builtin, which allows you to register hooks for certain shell events. 2026-03-04 14:12:10 -05:00
2ea44c55e9 implemented 'type' and 'wait' builtins
fixed some tcsetpgrp() misbehavior

fixed not being able to redirect stderr from builtins
2026-03-01 17:14:48 -05:00
ffe78620a9 Fixed 'C' and 'D' verbs deleting the newline character 2026-03-01 02:39:22 -05:00
4a0cefee32 More progress on integrating ariadne's error reporting 2026-03-01 02:20:58 -05:00
1b63eff783 Add array support for local/export/readonly builtins
Add array length syntax ${arr[#]}

Map read path now expands variables before splitting on ., fixing map "$node" with dotted paths

Map assignment path uses quote-aware token splitting, enabling quoted keys like "--type="

Completion errors now display above prompt instead of being overwritten

Fix nested if/fi parser bug when closing keywords appear on separate lines

Add QuoteState enum, replacing ad-hoc quote tracking booleans across lexer, highlighter, and expansion

Add split_tk_at/split_tk for quote-aware token splitting with span preservation

Refactor setup_builtin to accept optional argv for deferred expansion

Add ariadne dependency (not yet wired up)
2026-02-28 15:54:53 -05:00
c508180228 Added -j flag to 'complete' for completing job names/pids 2026-02-27 11:03:56 -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