Five years and 80K downloads after its inception, RTFM, hits version 5. This is a major rewrite of the whole code - with lots of improvements.
RTFM contains everything you would want in a terminal file manager.
Among the new version 5 features are an optional trash bin, advanced OpenAI integrations, plugin architectures for keybindings, user defined features and file viewers. You also get better feedback, better visuals, more error capture. Plenty.
RTFM used to be based on the old, clunky and straight out painful curses library. I decided to write a complete new curses library from scratch in pure Ruby - rcurses. It boasts better stability, more functionality, cleaner code - and is just simpler and easier to program with.
The trigger for the RTFM v5 release was the desire to rewrite the whole file manager based on rcurses. So, after some weeks of fun, rcurses and RTFM is released in a modern form factor.
Here are just some of RTFM’s features:
- RTFM parses your LS_COLORS to ensure color consistency with the terminal experience
- Images are shown inline in the terminal (can be turned off)
- File contents is shown with proper syntax highlighting
- Item’s meta data is shown at the top
- Easily browse file content (pdf, MS/OpenOffice, etc.)
- Move around the file systems using arrow keys or VI keys
- Simply use ‘r’ in your terminal to launch RTFM - and exit into the directory where you ended RTFM
- Copy, move, rename, symlink and delete files easily
- Toggle the use of a “trash bin” to move dirs/files there instead of deleting
- Easily copy an item’s path to clipboard or primary selection
- Order items the way you want, see only files of a certain type
- Filter out all files not matching a regex pattern
- Mark files and directories and do group actions on them
- Bookmark directories for easy jumping
- Follow a symlink to where it points with one key stroke
- Highlight files and directories matching a given pattern
- Find items using
locate
and jump directly to the desired item - Find items and jump there using fuzzy search (with fzf)
- Execute any shell command from inside RTFM
- navi integration for easier command executions
- Easily unpack or create archives
- Show git status for the current directory
- Show comprehensive system info (processes running, disk space, dmesg, etc.)
- See if a directory (with sub dirs) has changed using cryptographic hashes
- Integration with OpenAI to get an executive summary of file content
- OpenAI chat integrated; Discuss files, content, commands with OpenAI
- Possibility to change top line background when matching a path
- Theming of pane colors
I used AI extensively as a companion for both the rcurses and the RTFM coding. It has notably increased my efficiency and code quality. There are pitfalls in using AI as it is now, but there are more benefits. More on this in another blog post.
Link to this post: https://isene.org/2025/04/RTFM.html