
Excerpts from 1126's message of Tue Dec 20 04:05:00 -0700 2011:
I added the ability to shift clients automatically to a workspace. So, when I start Firefox it is opened on my www-workspace automatically.
I want the same for Irssi and Alpine and my Emacs. I want them opened on the communiaction-workspace, or the coding-workspace ;)
But all of them are running withing URxvt, so the class is always URxvt.
In i3 you are able to shift a client-instance to a workspace, like so:
assign [class="URxvt" instance="irssi"] -> 2|com
Is something similar possible in xmonad? And if so, how?
This will be similar to your Firefox manageHook. In xmonad-speak `instance' is called `resource' or `appName'. They're identical; one's an alias for the other. To combine them use <&&> and <||> (see XMonad.ManageHook.) Also, there are several examples in the mailing list archives of how to put together fancier regexp-like matches if you end up needing them. So your example would look like: className =? "URxvt" <&&> appName =? "irssi" --> doShift "2|com" There's a section about finding window properties midway through http://xmonad.org/faq (the xprop wrapper window-properties.sh script mentioned there makes life easier. It yields copy pasteable property matchers (Query Bool's). Welcome to the list. (Don't worry. Most of the time everyone here and in #xmonad on chat.freenode.org is friendly and helpful.) -- wmw