NAME¶
ratpoison - window manager without mouse dependency
SYNOPSIS¶
ratpoison --help |
--version
ratpoison [
-d dpy] [
-s num] [
-f
file]
ratpoison [
-d dpy] [
-s num] [
-i]
-c command [
-c command ... ]
DESCRIPTION¶
Ratpoison is a Window Manager without fat library dependencies, fancy graphics
or rat dependence.
The screen can be split into non-overlapping frames. All windows are kept
maximized inside their frames.
All interaction with the window manager is done through keystrokes. ratpoison
has a prefix map to minimize key clobbering.
OPTIONS¶
- -h, --help
- Show summary of options.
- -v, --version
- Show version of program.
- -d, --display display
- Set the X display to use or send commands to.
- -s, --screen number
- Only use the specified screen.
- -f, --file filename
- Specify an alternate configuration file. If this is not
given, ratpoison will try $HOME/.ratpoisonrc and if that does not
exist /etc/ratpoisonrc and execute each command when starting
up.
- -i, --interactive
- Execute commands given with -c or --command
in interactive mode. That means it will behave exactly as if called with
C-t : like prompting for missing arguments and things like
that.
- -c, --command
- Send ratpoison a command. There must be a ratpoison
instance running as window manager for the given display/screen for this
to work. Do not forget to quote the command if it contains spaces. For
example:
ratpoison -c "echo hello world"
KEY BINDINGS¶
To avoid conflicts with other programs, all default ratpoison key bindings start
with an escape key, per default
C-t (read Control-t). Some important
default key bindings:
C-t ? Show key bindings
C-t c Start an X terminal
C-t n Switch to next window
C-t p Switch to previous window
C-t
1|2|3|4|5|6|7|8|9
Switch to window number 1|2|...
C-t k Close the current window
C-t K XKill the current application
C-t s|S Split the current frame into two
vertical|horizontal ones
C-t
Tab|Left|Up|Right|Down
Switch to the next|left|top|right|bottom frame.
C-t Q Make the current frame the only one
C-t : Execute a ratpoison command
Further default key bindings can be found in parentheses after the commands in
the next section:
COMMANDS AND DEFAULT ALIASES¶
- $@[)
-
Do nothing and that successfully. (Useful if you pressed C-t in
error).
- $@[)
-
Add a hook: Run command command whenever event is called.
Possible events are:
deletewindow Run after a window is withdrawn.
key Run whenever a top level key is pressed. (by default C-t)
quit Run before exiting ratpoison.
restart Run before restarting ratpoison.
switchframe Run after a frame actually switched, but before the
window in it is focused.
switchgroup Run after selecting a new group.
switchwin Run after a new window is selected. (With dedication, it
may already be inactive again, if it was put into another frame)
- $@[)
-
Add alias as new way to call command.
- $@[)
-
alias for " definekey root key command"
- $@[)
-
Banish the rat cursor to the lower right corner of the screen.
- $@[)
-
Banish the rat cursor to the lower right corner of the current window. If
there isn't a window in the current frame, it banishes the rat cursor to
the lower right corner of the frame.
- $@[)
-
If the optional argument is given, change the current directory of ratpoison
to directory. If nothing is given, change it to the value of the
environment variable "HOME".
- $@[)
-
Clears the unmanaged window list.
- $@[)
-
Like next but switch to the next window with another resource class
than the current one. (That means the next window belonging to another
type of application
than the current one.)
- $@[)
-
Like prev but switch to the previous window with another resource
class than the current one. (That means the previous window belonging to
another type of application
than the current one.)
- $@[)
-
Execute ratpoison-command interactively. (i.e. ask for possible
missing arguments.)
- $@[)
-
Add aliases for the new set commands starting with def to
support older scripts.
- $@[)
-
Like other but switch to the window of the current group that was
last accessed and has another resource class but is not currently
visible.
- $@[)
-
Show a bar marking the current frame.
- $@[)
-
Add a new key binding in keymap for key to execute
command. Default keymaps are top normally only containing
C-t, which reads a key from root, containing all the normal
commands.
Note that you have to describe ":" by "colon",
"!" by "exclam" and so on. If you cannot guess a name
of a key, try either C-t key and look at the error message,
or try :describekey root and pressing the key.
- $@[)
-
When compat was called there are some aliases starting with
def, which alias the new form with set. I.e. instead of
defresizeunit better use the new set resizeunit and so
on...
- $@[)
-
Consider the current frame dedicated/chaste ( 1) or promiscuous
(0).
A dedicated frame will not accept new windows. When new windows are to be
focused, they will be opened in a non-dedicated frame instead.
If no argument is given, toggle the current dedicateness. By default no
windows are dedicated.
- $@[)
-
Close the current window.
- $@[)
-
Deletes the keymap named keymap, that was generated with
newkmap. The keymaps top (or whatever was specified by
set topkmap) and root cannot be deleted.
- $@[)
-
Grab the next key. Similar to readkey, describekey shows only the
command in keymap, that would be executed by readkey.
- $@[)
-
Show text as ratpoison message.
- $@[)
-
Update the default escape key to key.
Strictly speaking it updates the the readkey root command in the
keymap top to key, the other binding in root
to key, and meta binding in root to key
without modifiers or C-key if key has no modifiers.
(If set topkmap was called with an argument other than top
that will be used instead of top.)
- $@[)
-
Exchange the window in the current frame with the window in the frame below
the current frame.
- $@[)
-
Exchange the window in the current frame with the window in the frame left
of the current frame.
- $@[)
-
Exchange the window in the current frame with the window in the frame right
of the current frame.
- $@[)
-
Exchange the window in the current frame with the window in the frame above
the current frame.
- $@[)
-
Spawn a shell executing shell-command.
- $@[)
-
Spawn a shell executing shell-command, without remembering the
current frame, so that _NET_WM_PID declaring programs will be placed into
the frame active when they open a window instead of the frame active when
ratpoison gets this command.
- $@[)
-
Spawn a shell executing shell-command, showing _NET_WM_PID supporting
programs in the given frame instead of the frame selected when this
program is run.
- $@[)
-
Output the defining data for all frames of the current screen, or for screen
number screenno if this is specified.
- $@[)
-
Focus the next frame.
- $@[)
-
Switch to the last selected focus.
- $@[)
-
Switch to the frame to the left of the current one.
- $@[)
-
Switch to the frame beneath the current one.
- $@[)
-
Switch to the frame to the right of the current one.
- $@[)
-
Focus the previous frame.
- $@[)
-
Switch to the frame above the current one.
- $@[)
-
Replace the current frames with the ones specified in frames in the
format as generated by fdump.
- $@[)
-
If an argument is supplied, switch to a frame given by number
frameno.
If no argument is given, show a frame selector in each frame and wait for a
key to be pressed. If the key matches an existing frame selector, this
frame gets focused.
Frame selectors are by default the numbers starting with zero, but they can
be changed by seting framesels.
- $@[)
-
If the optional argument group is supplied, delete group
group. Otherwise delete the current group. If the last group is
deleted, a new group with name default is created. The group has to
be empty, otherwise it cannot be deleted.
- $@[)
-
Output the value of the environment variable variable.
- $@[)
-
Paste the current X Selection into the current window.
- $@[)
-
Move all windows from group group into the current group.
- $@[)
-
Move the current window into group group.
- $@[)
-
Create a new group with name group and select it. Most window
commands only see (and thus select, consider next, previous or last)
windows within the group active when they are issued.
- $@[)
-
Create a new group named groupf, but do not select it.
- $@[)
-
Select the next group. Most window commands only see windows in the
effective group.
- $@[)
-
Select the last accessed group. Most window commands only see windows in the
effective group.
- $@[)
-
Select the prior group. Most window commands only see windows in the
effective group.
- $@[)
-
Change how in its frame the current window is aligned.
- $@[)
-
Rename current group.
- $@[)
-
Output a list of all groups with their number.
- $@[)
-
Select the group names group.
- $@[)
-
If the optional parameter keymap is given, list all keybindings in
this keymap, otherwise list all key bindings in keymap root.
- $@[)
-
Split the current frame into left frame and a right frame. If no parameter
is given, split in halves. If two numbers separated by a
slash (" /") are given, the left one is l
times the pth part and the right one ( p-l) times the
pth part of the prior width. Otherwise the right one is pixels
from right wide or the left one pixels from left wide,
depending whether there is - in front of the number or not.
- $@[)
-
Like next but switch to the next window with the same resource class
as the current one. (That means the next window belonging to the same
application
as the current one.)
- $@[)
-
Output the current the width, height, window number and window name of the
current window. (What name means is chosen by "
set winname".)
- $@[)
-
Like prev but switch to the previous window with the same resource
class as the current one. (That means the previous window belonging to the
same application
as the current one.)
- $@[)
-
Like other but switch to the window of the current group that was
last accessed and has the same resource class but is not currently
visible.
- $@[)
-
Close the X-connection of the X-client responsible for the current
window.
- $@[)
-
Reshow the last message.
- $@[)
-
Show ratpoison's license.
- $@[)
-
Do what key is bound to in the keymap keymap if supplied.
Otherwise what key is bound to in keymap root.
- $@[)
-
List all commands specified with addhook to be executed when even
event occurs.
- $@[)
-
Send the escape key (that which normally is C-t) to the current
window. If a key is specified, this is sent instead. Note that some
applications by default ignore the synthetic key that is sent using this
command as it is considered a security hole. xterm is one such
application.
- $@[)
-
Set the duration the message window is shown. If seconds is zero,
wait infinitely.
- $@[)
-
Generate a new keymap names keymap. This keymap can be used to add
new key-command mapping to it with definekey and can be called with
readkey.
- $@[)
-
Quit ratpoison and execute new window manager instead.
- $@[)
-
Switch to the next window in the current group.
- $@[)
-
Switch to the next screen. (If you have multiple physical ones.)
- $@[)
-
Give the number new to the window with the number old or the
current window.
- $@[)
-
Remove all frames on the current screen except the current frame and
maximize this one to the size of the whole screen.
- $@[)
-
Switch to the window of the current group that was last accessed but is not
currently visible.
- $@[)
-
Switch to the previous window in the current group.
- $@[)
-
Switch to the previous screen. (If you have multiple physical ones.)
- $@[)
-
Ratpoison will ask the user for input, showing prompt (or a single
colon, if no argument is given) and output the input the user has made.
Note that this command probably does not make much sense in interactive
mode.
- $@[)
-
Replace the X selection with the text x-selection. It can be inserted
into the current window with getsel.
- $@[)
-
Quit ratpoison.
- $@[)
-
Display the x y coordinates of the rat cursor relative to the screen.
- $@[)
-
Display the x y coordinates of the rat cursor relative to the current window
or current frame if no window is focused
- $@[)
-
Move the rat cursor to the position ( x,y).
- $@[)
-
Move the rat cursor to ( deltax,deltay), relative to the
current position.
- $@[)
-
Simulate a rat click with button (button 1=left button if none
given).
- $@[)
-
Simulate pressing|releasing rat button button (1=left button if none
given).
- $@[)
-
Grab the next key pressed, and execute the command associated to this key in
keymap. To show it is waiting for a key, ratpoison will change the
rat cursor to a square if waitcursor is set.
This command is perhaps best described with its usage in the default
configuration: By pressing C-t, which is the only key in the keymap
top, the command "readkey root" is executed. The
next key then executes the command in keymap root belonging to this
command.
- $@[)
-
Extend the current window to the whole size of its current frame and
redisplay it. (Useful to redisplay normal windows or bring transient
windows to the full size of the frame as only normal windows are maximized
by ratpoison)
- $@[)
-
Revert the last undo of frame changes.
- $@[)
-
Remove command command from the list of commands to be called when
event event is hit. (The command has to specified, as an event can
have multiple commands attached to it.) Use " listhook
hook" to get a list of all attached commands.
- $@[)
-
Remove the current frame and extend some frames around to fill the remaining
gap.
- $@[)
-
Kill frames directly below the current frame, extending the current frame as
much as possible.
- $@[)
-
Kill frames directly left of the current frame, extending the current frame
as much as possible.
- $@[)
-
Kill frames directly above the current frame, extending the current frame as
much as possible.
- $@[)
-
Kill frames directly right of the current frame, extending the current frame
as much as possible.
- $@[)
-
If deltax and deltay are supplied, resize the current frame by
that (i.e. move the bottom right corner by the given offsets and then move
this frame and resize adjacent frames to make the frames fill the whole
screen again.)
If in interactive mode no arguments are supplied, resize the current frame
interactively:
Return: finish resizing
C-g or Escape: abort resizing
C-n or Down or j: grow vertically
C-p or Up or k: shrink vertically
C-f or Right or l: grow horizontally
C-b or Up or h: shrink horizontally
s: shrink to size of current window
While resizing interactively, changes are in multiples of the amount of
pixels given by set resizeunit (by default 10).
- $@[)
-
Restart ratpoison.
- $@[)
-
Show or set what kind of windows are allowed to jostle into the foreground.
rudeness is a bitwise or of the following values:
1 Transient windows may raise.
2 Normal windows may raise.
4 New transient windows end up in the foreground.
8 New normal windows end up in the foreground.
Default is all allowed i.e. 15.
- $@[)
-
Output the list of all screens. The screens are separated by commas. Each
screen is shown as 6 values: its number, its x-coordinate, its
y-coordinate, its width, its height and if it is currently selected
(1=true,0=false).
- $@[)
-
If a number is given, switch to the window with number nr. If a name
is given, switch to the window in the current group with name name.
Blank the current frame, if - is given.
- $@[)
-
If no argument is given, output all ratpoison variables and their values.
If one argument is given, output the value of ratpoison variable
variable.
Otherwise set ratpoison variable variable to value. What
values are valid depends on the variable. See the section VARIABLES
later in this document for details.
- $@[)
-
Set the environment variable variable to value. (Environment
variables will be passed to all programs started from ratpoison.)
- $@[)
-
Output all frames similar to fdump, but not limited to one screen,
but all screens at once and with the screen number after each frame.
- $@[)
-
Replace the current frames with the ones specified in frames in the
format as generated by sfdump.
- $@[)
-
Shrink the current frame to the size of the current window with in.
- $@[)
-
alias for vsplit
- $@[)
-
Read file and execute each line as ratpoison command.
- $@[)
-
Switch to the screen screennumber. (If you have multiple physical
ones.)
- $@[)
-
Select whether ratpoison will show a startup message or not.
- $@[)
-
Exchange the window in src-frame (or the current frame if there is no
second argument) with the window dest-frame (or ask interactively
which frame to swap with if there is no argument).
- $@[)
-
Output current data and time.
- $@[)
-
Overwrite the title of the current window with newname. All following
ratpoison commands will only know the window under the new name.
- $@[)
-
Temporarily give control over to the other window manager tmpwm,
reclaiming control when that WM terminates.
- $@[)
-
Remove the alias alias.
- $@[)
-
alias for " undefinekey root key"
- $@[)
-
Remove the binding for key from keymap.
- $@[)
-
Un-do the last change to the frameset. (Like splitting, resizing, deleting,
...)
The amount of steps that can be undone is specified by the variable
maxundos.
- $@[)
-
Add name to the list of unmanaged windows. Thus, windows of this name
will not be managed but allowed to choose their position themselves.
In non-interactive mode calling it without arguments will print the list.
The list can be cleared again by calling clrunmanaged.
- $@[)
-
Remove variable variable from the list of environment variables.
- $@[)
-
Spawn a shell executing cmdline after showing a message with the
command.
- $@[)
-
Output version and compile time information.
- $@[)
-
Split the current frame into upper frame and a lower frame. If no parameter
is given, split in halves. If two numbers separated by a
slash (" /") are given, the upper one is l
times the pth part and the lower one ( p-l) times the
pth part of the prior height. Otherwise the lower one is pixels
from bottom wide or the upper one pixels from top high,
depending whether there is a - in front of the number or not.
- $@[)
-
Select if focusing a window moves the rat cursor to the place it had been
last time this window was focused, or not.
- $@[)
-
In interactive mode, show the list of all windows in the current group for
the duration specified by msgwait If msgwait is zero, toggle
between indefinitely showing and not showing.
The messages are shown in columns or rows depending on the setting of
winliststyle in the format set by set winfmt. The following
substitutions happen in format:
%a by the application name (resource name),
%c by the resource class,
%f by the frame number,
%g by the gravity of the window,
%h by the height of the window,
%H by the unit to resize the window vertically (height_inc)
%i by the X Window ID,
%p by the process ID,
%l by the last access number,
%M by the string Maxsize, if it specifies a maximum size,
%n by the window number,
%s by window status ( * is active window, + would be chosen by
other, - otherwise)
%S by the screen number
%t by the window name (see set winname),
%T by the string Transient, if it is a transient window
%w by the width of the window
%W by the unit to resize the window horizontally (width_inc)
%x by the xine screen number and
%% by a single %
Additionally there can be a positive decimal integer number between the
percent sign and the format string to specify the length this value should
be truncated to if longer. (For example: %20t)
In non-interactive mode, output the list of windows in the current group
line by line. The format string can be overwritten by the optional
parameter format.
VARIABLES¶
Ratpoison variables can be shown and set with
set. There are:
- $@[)
-
Set the amount of pixels interactive resizeing will add/subtract in
each step.
Default is 5.
- $@[)
-
The maximal amount of step ratpoison can undo with the undo command.
Default is 20.
- $@[)
-
Set the default gravity new normal windows will get. Possible values are the
same as in the gravity command, which changes the gravity of an
existing window: cardinal points or numbers 1 to 9.
Default is northwest.
- $@[)
-
Set the default gravity new self-maximized windows will get. Possible values
are the same as in the gravity command, which changes the gravity
of an existing window: cardinal points or numbers 1 to 9.
Default is center.
- $@[)
-
Set the default gravity new transient windows will get. Possible values are
the same as in the gravity command, which changes the gravity of an
existing window: cardinal points or numbers 1 to 9.
Default is center.
- $@[)
-
Select the location where message and prompt bars appear.
Default is northeast.
- $@[)
-
Make ratpoison use font font.
- $@[)
-
Set how much space at the borders of the screen will not be used.
Default is 0 0 0 0.
- $@[)
-
Selects how thick the frame around windows is.
Default is 1.
- $@[)
-
Selects how thick the frame around ratpoison's prompt or message windows is.
Default is 1.
- $@[)
-
Determine the width of the input window.
Default is 200.
- $@[)
-
If there is padding, determines whether the bar appears at the edge of the
screen ( 1) or at the edge of the window area (0).
Default is 0.
- $@[)
-
Make kmap the top keymap ratpoison grabs directly. The default value
is top.
- $@[)
-
Determine whether to change the rat cursor when waiting for a key (
1) or not ( 0). (see readkey and describekey).
Default is 1.
- $@[)
-
Choose the default format for the the windows command.
Default is %n%s%t.
- $@[)
-
Choose what is considered the "name" of the window by ratpoison:
title The title of the window.
name The resource name of the window.
class The resource class i.e. the name of the application.
Default is title.
- $@[)
-
The foreground color of the windows ratpoison creates.
Default is black.
- $@[)
-
The background color of the windows ratpoison creates.
Default is white.
- $@[)
-
The border color of the focused window.
Default is black.
- $@[)
-
The border color of unfocused windows.
Default is black.
- $@[)
-
Set horizontal padding of ratpoison windows to x and vertical padding
to y.
Default is 4 0
- $@[)
-
Determines whether windows are shown in rows or in columns.
Default is column.
- $@[)
-
Override the frame selectors fselect uses. The first character is the
selector for the first frame, the second character is the selector for the
second frame and so on.
Using this variable, one can directly access more than 10 frames.
Default is an empty string, which is equivalent to
"0123456789".
- $@[)
-
Specify maximum number of values kept in input history.
Default is 20.
- $@[)
-
Decide if new input lines added to history delete older equal lines from
history.
Default is 1 (on).
- $@[)
-
Decide if history expansion using ! is available. (Can only be activated
when compiled with readline's libhistory.)
Default is 0 (off).
AUTHOR¶
Upstream Author is Shawn Betts <sabetts@vcn.bc.ca>.
See /usr/share/doc/ratpoison/AUTHORS for other contributors.
This manual page was written by Bernhard R. Link
<brlink@debian.org>.