SpeedCD is a CLI program that allows you to navigate any filesystem at the speed of light! SpeedCD is not a file manager, it will not open/manipulate files. Check out a demo here (ignore the flickering, it's because of the recording software): The usage of SpeedCD starts at: 0:27
SpeedCD is designed to be as intuitive as possible so instructions are not really necessary (but here is one anyways):
Press: + to add a column (SpeedCD defaults to 3 columns on startup)
Press: - to remove a column
Press: Backspace to go up the directory tree
Press: Enter to enter a directory
Press: CTRL+r to refresh the view (if files have been added/removed from the directory)
Press: CTRL+h to hide/show hidden files
Press: CTRL+f to hide/show files
Use the arrow keys to move the cursor.
Type anything to search for files in the current directory.
Press: ESC to open a shell in the current directory (if you have a search running, this will cancel the search).
Configuration settings are available by passing in command-line arguments:
--shell=
: Specify the shell to be opened when ESC is pressed. Example:--shell=zsh
--pathFile=
: Specify a file to write the resulting path to when ESC is pressed. Overrides--shell=
Example:--pathFile=/tmp/speedcd.123456.tmp
--clearSearchOnDirectorySwitch
:true
orfalse
, specifies whether or not to clear the current search (if any) when you move into a new directory. Defaults totrue
.--caseSensitiveSearch
:true
orfalse
, specifies whether or not searching is case sensitive.
- Download and install the Java 7 runtime.
- Download a binary from the releases section.
- Create an alias to the jar file by adding
APTB="---> REPLACE ME <---";scd() { t=$(mktemp /tmp/speedcd.XXXXXX);java -jar "$APTB" "--pathFile=$t";s=$(cat "$t");cd "$s";rm "$t";}
to the end of your~/.bashrc
file (replace---> REPLACE ME <---
with the path to the SpeedCD binary). - Restart your terminal/shell.
- You are ready to go!
The only library used is lanterna.