jjj
jjj
is a minimal and fast command-line file lister with Vim key bindings.
jjj
can be used to navigate swiftly your OS and pipe a selected file to other Linux utilities.
Usage examples:
Select a file and pipe it to cat:
jjj . | xargs cat
Select a file and open it with macOS finder:
jjj /Users | xargs open
Select a folder and change directory:
cd $(jjj .)
Downloads
- Visit the release page to download the binaries
- Change the permission of the downloaded file using
chmod +x ./jjj
Notes: to install jjj to macOS please follow these instructions Open a Mac app from an unidentified developer. In order to add jjj to your path follow this guide.
Key binding
Key | Description |
---|---|
j | Move cursor down |
k | Move cursor up |
h | Visit parent folder |
l | If directory, visit it, otherwis do nothing |
q | Exit program |
esc | Exit program |
enter | Exit returning path |
spacebar | Exit returning path |
r | Update view of the current folder and reset the cursor position |
Notes: you can also navigate using the arrow keys.
Video demo
Screen.Recording.2022-06-26.at.9.57.07.AM.mov
For development
Clone the repository and install dependencies:
git clone https://github.com/gibbok/jjj.git
brew install ncurses
cd ./jjj
Compile and run on macOS:
make test-files
make dev
Build for macOS and Linux using Docker:
make build-mac
make build-linux