RNR - A New Terminal File Manager Similar To Ranger And GNU Midnight Commander

From LinuxReviews
Jump to navigationJump to search
Konsole.svg

RNR File Manager (RNR's Not Ranger) is a new terminal file manager for Linux that combines features of Midnight Commander and Ranger in order to provide the best of both worlds, while also offering a robust file copier.

Original story by Logix from the Linux Uprising Blog. Published 2021-03-13, Originally published 2021-03-02.
This work is available under the Creative Commons Attribution (CC BY) license.
Rnr-file-manager.png
RNR. Screenshot by Logix, licensed under the Creative Commons Attribution license.

RNR (RNR's Not Ranger) is a new terminal file manager tha combines the features of the GNU Midnight Commander and Ranger file managers. The text-based application is officially supported only on Linux, but it may work on macOS, FreeBSD or Cygwin. However, if you get errors on non-Linux systems, the developer mentions that they won't consider them as bugs.

RNR features fast file and directory browser with Vim-style keys and powerful fuzzy filter, the ability to browse archives as if they were directories, along with many other features, having its main goal to "be the most robust file copier in existence".

To achieve this goal, RNR uses completely non-interactive copy / move operations, allowing the user to set actions beforehand in case there are conflicts (overwrite, skip, rename existing and rename copy), while also skipping all errors. Thanks to this, you can start a very large file copy operation and leave it unattended, and it will not get stuck due to some file that already exists, or due to an error that can be skipped.

This is the RNR File Manager copy dialog:

Rnr-file-manager-copy-dialog.png
The RNR file managers copy dialog. Screenshot by Logix, licensed under the Creative Commons Attribution license.

Also, every file operation is logged to a database, so in case the power goes off, you will know where the copy process was interrupted, and resume from there.

The developer values file copy / move reliability over speed. This is why RNR defaults to using a database to track file operations, even though this slows down the operations considerably when copying or moving many small files. However, RNR allows disabling the use of the on-disk database, either by a command line option (-n, --nodb) or using the No DB button. At least, according to its GitHub documentation, because on a quick look I couldn't find a No DB button in the application's user interface.

RNR File Manager features:

  • Very fast file and directory browser with Vim-style keys and powerful fuzzy filter like fzf (which I'm a fan of, by the way)
  • Explore compressed archives as normal read-only directories (requires archivemount to be installed on the system)
  • Fast directory jumping with bookmarks
  • Many file rename options
  • Robust file copy engine with minimal user interaction. Great for copying large amounts of data reliably
  • Text and binary file viewer with line numbers and syntax highlighting for text, and masked data for binary, with optional hex display mode for both formats
  • Optional file and directory preview in the other panel
  • If the internal file viewer is not used, view files with the selected pager (default: less)
  • Edit files with the selected editor (default: vi)
  • Open files with the selected opener (default: xdg-open)
  • Execute shell commands, with macro substitutions to easily manipulate the tagged files
  • cd to the last visited directory on exit (compatible with Bash and Fish; this needs to be configured)

It's also worth noting that RNR file manager doesn't offer a great deal of configurability. It allows choosing the pager, opener and editor, set a color scheme, custom bookmarks, and that's it. There are no plans to make the application more customizable, because, according to the developer, this has the advantage of making RNR "work the same everywhere it is installed".

I'd also like to add that if you're looking for a terminal file manager with mouse support, RNR is not for you, as it doesn't support this. Use Ranger or MC, as both of these have mouse support.

To see the list of command line options, keybindings, substitutions etc., see the RNR man page. Also check out the rnrview (RNR's console file viewer) man page.

Install RNR File Manager on Linux

For Arch Linux / Manjaro, RNR File Manager can be installed from AUR.

On other Linux distributions, RNR can be installed by using Python3 PIP. In case you don't already have this installed, you can install it by using the following command:

> Debian / Ubuntu / Linux Mint / Pop!_OS / Elementary OS / Zorin OS:

sudo apt install python3-pip

> Fedora:

sudo dnf install python3-pip

> openSUSE Leap 15.2 / Tumbleweed:

sudo zypper install python3-pip

Now you can install RNR console file manager using Python3 PIP:

python3 -m pip install --user rnr

Later, in case you want to upgrade RNR using PIP, use:

python3 -m pip install --upgrade --user rnr

PIP installs the executables in ~/.local/bin. In case you don't have this in your PATH (you don't have it in your PATH if after installing RNR, you can't run it by typing rnr in a terminal), add it to your PATH by opening ~/.bashrc (if you use Bash) or ~/.zshrc (if you use Zsh) or the configuration file for whatever shell you're using, and editing the file to contain export PATH="$PATH:$HOME/.local/bin". Source the file (source ~/.bashrc or source ~/.zshrc) to use the new settings in the current terminal.

You can run RNR File Manager by typing rnr in a terminal.

To be able to browse archives as if they were normal (read-only) directories, you'll also need to install the archivemount package:

> Debian / Ubuntu / Linux Mint / Pop!_OS / Elementary OS / Zorin OS:

sudo apt install archivemount

> Fedora:

sudo dnf install archivemount

> openSUSE:

sudo zypper install archivemount

The RNR documentation also explains how to change the directory on exit for Bash or Fish shells, and how to fix key combinations in the terminal (to enable CTRL+Q and CTRL+S key combinations).

The RNR GitHub page is at github.com/bugnano/rnr.

5.00
(one vote)


Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.