Cross-platform TUI filesystem browser with Vi-like keybinds
MIT License
Seatbelts, everyone!
Magic School Bus is a terminal UI filesystem browser with Vi-inspired keybindings.
It's a work in progress, but runs on Windows, MacOS, and Linux!
Pre-built binaries are available on the GitHub Releases page.
Magic School Bus needs Rust 1.31 or newer to build.
If you already have Rust installed, you can grab Magic School Bus with:
cargo install magic-school-bus
# To upgrade, add --force to overwrite your current installation
cargo install --force magic-school-bus
To start up Magic School Bus, just run:
# Start in the current directory
msb
# You can also pass a directory to start in
msb ../some-directory
This will start you on an educational adventure in your current directory:
For detailed information on all options and flags, run:
msb --help
Actions marked with '(repeatable)' can be prefixed by a number, which will repeat the command N times.
q
: Exitj
or <down arrow>
: Move down in the list (repeatable)k
or <up arrow>
: Move up in the list (repeatable)g
: Move to the top of the listG
: Move to the bottom of the list<return>
: Activate an item in the list
f
: Find an entry starting with the given input
<tab>
to cycle between options matching the current input<return>
or <escape>
to exit find moden
: Create a new file, prompted for the name
<escape>
to cancelN
: Create a new directory, prompted for the name
<escape>
to cancelx
: Prompt to delete the selected entry
y
to confirm or <escape>
to cancelr
: Refresh the directory list, useful for when an outside program modifies the directoryMagic School Bus has a special mode intended to help move your shell to the location you navigated to when you exit!
Passing --pwd
will cause the last working directory to be printed to stderr. You can set up an alias or function to capture stderr and cd
to it if msb
exited successfully!
The function I have configured in my .profile
for Bash is:
function brw() {
{ error=$(msb --pwd "$@" 2>&1 1>&$out); } {out}>&1
if [ "$?" -eq 0 ]
then
cd "$error"
fi
}
I can type brw
anywhere to be dropped into a filesystem explorer, navigate around, and when I pop out, I'll be in the right spot!
This project is available under the MIT license. Details are available in LICENSE.txt.