Commit Graph

12 Commits

Author SHA1 Message Date
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
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
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
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
4d16ffa60f implemented for loops 2025-04-20 05:16:50 -04:00
937bbbacdd Cleaned up warnings 2025-03-23 17:41:12 -04:00
0d286ba006 Implemented prompt expansion, and display for errors 2025-03-18 15:54:06 -04:00
92d7766765 Early work on scripting features 2025-03-16 02:56:29 -04:00
505b968c60 Various additions and improvements 2025-03-15 21:04:45 -04:00