# XFce 4 Filemanager

### Edscott Wilson Garcia

`<edcott@xfce.org>`

This manual describes `xffm` version 4.2.0. Last updated: Jan 2005.

Copyright © 2004 Edscott Wilson Garcia

## Introduction

This document describes the basic function and behaviour of Xffm, the Xfce 4 Desktop Environment fast file manager.

This file manager is treeview designed. Each main branch of the tree is a separate plugin which need not be loaded if not requested. With this file manager you may launch programs, examine contents of directories, manage the contents of trash bins, examine SMB (Wind*ws) network, keep bookmarks, view differences between files, find files, password encrypt files, and move, copy, rename, duplicate, delete or symlink files. You can also create, examine or extract directories to and from compressed tar files, iso file systems, and burn CD rom images. Mounting and unmounting remote SMB shares, local filesystems or removable media is also available with a double click.

Besides the above, the Xfce fast file manager has a sophisticated DBH-based mechanism to keep score on frequently used programs, visited sites, and a tab completion system which shows you the options instead of having you guess what they may be. You can rename files, change user or group information or file protection by simple select and edit the field. You can use drag and drop or cut and paste to move or copy files with other filemanagers or to download and upload files from remote SMB servers.

## Getting Started

You will usually start the filemanager by selecting the corresponding entry from the Xfce-panel, the Xfce-desktop menu or by typing in a directory (absolute path or relative to homedir) at the xfrun4 prompt dialog. You can also type xffm at a terminal window or xfrun4 prompt.

When you start the filemanager for the first time you will a window on your screen, looking like this:

Figure 1. Default Xffm window

## File manager root branches

Currently there are the following root level branches. You can any combination of them in either window pane.

### Xftree

Local files

The local files branch is the traditional tree where files on the local computer are displayed. The tree can be opened to any level of nesting, and the top level can be relocatable to any directory on the local computer. To invoke the filemanager with only the local files branch activated, use `xftree4` as the command line.

### Xfsamba

SMB Network

The SMB network branch is the way to navigate through a SMB network using the samba suite programs. To invoke the filemanager with only the SMB network branch active, use `xfsamba4` as the command line.

### Xfbook

Bookmarks

The bookmarks branch is a way to create virtual directories with local files and remote SMB network files or shares. Multiple bookmark configurations can be used and toggled using ctrl-B. To invoke the filemanager with only the bookmark branch active, use `xfbook4` as the command line.

### Xfglob

Find results

The find results branch is where the results of find queries are displayed. Full filemanager operations are enabled on the results. To invoke the filemanager with only the find branch active, use `xfglob4` as the command line.

### Xffrequent

Frequent files

The frequent files branch contains a tree structure with those files or directories which are frequently accessed via the filemanager. The default frequency threshold is set at 13 hits, but may be changed by means of the main menu. To invoke the filemanager with only the recent branch active, use `xfapps4` as the command line.

### Xfrecent

Recent files

The recent files branch contains a tree structure with those files or directories which have been accessed recently via the filemanager. The default recent threshold is set at 3 days, but may be changed by means of the main menu. To invoke the filemanager with only the recent branch active, use `xfapps4` as the command line.

### Xffstab

Fstab mount points

The fstab branch is a alternate way of viewing the filesystem, where the physical devices are listed by mount point. This enables easy mount/unmount operations with the keyboard RIGHT and LEFT cursor, mouse double-click, or menu selection. To invoke the file manager with only the fstab branch active, use `xffstab4` as the command line.

### Xftrash

Trashcan

The trashcan branch is a collection of trash bins. These may include Xffm wastebaskets or GNOME and KDE trash bins. This branch is a means of managing trash which is generated in different parts of the filesystem. You can collect trash bins belonging to other users among other functions available. To invoke the file manager with only the trash branch active, use `xftrash4` as the command line.

## The menus

The key to working with the filemanager is understanding the menus. There are exactly two menus to deal with: the main and the popup. Since this is a keyboard friendly filemanager, to see what keyboard shortcuts are available, you should examine the menus. All the toolbar and sidebar buttons also have a corresponding menu element.

### The main menu

Figure 2.

In the figure is the main menu. This can be called by right or left clicking on the main menu bar, or by pressing function key F10.

The main menu consists of four submenus:

- Tools
- Open
- Go
- Options

The Go menu may be greyed out if there is ambiguity as to which window pane the functions should apply to. If you have anything selected, or only have one window pane visible, there is no ambiguity. Check it out ;-)

Figure 3. The tools menu

The tools menu can be displayed from the main menu or by using F3, and has the following entries:

- Terminal: Opens a terminal in the currently selected directory. The terminal which is opened is determined in order of preference:
  - TERMCMD set from `xfce-setting-show`
  - `xfce4-terminal`
  - `xterm`
- Find: Opens a find dialog window. Results are displayed in a find results branch of the filemanager.
- Differences: Opens a difference window between two selected files. If no files are selected, you can drag and drop them in later.
- Printer configuration: opens a dialog to configure your printers.
- List pasteboard: outputs the content of the current pasteboard to the diagnostics window.
- Clear pasteboard: Clears the contents of the current pasteboard (the filesystem is untouched by this operation).

Figure 4. The open menu

The open menu can be displayed from the main menu or by using F4, and has the following entries:

- Run: Queries for a program to be run.
- xftree4: Queries for a directory path and opens a new filemanager window there. Equivalent to executing `xftree4 directory_path` from a command line. Absolute path or relative path (to homedir) is acceptable.
- xfsamba4: Equivalent to executing `xfsamba4` from a command line.
- xffstab: Equivalent to executing `xffstab4` from a command line.
- xfbook: Queries for a bookmarks file and opens the filemanager there. Equivalent to executing `xfbook4 bookname` from a command line.
- xftrash4: Equivalent to executing `xftrash4` from a command line.
- xfrecent: Equivalent to executing `xfrecent4` from a command line.
- xffrequent: Equivalent to executing `xffrequent4` from a command line.

Figure 5. The go menu

The go menu can be displayed from the main menu or by using F5, has the following entries:

- Go to: Opens a query where you can specify where you want to go to. Paths preceeded by double slash (//) are interpreted as remote SMB servers.
- Home: Go to your home directory, or to XFFM_HOME if defined with the xfce-mcs-manager.
- Back: Goes to the previous location.
- Forward: Goes forward (after a go-back, of course).
- Up: Goes up in the directory file structure.

Figure 6. The options menu

The options menu can be displayed from the main menu or by using F6, has the following entries:

- Preferences: opens the preferences submenu.
- Edit themes: runs the `xfmime-edit` program which allows you to customize the icon settings.
- Set frequency threshold: allows you to change the frequency threshold from its default value of 13 hits.
- Set recent threshold: allows you to change the recent threshold from its default value of 3 days.
- Enlarge icons: enlarges icons.
- Shrink icons: shrinks icons.
- xfce-setting-show: Launches the `xfce-setting-show` program which allows you to move the mcs manager settings.

Figure 7. The preferences menu

The preferences submenu can be displayed from the main menu or by using F7, and has the following checkboxes:

- Autoscroll: This makes the treeview scroll automatically when you open a folder.
- Text headers: This option is no longer available.
- Copy on drag: If this is checked, the default drag-n-drop action will be to copy, if unchecked, the default is to move.
- Show hidden: Controls whether hidden files are shown or not.
- Image auto-previews: Controls whether previews of graphic files are automatically generated on opening folders.
- Monitor enabled: Whether changes in the filesystem should be monitored to do automatic updates.
- Default GTK mouse selection: Whether to use the default GTK treeview selection, or the custom mouse selection introduced in 4.0.x.
- Resize fonts to match icons: Whether font sizes should be scaled up or down when icon size changes.
- Disable autotrash collection: By default, trash is automatically collected in the trash branch. If you prefer to manually collect trash, turn this off.
- Disable text colors: Use plain black and white for listings instead of funky colors.
- Disable cell editing: Disallow renaming, user/group changes, or mode modifications by direct inline editing.
- Invisible wastebaskets: If you do not like to see whether trash exists for directory when you open the folder, check this item.
- rcp before scp: When a xffm receives a drop from another xffm window on the same display, but running on a different host, should the files be copied by rcp or scp? In secure cluster configurations this should be rcp, but otherwise scp.
- Verbose diagnostics: If this is checked, the amount of processing information which appears in the diagnostics window will be enhanced.

### The popup menus

The popup menu is dynamically configured, depending on what is selected when the popup appears. In the following paragraphs we shall examine the most common scenarios. The popup menu can be shown by right clicking with the mouse or pressing F9

Figure 8. The book popup menu

Aside from the normal operations, from this popup menu you can also open a named book, open the default book, list all named books, create a new book, and save the current book with a new name.

Figure 9. The frequent popup menu

Aside from the normal operations, from this popup menu you can reset the frequency threshold from the default value of 13 hits.

Figure 10. The recent popup menu

Aside from the normal operations, from this popup menu you can reset the recent threshold from the default value of 3 days.

Figure 11. The fstab popup menu (mount/unmount)

Aside from the normal operations, from this popup menu you can either mount or unmount volumes which are listed in the fstab file information (they may be SMB shares, NFS volumes or local filesystems).

Figure 12. The trash popup menu

Aside from the normal operations, from this popup menu you can permanently delete all the collected trash from the filesystem. You can also clear the contents of the trash, in which case you would have to collect trash from the directory popup to make it appear again.

Figure 13. The directory popup menu

Aside from the normal operations, from this popup menu you can create gzipped or bzipped tarballs. You can also create iso filesystem files to directly burn CD-RW volumes.

Figure 14. The directory popup menu (unmount)

In the case where a directory is also listed in the fstab file as a mount point, you can mount/unmount volumes from this popup.

Figure 15. The file popup menu

The file popup has all the operations normally performed on files. Depending on the mimetype of the selected file, you may get several options with which to open the file. These options are constructed from the system wide mimetype applications, the user mimetype applications (constructed by clicking remember when the open with function is used), and the last application used to open the file (whether remember was checked or not). Thus in the above figure you can observe that the TeX file selected has several option with which to open it with.

Further file operations are included in the file submenu, described below and which may be quickly accessed with F8.

Figure 16. The file popup submenu

The file submenu which may be quickly accessed with F8, contains the basic operations normally done to the filesystem:

- Properties: Modify the file's user/group or mode information (also may be done by inline editing of the fields).
- New file: Creates a new file in the selected directory.
- New directory: Creates a new directory within the selected directory.
- Print: Prints the selected file using `xfprint4`
- Duplicate: Creates a duplicate of the selected file or directory.
- Symlink: Creates a symlink of the selected directory or file (also available by ctl-shift dragging or paste-linking the pasteboard).
- Touch: Touch the file or directory.
- Rename: Rename the file or directory (also available via inline editing.
- Scramble: Password scrambles the file. If the filemanager is compiled with the --enable-scrambledir option, then this item will not be greyed out for directories and the whole directory can be recursively scrambled with the same password.
- Unscramble: Unscrambles the file. The mimetype extension for scrambled files is .cyt, so that this option is grayed out if the selected file is not of the scrambled type. If recursive scambling of directories is enabled at compile time, this option will also be active for directories.

Figure 17. The netfile popup menu

The popup for SMB network files is similar to the one for local files, but does not contain the file submenu.

Figure 18. The columns popup menu

If you right click over the titles of the columns, you get the columns popup. With this popup you can toggle which columns you wish to be visible or not. By default configuration, the right pane has all optional columns visible, and the left column has none of the optional columns visible.

Figure 19. The icon title smart button

This is the popup for the icon column title. By keeping pressed you make a popup of buttons appear. Release on any button determines which one gets the click. These buttons are used to toggle main branches on and off. If you want to see the fstab branch, click on the fstab symbol. If you want to hide the local branch, click on the local branch symbol.

Figure 20. The sort popup submenu

The sort submenu allows you to toggle the set sorting method for the treeview. The unsorted method implies a sorting by name and subsorted by filetype. You may also toggle the sorting method by clicking on the column titles. The purpose of this menu is to make a sort method toggle available from the keyboard.

## The toolbars

### The standard toolbar

Figure 21.

The standard toolbar is a shortcut to many menu functions. By right clicking on any button with a down arrow, you can appear or dissappear the corresponding side bar. You can also bring up a popup with the sidebar elements by pressing with the button and not releasing. You then release on the popup element you desire to click. The last clicked element of the group becomes the top button visible in the toolbar.

### The menu toolbar

The menu toolbar consists of the following elements:

Figure 22. The filter box

This allows you to filter the contents of a directory before being inserted into the treeview. Regular expressions such as that shown in the figure are also acceptable (besides classic filters like *.c). After changing the filter string, refresh the view. If the treeview is hidden, nothing is filtered.

Figure 23. The hide/show buttons

In the menu toolbar, you have buttons for showing only the right treeview (also with F12), the left treeview (also with F11), viewing both treeviews (either F11 or F12 twice), and hiding and showing the filter box and the standard toolbar. (If you compiled with --enable-panel, you will have a second toolbar reflectiong your xfce4-panel configuration, complete with hide and unhide buttons, replacing the applications root branch from `xffm-4.0).`

### The sidebars

There are several sidebars available in the default configuration.

Figure 24. The file submenu sidebar

See "File submenu" for an explanation of the available options. Exactly one item must be selected from the treeview for this sidebar to be active.

Figure 25. The go sidebar

See "go menu" for an explanation of the available options.

Figure 26. The multiple_select sidebar

You can create a new file or directory or open the properties dialog from here. At least one item must be selected from the treeview for this to be active. See "File submenu" for an explanation of the available options.

Figure 27. The open sidebar

See "open menu" for an explanation of the available options.

Figure 28. The options sidebar

See "options menu" for an explanation of the available options.

Figure 29. The paste sidebar

You can paste the contents of the pasteboard, or paste-link the contents of the pasteboard. The paste-link function creates symlinks of the files referenced in the pasteboard.

Figure 30. The tools sidebar

See "tools menu" for an explanation of the available options.

## The xfce-mcs-manager

Figure 31. The mcs plugin

Certain functions perform better if configured with the mcs manager plugin.

On deleting a file, the confirmation dialog will default to one of three buttons: cancel, wastebasket or unlink. Choose whatever you prefer here.

If you don't want any output at all to the diagnostics window, check the Disable diagnostics option

If want to hold the output of xterms or xfce4-terminals opened by the filemanager, check the Hold xterms option

If want to take full advantage of the the mount/unmount functions provided by the filemanager, it is best you install `sudo` and have it properly configured to allow mount/unmount. If `sudo` requires a password, the filemanager will prompt you accordingly. Check the Mount with sudo option for this.

The last part of the mcs plugin allows you to set environment variables on the fly:

- TERMCMD: The command used for opening terminals.
- LANG: The environment variable LANG passed on by the filemanager to the applications it opens. You only need to change this if you want this variable to be different from that which is used for the filemanager.
- XFFM_HOME: The path that the filemanager goes to when the Go home function is selected.
- SMB_USER: The default username%password used for SMB network queries.
- SMB_CODESET: Code set used to interpret non-ascii characters on remote SMB servers.
- XFFM_STATUS_LINE_LENGTH: Defines the maximum length of the strings which appear in the status line. This option is provided to avoid the width of the filemanager window to grow beyond the user's choice.
- XFFM_MAX_PREVIEW_SIZE: This environment variable defines the maximum size for image preview (by default set at 256 KB). Note that some previews may not be generated if they are too thin or too wide. To view these, install image-magick and use double click to view these these files.

## The diagnostics window

Figure 32. The diagnostics window

This is the window where output from commands performed by the filemanager is displayed. If you wish to increase the verbosity, use the verbose preference, and if you want to disable the output altogether, use the mcs plugin.

## FAQ

### Is there an icon view?

This will probably appear in version 4.4

### How can I customize the icons?

Use the `xfmime-edit` program (in options menu). This program works with drag and drop or inline editing. Upon saving, you will create the necessary mime.xml file in $HOME/.themes directory. You can also invoke `xfmime-edit` from a terminal command line. The iconset used will be that selected from xfce-setting-show (user interface).

### Can I use the find utility without GUI input/output?

Yes. From command line execute `fgr`.

### Can I execute the differences window from other filemanagers?

Sure. Just open the selected files with xfdiff4.

### Can I scramble/unscramble from the command line?

Yes. Just use the `scramble` program from a terminal. This program will act recursively on directories.

### What happens to Xfsamba with SMB servers on remote subnets?

If you want to see servers on a remote subnet (beyond a router), then you must have a domain master on each subnet. You can define your local host to be a domain master with the samba configuration file.

### What can Xfsamba do if there is no domain master on the remote subnet?

If there is no domain master on the remote subnet, you can still connect to a server if you know its BIOS name. Just use the go to function and preceed the server name with a double slash, i.e., //server. In order for this to work, both your local machine and the remote server must be configured to use the same WINS server.

### What's the Xfsamba problem with non-ascii characters?

The character set which is used by the remote server is determined by the remote server. And this varies according to the operating system. The result: a mess. Xfsamba tries its best to guess what's right and you can help by defining the SMB_CODESET with the MCS manager. YMMV. If you have problems with transferring files with non-ascii embedded characters, use the popup menu to mount the remote share as a local file system.

### How can I make the sidebar go away?

Click on it with button 3.

### How can I make the sidebar come back?

Click with button 3 on any toolbar that has a dropdown arrow.

### What do the F-keys do?

Press on F1 to find out.

### Why does the xftree file monitor refuse to watch out for changes on some directories?

If a directory takes longer than a certain amount of time to reload (non-configurable option), then xftree will not reload automatically when changes are detected. Use the reload button, or CTRL-Z, to refresh.

### How do I burn a CDRW?

Select the directory. Then with the popup menu, select Create isofs. Choose an output directory and wait until completion. Then select the newly created isofs file and bring up the popup menu. Select cdrecord (or burncd on systems which use this program instead). Wait for burn to finish.

### What's the command used for burning a CDRW?

Depending on whether `sudo` and `cdrecord` or `burncd` is installed, you will have the following commands to burn a CDRW:

- `burncd -f /dev/acd0 -s max data %s fixate`
- `cdrecord -v dev=ATAPI:0,0,0 ","cdrecord %s`
- `sudo burncd -f /dev/acd0 -s max data %s fixate`
- `sudo cdrecord -v dev=ATAPI:0,0,0 ","cdrecord %s`

You should be able to select the isofs file and use the open with function to use your own custom command if these defaults are not appropriate.

### What criteria is used for autocompletion?

Last used string has top score. Otherwise the autocompletion strings are sorted with the most frequently used entries at the top.

### How do I register a new application for a specific mimetype?

Use the popup menu and select the open with function. Write in the string to be used to open the program. You can use "%s" to place the selected file path in a place other than the end. Check the Remember box. If the command fails to execute, nothing will be registered.

### What's the "hold" checkbutton on execute good for?

Say you want to execute a terminal command with output to STDOUT, like `ls /tmp`. In order to keep the terminal window open so you can see what was output, use the hold command. Once the output is no longer needed, you must manually destroy the terminal window. If the Hold xterms is selected in the MCS manager, then all xterms are held and the checkbox will be grayed out.

### How can you scroll down quickly with the keyboard?

Typing any letter will scroll you down to the first row starting with that letter (at current selected level). If you want to scroll backwards, use SHIFT-letter. There is no distinguishing between lower and upper case.

### How can you double click with the keyboard?

Press return (and in some cases, right-arrow).

### How can you switch between right and left window panes using the keyboard?

Press tab.

### How can you close a branch using the keyboard?

Press left-arrow.