Home Portfolio Contact

bhaney.net

Console-Friendly File Manager

cffm

Philosophy

CFFM's design philosophy was inspired heavily by the Suckless Philosophy. Whether or not experienced hackers would consider CFFM truely "Suckless" or "KISS" is debatable, however one thing is for sure, and that is that CFFM is minimalist and not bloated. I have been using `ranger` for about a year now, and I couldn't help but notice that it was lagging behind and sometimes not responsive. This is because it was written in python, and was calling external scripts to execute commands. I was interested switching to the file manager `lf`, however it too used external configuration files and building it required installing golang. I always liked Suckless' `dwm` and `st` due to their configuration being compiled directly into the program, as well as for the fact that they are extremely portable and light programs. So, I decided to write my own terminal file manager, with simplicity and portability in mind.

What's New [v1.0]

cffm

User Manual


Download

You can download a static "just works" binary from the releases section on Github.

Self-Compilation

Most of the important work is taken care of in the Makefile. All you have to do is give the right command.

Dependencies:

Compiling:

Installing:

Uninstalling CFFM


Default Configuration

Key Function
H Move up a directory
L Change into directory / open file
J Move Cursor down file list
K Move Cursor up file list
Q Quit CFFM
: Execute shell command
T Rename File
(bulk rename coming soon)
Space Select File(s)
(single select)
V Visual Mode
(drag select)
X Cut selected
Y Copy selected
P Paste
D Delete selected
R Toggle hidden files
B Toggle border



Runtime Customization Options

By default, pressing `b` allows you to show/hide the border. Of course, you can configure this to your liking in `config.h`.