Copyright © 2005 Thomas Leonard
Conditions
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 of the License, 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. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA, 02111-1307, USA.
Abstract
ROX-Filer is a graphical file manger for the X Window System. Its user interface is based on the RISC OS filer and it supports similar features such as application directories and drag-and-drop loading and saving of files. The filer can also act as a pinboard, allowing you to pin frequently used files onto the desktop background.
Table of Contents
Table of Contents
ROX-Filer is a simple and easy to use graphical file manager for X11 — the windowing system used on Unix and Unix-like operating systems. It is also the core component of the ROX Desktop [ROX]. Many of the filer's features were inspired by RISC OS [RISC OS]. `ROX' stands for `RISC OS–On–X'.
A common drag-and-drop protocol used, for example, by the GNOME desktop[GNOME]. This allows data to be loaded into an application by dragging it from a filer window to a program. The full specification is given in [DND].
An extension to XDND that allows applications to save data by dragging an icon back to a filer window. The full specification is given in [XDS].
A simple, but flexible, system for managing user choices. By default, choices are
saved under `~/.config'. However, you can change this by setting
the XDG_CONFIG_HOME environment variable. See
[BaseDir] for details.
Self contained relocatable applications, where installation is as simple as copying it to where you want it and uninstalling it is just a matter of deleting a directory. Described later in this documentation.
The filer can be made to display image files by using the image itself for the icon, instead of a generic `this-is-an-image' icon. Very useful for organising a directory full of photos! See [Thumbs] for details.
In the past, each desktop had its own database of rules for determining the type of files. The Shared MIME Info Database[SharedMIME] unifies these into a single system shared by all desktops.
Collections of file icons, called themes, can be installed (eg, to `~/.icons'). You can switch between themes in the Options box. Once other desktops support this fully, themes will be sharable between desktops. See [IconTheme] for details.
If used with a recent Linux kernel (2.4.x series), the filer will notice changes to directories automatically. On other systems, directories will update when the pointer is moved over them.
Table of Contents
You should be able to start the filer by simply running the rox
command, by typing it at a shell prompt or otherwise. If the filer isn't installed yet,
consult Appendix A, Compiling.
By default, ROX-Filer will start by displaying the current directory. You can get it to display other directories instead by listing them after the command:
$ rox /home /usr /usr/local
You can also use it to open files, like this:
$ rox README
The filer supports various options; use -h for a list.
All options have long and short forms (eg -h and
--help) — although on some systems you can only use the
short versions.
Note that if the same version of the filer is already running on this machine then, by default, it will be used to open the directories.
For a complete list of command-line options, see Appendix B, Manual page
If you want the filer to manage your desktop background then you use
the --pinboard option and supply a name for the pinboard,
eg:
$ rox --pinboard=MyPinboard
The pinboard configuration is saved in `~/.config/rox.sourceforge.net/ROX-Filer/pb_MyPinboard' as soon as you change it in some way (for example, by dropping a file onto the background). You can have as many pinboards as you like and switch between them by running rox again, eg:
$ rox --pinboard=MyOtherPinboard
To turn off the pinboard again, set the name to an empty string:
$ rox --pinboard=
See the window manager notes if you have trouble getting the icons to display correctly. The pinboard may also be turned on and off by locating `ROX-Filer' in a filer window and choosing or from the menu.
Panels work just like the pinboard, except that they run along the edge of the screen. To create a panel:
$ rox -b=MyPanel
The panel should be displayed in a window without a title bar. If this does not work then see the window manager notes for some ideas. You can drag files onto either side of the panel to add them. Panel icons can be repositioned by dragging them with the middle mouse button. Changes to the panel are automatically saved to `~/.config/rox.sourceforge.net/ROX-Filer/pan_MyPanel'. As with the pinboard, you can switch between panel configurations simply by running rox again with a different panel name.
$ rox -b=MyOtherPanel
You can set which edge of the screen the panel appears on using the popup menu. You can also set the edge when enabling the panel by using the side instead of -b. Specify a blank name to remove the panel:
$ rox --bottom=
You may have to play around with your window manager a bit to get the pinboard icons and panels to display correctly (eg, without borders and underneath all other windows). In particular, try setting the stacking level / depth to low (or a negative value). Make sure any 'Keep transients above other windows' type options are turned off!
Sawfish tries to guess whether you are using GNOME at start-up and only provides support if so. You may need to add the line
(require 'gnome)
to your `.sawfishrc' file (see the sawfish manual for more details).
Paste these configuration settings into `~/.icewm/preferences':
# Manage root window (EXPERIMENTAL - normally enabled!)
GrabRootWindow=1 # 0/1
# Bitmask of root window button click to use in window manager
UseRootButtons=3 # [0-255]
# Desktop mouse-button click to show the menu
DesktopWinMenuButton=1 # [0-20]
# Desktop mouse-button click to show the window list
DesktopWinListButton=2 # [0-5]
# Desktop mouse-button click to show the window list menu
DesktopMenuButton=0 # [0-20]Paste these into `~/.icewm/winoptions':
# ROX-Filer pinboard and panel
ROX-Filer.icon: folder
ROX-Panel.layer: Dock
ROX-Panel.doNotCover: 1
ROX-Panel.ignoreWinList: 1
ROX-Panel.ignoreTaskBar: 1
ROX-Panel.ignoreQuickSwitch: 1
ROX-Pinboard.layer: Below
ROX-Pinboard.ignoreWinList: 1
ROX-Pinboard.ignoreTaskBar: 1
ROX-Pinboard.ignoreQuickSwitch: 1
ROX-Filer.layer: NormalRestart IceWM and the filer for the new settings to take effect.
Run the filer using rox -p=Default.
Press Control+Escape, or [RightButtonDown] on any window's titlebar. Choose from the menu.
The Attributes Inspector window appears. From the pulldown menu at the top, choose (the top item).
Press the button.
The cursor changes to a double crosshair. Select one of the
ROX-Filer pinboard icons. The radio buttons
in the Window Specification frame should change
their labels to include ROX-Pinboard.ROX-Filer
as the first item. Select that radio button.
Choose from the pulldown menu. In the Attributes frame, choose the features you want the pinboard icons to have; I recommend the following:
Disable titlebar
Disable resizebar
Disable close button
Disable miniaturize button
Keep at bottom (sunken)
Omnipresent
Choose from the pulldown menu. In the Advanced frame, choose the advanced features you wish; I recommend the following:
Do not show in the window list
Ignore 'Hide Others'
Ignore 'Save Session' (possibly)
When you're finished selecting window attributes, press the button, and then close the Attributes Inspector window using the button in the titlebar.
If you run the filer as the `root' user then the filer will display a message at the top of each window to remind you. The root user has permission to access or change any file in the system, so be very careful when using the filer like this. Normally, you should log in as an ordinary user and only change to root when you need to. If you have sudo installed and set up then you can run the filer like this:
$ sudo rox
Remember, any file operations you perform and any programs you run from these windows will run as root too! Be careful!
You may find that the X server won't allow root (or other users) to connect. Reading the manual pages for xauth and xhost may give you some hints, but it varies between systems (which is why this isn't built in to the filer!).
Note: gnomesu can also be used to run the filer as root, but you'll need to use setsid to run it in a new session group, otherwise gnomesu kills it before it has a chance to open a window. For example:
gnomesu -c 'setsid /usr/local/bin/rox /'
Quick start:
Click the left [1] mouse button to open files and directories.
Click the right button to get a menu. Click over a file to perform an action on that file.
Drag files between windows with the left button to copy, move or link them (choose from a menu). Linking creates a shortcut to the original file.
By default, the mouse button bindings are designed to fit in with X conventions. However, the behaviour is highly configurable — have a play in the Options window if you don't like the normal settings. The normal settings behave as follows:
| Key or mouse button | Action |
|---|---|
| Left button click | Open the file or directory clicked on. Hold down Control to select things instead of opening them. Hold down Shift to look inside applications, treat files as text, follow symlinks, or get more control over mount points (see Removable devices). |
| Middle button click | Same as left click, but open a directory in a new window or close the viewer when opening a file. |
| Right button click | Open the main menu. Hold down Control while clicking to go directly to the Selection submenu. Hold down Shift to get the menu (see the Send To menu section). |
| Drag an item (left mouse button) | Show a menu of possible actions. There is an option to disable this menu, in which case this gesture will copy the file(s) to the destination (an application or another filer window). Hold down Shift to move the file, Control+Shift to create a symbolic link, or Alt to get the menu of possible actions. |
| Drag an item (middle mouse button) | When you let go, display a menu of possible actions. There is an option to make this move the files rather than open the menu. |
| Drag (not over an item) | Select a group of items by dragging a box around them. With the left mouse button, only the files in the box will be selected. If you hold down Control then the boxed items are added to the selection. If you use the middle button then the boxed items switch between being selected and unselected. |
| Double-click background | Resize the window to a sensible size (this can be turned off from the Options window). |
| Backspace | Change to viewing the parent directory. |
| Cursor keys | Move the cursor around. |
| Page Up, Page Down | Move the cursor up and down a page at a time. |
| Home, End | Move to the first/last entry in the directory. |
| Return | Acts like clicking on the file. You may hold down Shift for other effects, as with clicking. Holding down Alt works like clicking with the middle button; directories open in a new window and opening files closes the directory at the same time. |
| Spacebar | Toggles the item under the cursor between being selected and unselected, and moves to the next item. |
| Tab, Shift+Tab | Moves the cursor to the next/previous selected item. |
| Hold mouse over an item | Shows a tooltip containing a brief description of an application (if available), the target of a symbolic link, and the full name of a file, if it's too long to show in the main window. |
If you have user-defineable key-bindings enabled, then other keys can easily be set by opening the menu, moving the pointer over the item you want to use and pressing a key. The key will appear in the menu and can be used from then on. Key bindings are automatically saved when the filer quits. You can use an XSettings manager, such as ROX-Session, to turn this feature on for all Gtk+-2.0 applications.
[1] This documentation assumes that button–1 is the left button, button–2 is the middle button and button–3 is the right button. This is not always the case — for example, in a left-handed setup.
Table of Contents
When you select items in a ROX-Filer window, the filer takes the primary selection. You can then paste into another window to get the pathnames of the selected files.
Procedure 4.1. Example: loading a file into an application that doesn't support drag-and-drop:
Open the application's Open dialog box.
Control-click on the file in ROX-Filer to select it.
Click the middle button in the filename box in the application to paste the name in.
Note that clicking the middle mouse button in the main area of most web-browsers will open the selected file.
If you select something else (eg, some text in another program), the selected items in the filer window will be shown shaded (the filer no longer has the primary selection). Clicking on one of the shaded items will cause the filer to regain the primary selection.
It is sometimes useful to save the current selection for later. You can save the current selection to one of ten numbered groups by pressing Control+<number>. You can restore a saved group by pressing the group number on its own. You can do this from a different directory, or even a different filer window.
Saving is also useful even if there is no selection, since it still saves the current directory.
Procedure 4.2. Example: saving a directory and returning to it later:
You are looking at a directory, and wish to remember it. Press Control+1.
Move to another directory, or close the window, etc.
Press 1 in any filer window to return to the first directory.
The groups are saved automatically for next time the filer is loaded.
By default, each window has a toolbar along the top. You can disable this (or make it larger) from the Options window, as well as set which tools appear on the toolbar. Normally, you should click with the left mouse button (1). However, many tools can perform a related function if clicked on with buttons 2 or 3 (middle or right).
| Icon | Mouse button 1 | Other button |
|---|---|---|
| Cross | Close the window | Open a new window |
| Up arrow | Change to parent directory | Show parent in a new window [1] |
| House | Change to home directory | Show home in a new window [1] |
| Jump to point | Open the Bookmarks menu | Edit the bookmarks |
| Looping arrows | Reread the directory contents | Open a new window |
| Magnifying glass (+) | Select a larger icon size. | Select a smaller icon size. |
| Magnifying glass (fit) | Set Automatic sizing mode and resize the window. | - |
| List | Hide or show extra details | Same |
| A..Z | Step forward through the different sort types. | Step backward through the sort types. |
| Eye | Toggle the display of hidden files (those with names starting with a dot) | Toggle display of thumbnails for image files. |
| List with selections | Select All. | Invert Selection. |
| Life-belt | Show ROX-Filer's help files | Open manual directly |
[1] If the 'New window on button 1' option is turned on then the default is to open a new window — clicking with the other button reuses the same window instead.
Dragging files to the Up or Home icons acts just like dragging them into the directory which the button leads to. Dragging to the Bookmarks button will add the directory as a bookmark.
The toolbar can also show the number of files in the directory, and information about the selection. This can be turned on or off in the Options box.
Table of Contents