Console file manager with VI key bindings, multi-column display, and file previews
Ranger is a console-based file manager that uses VI key bindings for navigation and file operations. It displays files in a three-column layout where the first column shows the parent directory, the middle column displays the current directory contents, and the third column provides previews of selected files or directories. The interface uses ncurses to create a text-based GUI that works in terminal environments.
The tool includes rifle, an automatic file launcher that determines appropriate programs for different file types. Ranger supports common file operations like creating, copying, deleting, and chmod operations, plus bulk renaming of multiple files. It can preview various file types including images (through multiple backends like w3mimgdisplay, ueberzug, or terminal graphics protocols), code files with syntax highlighting, archives, PDFs, and media files when optional dependencies are installed.
Ranger targets users who prefer keyboard-driven workflows and terminal-based tools. It integrates with the Unix shell by allowing directory changes to persist after exiting, supports tabs and bookmarks, and can be extended through Python scripts and plugins. The tool works with Python 2.6+ or 3.1+ and requires only the curses module as a mandatory dependency, though many optional packages enhance its preview capabilities.
# via pip
pip install ranger-fm
# via pipx
pipx run --spec ranger-fm ranger


