If you've ever used Winsplit or Grid in Compiz, you will know why you want to do this.
If you haven't, Grid (a clone of Winsplit in Windows) allows you to use <Ctrl><Alt> and a keypad number to move the active window to the left, right, upper right, lower right, lower left, upper left etc. I use 4 monitors in a portrait configuration using twinview and xinerama (I think?). Using this enables me to quickly snap a window to a whole monitor, or half of a monitor, within a given two monitors. With that amount of screen real estate, this is all the granularity I want or need. (Note that x11 using 4 monitors is not perfect - you have a gnome panel on each set of two, and you can spawn applications into one of those two sets, which you can then orient as you wish. Some things you can only have on one set, e.g. openoffice. So far I have just restricted myself to using openoffice on the one set of monitors.)
Unfortunately, Compiz is necessary to get Grid. While the eye candy is nice, I have found Compiz to be finicky to set up and less than reliable. It would be really nice to have Grid without Compiz. So I found a python script called quicktile.py by Stephan Sokolow. I modified it slightly, now it is working perfectly as I want it, and now I have gnome without the compiz overhead. Great!
Here is how to do it:
If you haven't, Grid (a clone of Winsplit in Windows) allows you to use <Ctrl><Alt> and a keypad number to move the active window to the left, right, upper right, lower right, lower left, upper left etc. I use 4 monitors in a portrait configuration using twinview and xinerama (I think?). Using this enables me to quickly snap a window to a whole monitor, or half of a monitor, within a given two monitors. With that amount of screen real estate, this is all the granularity I want or need. (Note that x11 using 4 monitors is not perfect - you have a gnome panel on each set of two, and you can spawn applications into one of those two sets, which you can then orient as you wish. Some things you can only have on one set, e.g. openoffice. So far I have just restricted myself to using openoffice on the one set of monitors.)
Unfortunately, Compiz is necessary to get Grid. While the eye candy is nice, I have found Compiz to be finicky to set up and less than reliable. It would be really nice to have Grid without Compiz. So I found a python script called quicktile.py by Stephan Sokolow. I modified it slightly, now it is working perfectly as I want it, and now I have gnome without the compiz overhead. Great!
Here is how to do it:
- Download quicktile.py (I used ver .1.4). Extract using a gnome right click on the file, and "Extract here".
- You will need to install two ports: lang/python and x11-toolkits/py-xlib.
- Test it out by typing:
# python /path/to/quicktile.py -d
Now do some <Ctrl><Alt>4 or <Ctrl><Alt>6. - You might find that you really have no use for most of the states it cycles through. I certainly didn't. Here is how to stop that behavior (warning: ugly hack follows):
- Open up the quicktile.py with your favorite editor. Note that you can soon find some code that looks like this:
Code:POSITIONS = { 'left' : ( (0, 0, 0.5, 1), (0, 0, 1.0/3, 1), (0, 0, 1.0/3 * 2, 1) ),
Code:POSITIONS = { 'left' : ( (0, 0, 0.5, 1), (0, 0, 0.5, 1), (0, 0, 0.5, 1) ),
- Go to Prefences->Startup Applications->Add.
- In the command window, make sure that it reads:
Code:python /path/to/quicktile.py -d
- Name and comment as you wish, e.g. Quicktile
- Because for some reason the startup stuff only applies to one set of monitors (Screen?), you will need to add a shortcut to the panel there so that you can execute it on startup, and have quicktiling goodness everywhere. Right click on the gnome panel -> "Add to Panel"->Custom Application Launcher.
- In the command window, make sure that it reads:
Code:python /path/to/quicktile.py -d
- Name and comment as you wish, e.g. Quicktile, and Ok.