The Lumber Room

"Consign them to dust and damp by way of preserving them"

Devil’s Pie

leave a comment »

is one of the things that can make GNOME usable. It is the perfect example of what I always meant when I said “GNOME is for advanced users” — to get anything except some set of “basic” things done in GNOME, you need real technical skill, while in KDE you only need patience to look through preference dialogs. And gconf-editor is quite reminiscent of regedit ;-)

Anyway, Devil’s Pie is amazing!

The main page here, a short documentation here, and extensive documentation here. These specs might help.

Two files that I have in my ~/.devilspie contain
(if
(and (is (window_class) "Pidgin") (is (window_role) "conversation"))
(maximize)
)
to make my Pidgin conversation windows maximized, and
(if
(and (is (window_class) "Gnome-terminal") (contains (window_role) "gnome-terminal"))
(maximize)
)
to have my terminal windows maximised.

To make Devilspie run at startup — go to System → Preferences → Sessions and Add it in the “Startup Programs” tab.

One hackish purpose I use Devilspie for is to get around GNOME’s lack of an equivalent of KDE’s “Activate window demanding attention” keybinding. (Ctrl-Alt-A by default)

Because I mainly need this for my Pidgin conversation windows, I have a file pidgin-conversation-focus.ds in ~/.devilspie/special (not in ~/.devilspie) which contains
(if
(and
(is (window_class) "Pidgin")
(is (window_role) "conversation")
(contains (window_name) "(*)")
)
(focus))
and also have a pcf.sh which contains
#!/bin/bash
devilspie ~/.devilspie/special/pidgin-conversation-focus.ds & sleep 1
kill -SIGSTOP $!
in it and is bound to Ctrl-Alt-a (using the painful way GNOME has for assigning keys…)

It sometimes doesn’t work (rather, Pidgin’s message notification plugin doesn’t always insert “(*)” in the title), but I’m getting by.

If there was a way, from within Devilspie, of checking whether a particular window is demanding attention or not, it would be great. I sent a (badly worded) email to the author and haven’t got a reply…

BTW: While testing the above I used
purple-remote "jabber:goim?screenname=myusername@gmail.com&message=hi"
a lot.

Written by S

Sat, 2007-07-07 at 09:13:15

Posted in compknow

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s