xfe  1.44
About: Xfe (X File Explorer) is a file manager and browser (using the FOX toolkit).
  Fossies Dox: xfe-1.44.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

xfe Documentation

Some Fossies usage hints in advance:

  1. To see the Doxygen generated documentation please click on one of the items in the steelblue colored "quick index" bar above or use the side panel at the left which displays a hierarchical tree-like index structure and is adjustable in width.
  2. If you want to search for something by keyword rather than browse for it you can use the client side search facility (using Javascript and DHTML) that provides live searching, i.e. the search results are presented and adapted as you type in the Search input field at the top right.
  3. Doxygen doesn't incorporate all member files but just a definable subset (basically the main project source code files that are written in a supported language). So to search and browse all member files you may visit the Fossies xfe-1.44.tar.xz contents page and use the Fossies standard member browsing features (also with source code highlighting and additionally with optional code folding).
README

XFE, X File Explorer File Manager Copyright (C) 2002-2020 Roland Baudin http://roland65.free.fr/xfe http://sourceforge.net/projects/xfe

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Icons were taken from different file managers and desktops: gentoo, xplore, dfm, nautilus, Gnome, KDE, XFCE and some of them were modified.

This software uses the FOX Toolkit Library (http://www.fox-toolkit.org).

*IMPORTANT REMARKS *

  1. You must use the current stable Fox version 1.6.36 (required!) or higher in the 1.6.x branch. The current version of Xfe neither can be build using the Fox 1.0.x, 1.2.x, 1.4.x, nor using the 1.7.x series.

  2. UTF-8 is now supported, thus check that your LANG environment variable is set to be UTF-8 compliant otherwise accents and special characters could be wrong displayed. For composed characters to work (like ü or ê), FOX must be compiled with the --with-xim configure option. See the "Non Latin based languages" section of this README file for complementary informations.

Description =-=-=-=-=-=

X File Explorer (Xfe) is a lightweight file manager for X11, written using the FOX toolkit. It is desktop independent and can easily be customized. It has Commander or Explorer styles and it is very fast and small. Xfe is based on the popular, but discontinued X Win Commander, originally written by Maxim Baranov.

System requirements =-=-=-=-=-=-=-=-=-=

Xfe is written in C++ and built using the FOX graphical toolkit library. Thereore, to build the current Xfe version, you need the FOX library 1.6.x installed on your system. Note that Xfe do not compile with the development version 1.7.x of FOX!

Xfe is known to run on Linux based systems. It should compile and run on any Unix or Unix-like system. It doesn't run on Windows.

Installation instructions are given below.

Features =-=-=-=-=

- Very fast graphic user interface
- Small memory footprint
- UTF-8 support
- HiDPI monitor support
- Commander/Explorer interface with four file manager modes: a) one panel, b) a folder tree
  and one panel, c) two panels and d) a folder tree and two panels
- Horizontal or vertical file panels stacking
- Panels synchronization and switching 
- Integrated text editor and viewer (X File Write, Xfw)
- Integrated image viewer (X File Image, Xfi)
- Integrated package (rpm or deb) viewer / installer / uninstaller (X File Package, Xfp)
- Custom shell scripts (like Nautilus scripts)
- Search files and directories
- Natural sort order (foo10.txt comes after foo2.txt...)
- Copy/cut/paste files from and to your favorite desktop (GNOME/KDE/XFCE/ROX)
- Drag and Drop files from and to your favorite desktop (GNOME/KDE/XFCE/ROX)
- Disk usage command
- Root mode with authentication by su or sudo
- Status line
- File associations
- Optional trash can for file delete operations (compliant with Freedesktop standards)
- Auto save registry
- Double click or single click files and directories navigation
- Mouse right click pop-up menu in tree list and file lists
- Change file attributes
- Mount/Unmount devices (Linux only)
- Warn when mount point are not responding (Linux only)
- Toolbars
- Bookmarks
- Back and forward history lists for folder navigation
- Path linker for folder navigation
- Color themes (GNOME, KDE, Windows...)
- Control themes (Standard or Clearlooks like)
- Icon themes (Xfe, GNOME, KDE, Tango, Windows...)
- Create archives (tar, compress, zip, gzip, bzip2, xz and 7zip formats are supported)
- Extract archives (tar, compress, zip, gzip, bzip2, xz, lzh, rar, ace, arj and 7zip formats are supported)
- File comparison (through external tool)
- Tooltips with file properties
- Progress bars or dialogs for lengthy file operations
- Thumbnails image previews
- Configurable key bindings
- Startup notification (optional)
- and much more...

Default Key bindings =-=-=-=-=-=-=-=-=-=-=

Below are the global default key bindings. These key bindings are common to all X File applications.

* Select all                        - Ctrl-A
* Copy to clipboard                 - Ctrl-C
* Search                            - Ctrl-F
* Search previous                   - Ctrl-Shift-G
* Search next                       - Ctrl-G
* Go to home folder                 - Ctrl-H
* Invert selection                  - Ctrl-I
* Open file                         - Ctrl-O
* Print file                        - Ctrl-P
* Quit application                  - Ctrl-Q
* Paste from clipboard              - Ctrl-V
* Close window                      - Ctrl-W
* Cut to clipboard                  - Ctrl-X
* Deselect all                      - Ctrl-Z
* Display help                      - F1
* Create new file                   - Ctrl-N
* Create new folder                 - F7
* Big icon list                     - F10
* Small icon list                   - F11
* Detailed file list                - F12
* Toggle display hidden files       - Ctrl-F6
* Toggle display thumbnails         - Ctrl-F7
* Vertical panels                   - Ctrl-Shift-F1
* Horizontal panels                 - Ctrl-Shift-F2
* Go to working folder              - Shift-F2
* Go to parent folder               - Backspace
* Go to previous folder             - Ctrl-Backspace
* Go to next folder                 - Shift-Backspace

Below are the default X File Explorer key bindings. These key bindings are specific to the Xfe application.

* Add bookmark                      - Ctrl-B
* Filter files                      - Ctrl-D
* Execute command                   - Ctrl-E
* Create new symbolic link          - Ctrl-J
* Switch panels                     - Ctrl-K
* Clear location bar                - Ctrl-L
* Mount file system (Linux only)    - Ctrl-M
* Rename file                       - F2
* Refresh panels                    - Ctrl-R
* Symlink files to location         - Ctrl-S
* Launch terminal                   - Ctrl-T    
* Unmount file system (Linux only)  - Ctrl-U
* Synchronize panels                - Ctrl-Y
* Create new window                 - F3
* Edit                              - F4
* Copy files to location            - F5
* Move files to location            - F6
* File properties                   - F9
* One panel mode                    - Ctrl-F1
* Tree and panel mode               - Ctrl-F2
* Two panels mode                   - Ctrl-F3
* Tree and two panels mode          - Ctrl-F4
* Toggle display hidden directories - Ctrl-F5
* Go to trash can                   - Ctrl-F8
* Create new root window            - Shift-F3
* View                              - Shift-F4
* Move files to trash can           - Del
* Restore files from trash can      - Alt-Del
* Delete files                      - Shift-Del
* Empty trash can                   - Ctrl-Del

Below are the default X File Image key bindings. These key bindings are specific to the Xfi application.

* Zoom to fit window                - Ctrl-F
* Mirror image horizontally         - Ctrl-H
* Zoom image to 100%                - Ctrl-I
* Rotate image to left              - Ctrl-L
* Rotate image to right             - Ctrl-R 
* Mirror image vertically           - Ctrl-V

Below are the default X File Write key bindings. These key bindings are specific to the Xfw application.

* Toggle word wrap mode             - Ctrl-K
* Goto line                         - Ctrl-L
* Create new document               - Ctrl-N
* Replace string                    - Ctrl-R
* Save changes to file              - Ctrl-S
* Toggle line numbers mode          - Ctrl-T
* Toggle upper case mode            - Ctrl-Shift-U
* Toggle lower case mode            - Ctrl-U
* Redo last change                  - Ctrl-Y
* Undo last change                  - Ctrl-Z

X File Package (Xfp) only use some of the global key bindings.

Note that all the default key bindings listed above can be customized in the Xfe Preferences dialog. However, some key actions are hardcoded an cannot be changed. These include:

* Ctrl-+ and Ctrl--                 - zoom in and zoom out image in Xfi
* Shift-F10                         - display context menus in Xfe
* Space                             - select an item in file lists
* Return                            - enter directories in file lists, open files, select button actions, etc.
* Esc                               - close current dialog, unselect files, etc.

Drag and Drop operations =-=-=-=-=-=-=-=-=-=-=-=-=

Dragging a file or group or files (by moving the mouse while maintaining the left button pressed) to a folder or a file panel optionally opens a dialog that allows one to select the file operation: copy, move, link or cancel.

Trash system =-=-=-=-=-=-=

Starting with version 1.32, Xfe implements a trash system that is fully compliant with the Freedesktop standards. This allows the user to move files to the trash can and to restore files from it, from within Xfe or your favorite desktop. Note that the trash files location is now: $home/.local/share/Trash/files

Configuration =-=-=-=-=-=-=

You can perform any Xfe customization (layout, file associations, key bindings, etc.) without editing any file by hand. However, you may want to understand the configuration principles, because some customizations can also easily be done by manually editing the configurations files. Be careful to quit Xfe before manually editing any configuration file, otherwise changes could not be taken into account.

The system-wide configuration file xferc is located in /usr/share/xfe, /usr/local/share/xfe or /opt/local/share/xfe, in the given order of precedence.

Starting with version 1.32, the location of the local configuration files has changed. This is to be compliant with the Freedesktop standards.

The local configuration files for Xfe, Xfw, Xfi, Xfp are now located in the ~/.config/xfe folder. They are named xferc, xfwrc, xfirc and xfprc.

At the very first Xfe run, the system-wide configuration file is copied into the local configuration file ~/.config/xfe/xferc which does not exists yet. If the system-wide configuration file is not found (in case of an unusal install place), a dialog asks the user to select the right place. It is thus easier to customize Xfe (this is particularly true for the file associations) by hand editing because all the local options are located in the same file.

Default PNG icons are located in /usr/share/xfe/icons/xfe-theme or /usr/local/share/xfe/icons/xfe-theme, depending on your installation. You can easily change the icon theme path in Preferences dialog.

HiDPI support =-=-=-=-=-=-=

Starting with version 1.44, Xfe supports HiDPI monitors. All users have to do is to manually adjust the screen resolution using the Edit / Preferences / Appearance / DPI option. A value of 200 - 240 dpi should be fine for Ultra HD (4K) monitors.

Scripts =-=-=-=

Custom shell scripts can be executed from within Xfe on the files that are selected in a panel. You have to first select the files you want to proceed, then right click on the file list and go to the Scripts sub menu. Last, choose the script you want to apply on the selected files.

The script files must be located in the ~/.config/xfe/scripts folder and have to be executable. You can organize this folder as you like by using sub-folders. You can use the Tools / Go to script folder menu item to directly go to the script folder and manage it.

Here is an example of a simple shell script that list each selected file on the terminal from where Xfe was launched:

#!/bin/sh for arg do /bin/ls -la "$arg" done

You can of course use programs like xmessage, zenity or kdialog to display a window with buttons that allows you to interact with the script. Here is a modification of the above example that uses xmessage:

#!/bin/sh ( echo "ls -la" for arg do /bin/ls -la "$arg" done ) | xmessage -file -

Most often, it is possible to directly use Nautilus scripts found on the Internet without modifications.

Search files and directories =-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Xfe can quickly search files and directories by using find and grep command backends. This is done through the Tools / Search files menu item (or by using the Ctrl-F shortcut).

In the search window, users can then specify usual search patterns like name and text, but more sophisticated search options are also available (size, date, permissions, users, groups, follow symlinks and empty files). Results appear in a file list and users can use the right click menu to manage their files, the same way as they do in the file panels.

The search can be interrupted by clicking on the Stop button or pressing the Escape key.

Non Latin based languages =-=-=-=-=-=-=-=-=-=-=-=-=

Xfe can display its user interface and also the file names in non latin character based languages, provided that you have selected a Unicode font that supports your character set. To select a suitable font, use the Edit / Preferences / Font menu item.

Multilingual Unicode TrueType fonts can be found at this address: http://www.slovo.info/unifonts.htm

Tips =-=-=

File list - Select files and right click to open a context menu on the selected files - Press Ctrl + right click to open a context menu on the file panel - When dragging a file/folder to a folder, hold on the mouse on the folder to open it

Tree list - Select a folder and right click to open a context menu on the selected folder - Press Ctrl + right click to open a context menu on the tree panel - When dragging a file/folder to a folder, hold on the mouse on the folder to expand it

Copy/paste file names - Select a file and press Ctrl-C to copy its name into the clipboard. Then in a dialog,press Ctrl-V to paste the file name. - In a file operation dialog, select a filename in the line containing the source name and paste it directly to the destination using the middle button of your mouse. Then modify it to suit your needs.

Add files to the clipboard
- You can select files from a directory, copy them to the clipboard by pressing Ctrl-C. This erases the previous clipboard content. Then, you can move to another directory, select other files and add them to the clipboard content by pressing Shift-Ctrl-C. This does not erase the previous clipboard content. At last, you can move to the destination and press Ctrl-V to copy all the files you have in the clipboard. Of course, this also works with Ctrl-X and Shift-Ctrl-X to cut and paste the files.

Startup notification - Startup notification is the process that displays a feedback (a sandbox cursor or whatever) to the user when he has started an action (file copying, application launching, etc.). Depending on the system, there can be some issues with startup notification. If Xfe was compiled with startup notification support, the user can disable it for all applications at the global Preferences level. He can also disable it for individual applications, by using the dedicated option in the first tab of the Properties dialog. This latter way is only available when the file is an executable. Disabling startup notification can be useful when starting an old application that doesn't support the startup notification protocol (e.g. Xterm, Xpdf).

Root mode - If you use the sudo root mode, it can be useful to add password feedback to the sudo command. For this purpose, edit your sudoers file like this: sudo visudo -f /etc/suoders and then add 'pwfeedback' to the default options, as shown below: Defaults env_reset,pwfeedback After that, you should see stars (like *****) when you type your password in the small authentication window.

Install from sources =-=-=-=-=-=-=-=-=-=-=

To install Xfe in /usr/local, type (the last line must be run as root):

./configure
 make
 make install

To install Xfe in another place, for example in /opt, type (last line as root):

./configure --prefix=/opt
 make
 make install

The above installations assume that the FOX library is installed in a standard place (/usr or /usr/local). If FOX is installed in a non standard place, for example in /opt, then you should run (last line as root):

PATH=$PATH:/opt/bin CPPFLAGS=-I/opt/include LDFLAGS=-L/opt/lib ./configure --prefix=/opt make make install

Build an RPM package =-=-=-=-=-=-=-=-=-=-=

You first need the correct fox-1.6.x and fox-devel-1.6.x packages to be installed.

To create an RPM package from the Xfe sources, simply type: rpmbuild -ta Xfe-VVV.tar.gz

where VVV is the Xfe version number (e.g. 1.35).

The created RPM package Xfe-VVV-1.i386.rpm is usually located in /usr/src/rpm/RPM/i386, but this may vary depending on your distribution and/or your customizations.

To install the created RPM package Xfe-VVV-1.i386.rpm, enter the following command (as root): rpm -Uvh Xfe-VVV-1.i386.rpm

Build a Debian package =-=-=-=-=-=-=-=-=-=-=-=

You first need the correct libfox1.6 and libfox1.6-dev packages to be installed.

Extract the sources and enter the source folder: tar zxvf Xfe-VVV.tar.gz cd Xfe-VVV

Then, build the Debian package (no need to sign the package, thus the -uc -us options): fakeroot dpkg-buildpackage -uc -us

And finally, install the created package (as root): cd .. dpkg -i Xfe_VVV-1_i386.deb

Bugs =-=-=

Please report any found bug to Roland Baudin roland65@free.fr. Don't forget to mention the Xfe version you use, the FOX library version and your system name and version.

Translations =-=-=-=-=-=-=

Xfe is now available in 24 languages but some translations are only partial. To translate Xfe to your language, open the Xfe.pot file located in the po folder of the source tree with a software like poedit, kbabel or gtranslator and fill it with your translated strings (be careful to the hotkeys and c-format characters), and then send it back to me. I'll be pleased to integrate your work in the next Xfe release.

Patches =-=-=-=

If you have coded some interesting patch, please send it to me, I will try to include it in the next release...

Enjoy!

Many thanks to Maxim Baranov for his excellent X Win Commander and to all people that have provided useful patches, translations, tests and advices.

[Last revision: 6/05//2020]