Xfm is a file and applications manager program for the X window system.
It provides virtually all of the features that you would expect in a file
manager - move around your directory tree in multiple windows, move, copy or
delete files, and launch programs with simple mouse operations. Directory
displays are updated automatically in regular intervals when the contents of
the directory changes. The integrated application manager provides a kind of
``shelf'' onto which you can place your favorite applications, as well as the
files and directories you are currently working with. It also allows you to
access different groups of applications and files. User-definable file types
let you specify a command to be executed when double-clicking on a file or
dropping other files onto it. Last not least, xfm can automatically
mount and unmount special devices like floppies as you open and close the
corresponding directories (mount points).
Xfm accepts all the usual toolkit options. Furthermore, the following
options let you print xfm's version number and control which windows
should be displayed at startup.
Print the version number and exit.
Only display the application manager window.
Only display the file manager window.
If both -appmgr and -filemgr are specified, then the
applications and one file manager window will be displayed, which is also
the default. If only -filemgr is specified, the application manager will
not be available in this session.
Most of it should be fairly obvious. There is one application window and zero
or more file windows in which directories (also termed folders) are
displayed. In order to perform an action, you either select items and then
invoke a menu operation, or you drag items from a file window to a second
(maybe the same) file window or the application window. You can also
double-click on an item to start a corresponding action (like launching an
application, editing a file, or changing directories), and press the right
menu button on an item to bring up a menu containing operations for a single
file or application. Pressing the right button on the background of the
application window displays the application menu. File operations are accessed
from the file window menu bar as usual.
The left-hand mouse button selects an item (and deselects all others in the
same window). The second button toggles the selected state of an item.
A string containing the paths of the selected file items can be requested by
other applications using the standard selection mechanism (PRIMARY selection).
To provide visual feedback, the file window that owns the selection paints its
status line using a special highlight color. You can then paste the list of
selected files in some other window such as an xterm.
You can drag with the left-hand button to another window (or another icon, in
general a valid destination will be highlighted with a border when the cursor
is over it) to move files from one directory to another. The second button
used in the same way will copy files. You can also drag around items in the
application window; again, the left mouse button moves, and the second button
copies the selected items to a new position. Applications can be launched by
dropping files on them; and installing files and programs in the application
manager can be done by dropping files on the background of the application
window. Finally, new file windows can be opened by simply dragging a
directory icon to the root window.
The action taken when double-clicking on a file depends on the type of the
file. If it is a directory, it is displayed in the file window. If it is an
executable, the program is started. Other files are opened in the default
editor (specified by the editor resource), unless another action
is given in the xfm_mailcap file (see CONFIGURATION below).
The output of child processes invoked by xfm is captured in a special
log window. This window provides buttons for clearing the window contents and
for hiding the window. You can also specify whether you want the window to pop
up automagically when new output is available (Auto Popup option,
enabled by default), and explicitly show the window using the Show log
option of the View menu.
Directories can be displayed in three different forms: tree (display
subdirectories in tree-like form), icon (display directories and files
as icons) and text (similar to ls -l). These options are selected
from the View menu. In the tree form, clicking on the arrows takes you
up or down one level.
Directory displays are updated automatically in regular intervals when the
contents of the directory changes. You can also explicitly request a folder
update by double-clicking on the directory name field of the corresponding
A menu of recently visited directories can be popped up by pressing the right
mouse button on the directory name field of the file window.
Many menu operations can also be invoked with corresponding keyboard shortcuts
which can be changed by configuring the translations in the applications
defaults file accordingly. The default shortcuts, as defined in the
distributed application defaults file, are given in parentheses below.
File manipulation operations.
Create a new (and empty) file.
Rename a single item (directory or file) or move selected items to another
Create a copy of a single item under a new name or copy selected items to
Like Copy, but creates symbolic links rather than copying the selected
Delete (d, Del, Backspace)
Delete the selected items.
Select items by pattern. The usual metacharacters are recognized (*,
?, [ ]). (Currently there is no provision for escaping these.)
Select all (a)
Select all items in the current directory (except the parent directory).
Deselect all (u)
Deselect all items.
Own Selection (o)
Request ownership of the PRIMARY selection. This is useful if some files had
been selected before but the ownership of the X-selection was lost and the
user later wants to get the ownership back.
Invokes an x-terminal-emulator(1) in the current directory (using the command
specified with the defaultXterm resource).
Display a box with some information about xfm.
Operations dealing with directories and the file window.
Create a new directory.
Go to... (Shift+g)
Display the specified directory.
Display your home directory.
Display the parent directory.
Delete all items in the current directory.
Clone this file window (open another file window on the same directory).
Close this file window.
Options for the directory display and the log window.
Select the tree form display.
Select the icons form display.
Select the text form display. An additional Option menu appears which
allows you to select the information to be shown in the text view.
Sort by name (Ctrl+n)
Sort directory by name.
Sort by size (Ctrl+s)
Sort directory by size.
Sort by date (Ctrl+d)
Sort directory by date.
Specify a pattern to determine the files which should be displayed in the file
window. (This only affects normal files, i.e. directory items will not be
filtered. The Clear button in the Filter dialog form reverts to the full
Hide folders (Ctrl+h)
Suppress directory items.
Mix folders/files (Ctrl+m)
Mix directories and other files.
Show hidden files (Ctrl+u)
Show hidden files (files starting with a dot).
Redisplay the log window.
FILE POPUP MENU
Operations on a single file. This menu pops up when pressing the right mouse
button on a directory or file icon.
Open a file window on the selected item. This option is only available if the
selected item is a directory.
Edit the selected item using the program specified in the editor
resource (only available if the selected item is not a directory).
Same as Edit, but invokes a program for viewing the file (defaultViewer
Rename the selected item (same as Move, but shows the current filename
as the default).
Move the selected item.
Copy the selected item.
Create a symbolic link.
Delete the selected item.
Display information about the selected item (file size, permissions and such).
Change the permissions of the selected item.
Operations for managing the application window.
Install a new application in the application window. Pops up a dialog form
into which you can enter the necessary information (see APPLICATION FILES for
a discussion of the fields in this form).
Simplified install dialog form for creating a new application group (see
Move the selected application items into a ``clip'' file (specified by the
applicationDataClip resource). Together with the Paste option,
this allows you to move application items between different application
Like Move, but simply copies the selected items instead of removing them
from the application window.
Insert the contents of the clip file into the application window.
Delete the selected items from the application window.
Display a box with some information about xfm.
APPLICATION POPUP MENU
Operations on a single application item. This menu pops up when pressing the
right mouse button on an icon in the application window.
Edit an application item. Pops up a dialog form which allows you to change
the configuration information associated with the selected item (see
CONFIGURATION for a discussion of the fields in this form).
Move the selected item to the clip file.
Copy the selected item to the clip file.
Delete the selected item from the application window.
APPLICATION WINDOW BUTTONS
These buttons at the bottom of the application window allow you to navigate in
the application group tree and open new file windows.
Return to the previous application group.
Return to the main application group (the one loaded at startup time).
Reload the current application file. This option is useful to update the
contents of an application window after manual editing of the application
Open a new file window on the user's home directory.
Various aspects of xfm can be configured by changing corresponding
resource settings in the application defaults file. Some important resources
are listed below:
The color used for highlighting selected items, as well as the status line of
the file window which owns the primary selection (if any).
The path on which to search for bitmap and pixmap icons, respectively.
The path to look for pixmap icons for the file types.
The names of the application and configuration files used by xfm (see
CONFIGURATION). Normally, these files will be located in ~/.xfm.
These files are used, if the corresponding described before are not found.
This allows changeable system wide defaults while users are still
able to overwrite them.
The directory in which the application files for new application groups are
located (see the Install group option of the application menu), usually
~/.xfm. Application groups changed are also copied here, when the
original file cannot be written to.
If it does not exists, it will be generated when needed.
The ``clip'' file used in Cut/Copy/Paste operations in the application window,
If it begins with applicationDataDir, this will be generated when
Set the time interval in milliseconds for which a sequence of two mouse clicks
should be interpreted as a double click. Default: 300.
Set the time interval in milliseconds in which to perform automatic folder
updates. Default: 10000.
Resources to request confirmation for various operations. XXX can be
any one of Deletes, DeleteFolder, Copies, Moves,
Overwrite and Quit. By default these are all enabled.
The command and leadings arguments with which xfm invokes your favorite editor.
The command and leading arguments with which xfm invokes your favorite viewer.
The command and leading arguments with which xfm starts a command within
(e.g. xterm -e)
The command with which xfm runs an X terminal emulator.
Specifies the shell to use for running commands.
(If not set, $SHELL is used instead. If that also does not exists /bin/sh is used.)
There are way too many available resources to list them all in this manual
page, so please take a look at the application defaults file for more
Besides the application resources, xfm can be configured by means of
four different files,
which are usually named
and are by default searched for in the
directory or in
Moreover, there is
a number of so-called application files, from which xfm determines the
contents of the application window, like the Apps file which usually
describes the contents of the main application group. All these files are
plain ASCII files which can be edited using any text editor. (Note that
application files are also written by xfm itself whenever the contents
of the application window changes.) Any line in these files which starts with
a hash sign (#) is interpreted as a comment; empty lines are ignored.
xfm can determine
file types using the magic numbers contained in the files.
The magic numbers are described in a configuration file whose path is obtained
from the magicFile or systemwideMagicFile resource, by default
The format of the file is the same as that of the magic(5) file,
with some extensions described in xfm_magic(1).
The program xfmtype(5) can be used to test this.
If no file type could be obtained using the magic values,
xfm falls back to determine the type of a file by its suffix.
The rules it used are described in a configuration file whose path is obtained
from the mimeTypesFile or systemwideMimeTypesFile resource, by default
The format of the file is described in the xfm_mime.types(5) man page.
xfm determines how to open files consulting the file whose path is
obtained from the mailcapFile or systemwideMailcapFile resource,
The format of the file is described in the xfm_mailcap(5) man page.
The device configuration file, xfm_dev, lets you specify which mount
points xfm should keep track of, and which actions to perform in order
to mount and unmount the corresponding file systems. This allows you to access
file systems on special devices such as floppies, CD-Roms, etc. in a
transparent way. See xfm_dev(5) for the format of this file.
Application files are used to specify the contents of the application window.
Normally, these files are not altered with a text editor, but are updated by
xfm whenever the contents of the application window changes. An
understanding of the application data is necessary, however, if you want to
edit an existing or create a new entry using the Install, Install
group and Edit options of the application menu.
The format of those files is described in the xfm(5) man page.
Xfm provides a number of operations which let you manipulate application
groups in a convenient manner. The items in the application window can be
moved and copied using drag and drop as usual. The Cut, Copy and
Paste options of the application menu provide a means to move and copy
application items between different application files. Moreover, xfm
keeps a stack of application files loaded from a file or the application
window via a LOAD action. The Back button at the bottom of the
application window lets you return to the previous group of applications, and
the Main button reloads your startup application file (and empties the
stack). Finally, the Install group option of the application menu allows
you to create entries for new application groups easily. You only have to
specify the name of the group, the name of the corresponding application file,
and the name of the icon file. The remaining fields of the entry are filled
in by xfm automatically.
Standard location for xfm configuration and application files (see
Standard location for system wide configuration files used when no user
specific are available.
Xfm catches the TERM signal to gracefully terminate the program,
unmounting all open file systems which have been mounted by xfm.
However, some window and session managers may not send TERM signals to their
client applications when terminating an X session. Therefore it might be
necessary to explicitly quit xfm or manually close file windows mounted
by xfm before exiting X.
Do not specify a relative path in the directory field of an application item,
because when you execute a push action on the application the current
directory might not always be what you expect. This will probably be fixed in
a future release. ;-)
Due to recent changes, it will propably no longer work with any shell
without a minimum of POSIX compatibility.