I have a load of virtual desktops running and I usually have one full screen application per desktop (so sort of like the Ratpoison WM but with an option to use it in other ways when needed). I want new windows to automatically be put in certain desktop numbers when they start up. What's the easiest way to do this?
4 Answers
If you're using Compiz, install compizconfig-settings-manager
, activate the "Place Windows" plugin, and in the "Fixed Window Placement" tab, you can adjust which windows should default to which viewport.
-
+1 for
fixed window placement
. Easiest solution for any compiz user. This tab is found in the configuration for thePlace Windows
plugin under theWindow management
category. Of course,Place Windows
needs to be enabled for this to work.– koushikOct 12, 2010 at 15:10 -
I'm confused about
viewports
andworkspaces
-- What I see in thefixed window placement
tab is X/Y viewport coordinates that don't seem to correlate to my four workspaces.– AmandaMay 20, 2011 at 13:26 -
You might want to take a look at the Devil's Pie tool; it is available in Ubuntu as package devilspie
(apt-get install devilspie
).
This article and this other one explain some of its prominent features, and provides some example code, including how to move a window to a certain workspace and maximize it.
I, too have a lot of virtual desktops and a workflow that has me opening windows on different workspaces, but I've adopted an 'open and slide' approach with compiz.. right after opening an application, I use a customized shortcut to slide the new window to the appropriate workspace, then slide back to the previous workspace with another shortcut.
In my case, this is something like shift-ctrl-left arrow then ctrl-alt-right arrow.. very, very quick and I have full control over where they go every time instead of being locked-in to one configuration.
If your requirement can make use of scripts, then it might be worth investigating wmctrl eg wmctrl -s 0
would switch to desktop 0.