devilspie man page

devilspie — perform actions on windows as they are created

Synopsis

devilspie [OPTION]... configuration-files...

Description

devilspie is a program which can detect windows as they are created, and perform actions on them if they match as set of criteria.

The configuration files are a set of s-expressions.

Command-lines options:

-a --apply-to-existing
Apply to all existing windows instead of just new windows.
-d --debug
Output debug information
-l --list-symbols
List available symbols supported in input files.
-s symname --symbol-doc=symname
Get detailed help on symbol symname ('all' for all symbols).

Allowed Symbols

In the input files, the following symbols are known by devilspie:

is
String equality, (is a b) means a is the same as b.
contains
Substring, (contains haystack needle) means haystack contains needle.
matches
Regexp matches, (matches str pattern) means the regexp pattern matches str.
window_name
Return the title of the current window (String).
window_role
Return the role (as determined by the WM_WINDOW_ROLE hint) of the current window (String).
window_class
Return the class of the current window (String).
window_xid
Return the X11 window id of the current window (Integer).
application_name
Return the application name (as determined by libwnck) of the current window (String).
window_property
Returns the given property of the window, e.g. pass "_NET_WM_STATE" (String).
window_workspace
Returns the workspace a window is on (Integer).
debug
Debugging function, outputs the current window's title, name, role and geometry (Returns TRUE).
print
Print args (without trailing 0 returns boolean).
println
Print args (with trailing 0 returns boolean).
str
Transform parameters into strings and concat them.
hex
Transform the integer parameter into an unsigned hexadecimal string (with 0x prefix).
geometry
Set position + size (as tring) of current window (returns boolean).
fullscreen
Make the current window fullscreen (returns TRUE).
focus
Focus the current window (returns TRUE).
center
Center position of current window (returns boolean).
maximize
Maximise the current window (returns TRUE).
maximize_vertically
Maximise vertically the current window (returns TRUE).
maximize_horizontally
Maximise horizontally the current window (returns TRUE).
unmaximize
Un-maximise the current window (returns TRUE).
minimize
Minimise the current window (returns TRUE).
unminimize
Un-minimise the current window (returns TRUE).
shade
Shade ("roll up") the current window (returns TRUE).
unshade
Un-shade ("roll down") the current window (returns TRUE).
close
Close the current window (returns TRUE).
pin
Pin the current window to all workspaces (returns TRUE).
unpin
Unpin the current window from all workspaces (returns TRUE).
stick
Make the current window stick to all viewports (returns TRUE).
unstick
Unstick the window from viewports (returns TRUE).
set_workspace
Move the window to a specific workspace number, counting from 1 (returns boolean).
set_viewport
Move the window to a specific viewport number, counting from 1 (returns boolean).
skip_pager
Remove the current window from the window list (returns TRUE).
skip_tasklist
Remove the current window from the pager (returns TRUE).
above
Set the current window to be above all normal windows (returns TRUE).
below
Set the current window to be below all normal windows (returns TRUE).
decorate
Add the window manager decorations to the current window (returns boolean).
undecorate
Remove the window manager decorations from the current window (returns boolean).
wintype
Set the window type of the current window (returns boolean). Accepted values are: normal, dialog, menu, toolbar, splashscreen, utility, dock, desktop.
opacity
Change the opacity level (as integer in 0..100) of the current window (returns boolean).
spawn_async
Execute a command in the background (returns boolean). Command is given as a single string, or as a series of strings (similar to execl).
spawn_sync
Execute a command in the foreground (returns command output as string, or FALSE on error). Command is given as a single string, or as a series of strings (similar to execl).

Bugs

This manpage is almost useless, as it was thrown together on a train.

Author

This manual page was written by Ross Burton <ross@burtonini.com>.

Info