mirror of
https://github.com/samsonjs/csc360-a1-shell.git
synced 2026-03-25 08:45:52 +00:00
Replace Ruby's old wordexp-like command splitting with a tokenizer and
parser that understands ; and && while honoring quotes and nesting.
Implement richer expansions for command substitution, arithmetic,
parameter defaults (${var:-...}), brace expansion, and escaped
dollar/backtick behavior via shared quote-state handling.
Expand the test suite with parser/expansion edge cases, escaping
parity checks, builtin usage validation, and job-control refresh tests.
Keep C green by adding a compat test profile for c/Makefile test and
by returning nonzero on builtin failures in -c mode, including clearer
`bg` usage output.
|
||
|---|---|---|
| .. | ||
| builtins.rb | ||
| cli.rb | ||
| colours.rb | ||
| job.rb | ||
| job_control.rb | ||
| logger.rb | ||
| quote_cursor.rb | ||
| repl.rb | ||
| string_parser.rb | ||
| word_expander.rb | ||