Home

Awesome

Dynamic File Manager Build Status

Dynamic File Manager (dfm) is a simple ncurses based file manager. It is inspired by ranger but tries to keep the user interface much simpler and memory footprint as well a CPU usage low.

Screenshot

Features

Installation

Building dfm requires wide-char enabled ncurses. To build just invoke

make

in the toplevel directory of the project.

To install dfm, just enter

sudo make install

You might want to edit the Makefile to adjust the installation paths.

Archive support

To support browsing of archives, archivemount (https://github.com/cybernoid/archivemount) and rar2fs (https://github.com/hasse69/rar2fs) have to be installed:

And for the distinction of .rar files from other archives, the file utility (https://www.darwinsys.com/file/) is needed.

If you want to browse archives with the normal open action instead of pressing "a", you have to configure your file launcher to use the dfm-archive-helper. For run-mailcap, add something like that in the ~/.mailcap:

application/zip; dfm-archive-helper '%s'; needsterminal
application/x-tar; dfm-archive-helper '%s'; needsterminal
application/gzip; dfm-archive-helper '%s'; needsterminal
application/x-bzip2; dfm-archive-helper '%s'; needsterminal
application/x-xz; dfm-archive-helper '%s'; needsterminal
application/x-rar; dfm-archive-helper '%s'; needsterminal
application/x-iso9660-image; dfm-archive-helper '%s'; needsterminal

Feel free to add further types. You may also need to adjust the mime types according to distribution. Check what "file --mime-type" returns for you, if it does not work.

One advantage of using the explicit "open-archive" handler is, that you can also open archives, which aren't configured, or which are archives under the hood of another file format, e.g. Java JAR or OpenDocument files.

Usage

To start dfm, just enter

dfm

The following table shows the default key bindings. They can be configured globally in the file /etc/xdg/dfm/rc or for each user in ~/.config/dfm/rc. A command reference can be found in doc/command-reference.md. Additionally, the behaviour of the open, copy, move, delete or shell bindings can be customized through the corresponding handler scripts. See examples/handlers. If you want to change them, copy the handler scripts to ~/.config/dfm/handlers and edit them to your liking.

KeyAction
UpMove up
DownMove down
PageUpMove to the top of the screen or one page up
PageDownMove to the bottom of the screen or one page down
LeftGo to the parent directory
RightEnter the selected directory or open the selected/marked file(s)
HomeGo to the first file
EndGo to the last file
SpaceMark/unmark currently selected file
*Invert mark status of every file
+Mark all files matching the entered regular expression
-Unmark all files matching the entered regular expression
1Go to home (~) directory
2Go to root (/) directory
rReload directory contents, mainly useful on network filesystems
eOpen selected or marked files for editing
DDelete currently marked files, or when no file is marked the currently selected file
pCopy files in clipboard to the current directory
PMove files in clipboard to the current directory
sOpen a shell in the current direcotory
aBrowse contents of the selected archive
yCopy currently marked files or the currently selected file to clipboard
qQuit dfm
:Open the command line
F6Rename currently selected file/directory
F7Create a new directory
/Jump to the next file matching the entered regular expression
?Jump to the previous file matching the entered regular expression
nRepeat the previous search