riptree2 (rt)
riptree2 is a Rust rewrite of the Unix tree command. It aims to be a drop in
replacement (alias tree="rt --compat"
) with some quality of life improvements,
such as respecting ignore files by default.
Current Status
riptree2 is under active development. The basic tree functionality has been implemented, but most options are not supported yet.
Project Goals
Backward Compatibility
riptree2 aims to produce identical output to the Unix tree command by default. We achieve this through a suite of integration tests, which compare the output of a reference tree implementation to the output of riptree2.
There are some cases where the output of riptree2 will differ slightly from the
output of the Unix tree command. For example, riptree2 automatically respects
ignore files. For maximum backward compatibility, use the --compat
flag, which
disables all quality of life improvements.
Performance
The performance of riptree2 should be at least as good as the reference tree implementation. Currently, riptree2 is approximately 2 to 3 times faster than reference implementation.
We publish our benchmark results here.
Features
Nerd Font icons
By default, riptree2 shows Nerd Font icons for each file type. If you don’t
have a Nerd Font installed, or prefer not to show icons, you can disable this
feature with the --no-icons
option.
Rust API
The Rust API is available for use in other projects, but no guarantee is made regarding API stability. We may offer a stable public API in future as this project matures.