Ratpoison

About
Ratpoison is a radically different window manager. Actually, when you get to use it for a while, you notice that the name window manager doesn't quite apply, since you don't run into a single window in the traditional sense. Well then, what is Ratpoison? For those who know the terminal utility called Screen, ratpoison is its X counterpart. In Ratpoison by default, every application takes up the whole screen. You can switch between screens using key combinations, launch new screens, and, more importantly, split the screen in two frames and run one application in each screen.

For more information about it, you can check Ratpoison's homepage.

Installation
As always, to install ratpoison you simply need to type the magic words:

Now, the next step is to configure your X server to launch that. If you are using XDM, then you can change your file to read something like the following:

.xinitrc

However, if you are using GDM (this also works for KDM presently), then you have to create the file :

Basic Usage
When you first invoke ratpoison, you may be surprised to see, well, nothing but a blank screen. But that is precisely the beauty of it. No menus, no titlebar, no icons, in short nothing. Everything works by using some rather simple keystrokes.

The first thing to note is that every internal ratpoison command starts with +. And if you are going to remember just one keystroke, remember – the help command, which displays all the other commands that you need to know. To run this use this command, you press and  together, release them, then press  alone.

To launch applications, you can use to execute a command. To cycle through the various open windows, you can use, where n is the index of the screen you want to switch to.

Some useful commands (case-sensitive):


 * Start a terminal (xterm by default):
 * Prev/Next frame quick toggle:
 * Close (kill) a window:
 * Split the screen horizontally:
 * Split vertically:
 * Move between split windows: and the appropriate arrow key
 * Delete the selected frame:
 * Resize a frame:, resize with arrow keys (only in unstable, as of 29/09/06)
 * Unsplit (single maximized window):
 * Next window: or  or
 * Prev window:
 * List windows:
 * Banish the mouse pointer to the bottom right of the screen:
 * Send a C-t to the program (such as open new tab in firefox):
 * Execute a program:
 * Execute a ratpoison command:
 * Quit ratpoison:

Configuration
Ratpoison is highly configurable, and you can remap all keycombinations as you wish. The file in your home directory should contain default settings, which are sourced when ratpoison loads up.

Some lines you may wish to add to your :

.ratpoisonrc

This starts firefox on receiving the keycombination (of course, after a ).

Use this to make your own binds:

.ratpoisonrc

Saves the keypress.. note the 'top' keyword. This maps the numpad key to directly switch to window 0.

Workspaces
Workspaces are not provided by ratpoison functions, but by /usr/bin/rpws (which belongs to the ratpoison package). /usr/bin/rpws is not mentioned in the ratpoison man page and doesn't have its own man page.

First, initiate the number of workspaces desired (6 workspaces in this case) .ratpoisonrc

Second, switch between workspaces (workspace 2, in this case): command line

Third, configure keybindings for rpws (if desired). Xbindkeys is supported, but this is not the standard way of keybinding in ratpoison. .ratpoisonrc 'bind' is an alias for 'definekey'; it may be used interchangeably if present in the man page.

.ratpoisonrc and so on (depending on how you have configured ).

Fourth, configure default workspaces on startup. There is not standard way, and this is the only currently supported method. This is achieved by executing a file with instructions on how to set up workspaces. Executing your commands directly in .ratpoisonrc does not yet work, this is not a bug (rather, a lacking feature), since /usr/bin/rpws is not a ratpoison function, but a tool packaged with the ratpoison package;

.ratpoisonrc

.ratpoison_workspaces