Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

axl

axl is a small experimental shell being rebuilt in Rust. This is an early first iteration focused on creating a simple base for command parsing, execution, and automated tests rather than matching every feature of the previous C++ version.

Current features

  • Interactive prompt showing the current directory
  • External command execution with arguments
  • Built-in cd command
  • Single- and double-quoted arguments
  • Clean exit when stdin reaches EOF
  • Lexer, parser, and cd test coverage

Requirements

  • A recent stable Rust toolchain
  • Cargo

Install Rust through rustup if it is not already available.

Build

cargo build

The debug binary is created at target/debug/axl.

Run

cargo run

Press Ctrl-D on an empty prompt to exit.

Test

cargo test --all-targets

Optional formatting and lint checks:

cargo fmt --all -- --check
cargo clippy --all-targets -- -D warnings

Install locally

cargo install --path .

This installs the axl binary into Cargo's binary directory, normally ~/.cargo/bin.

Current limitations

The Rust version does not yet implement pipeline execution, redirection, command history, startup configuration, environment expansion, job control, or the full set of built-ins. Pipe tokens are recognised by the lexer, but are not executed yet.

Development of the first usable Rust version is tracked in milestone 1.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages