Hack 40 Extending Your Screen Real Estate with Virtual Desktops


Stretch your screen real estate up to 100 times its size and organize different views of your workspace with virtual desktop software.

Ever wish that you had a larger monitor? While not everyone can afford the 23-inch Apple Cinema HD Display (http://www.apple.com/displays/acd23/), you can actually achieve the same effect (wow! factor not included) for as little as $0 to get . . . well . . . near to unlimited screen real estate!

40.1 CodeTek VirtualDesktop

The CodeTek VirtualDesktop (http://www.codetek.com/php/virtual.php) ($40; trial available) is an application that enhances your screen real estate through software emulation. It does so by creating virtual desktops, each containing whatever you put into it and organized how you left it last. Keep your writing (Word, BBEdit, Sherlock Thesaurus, and a browser window) on one screen, your mail on another, and coding (Application Builder, Interface Builder, Script Editor, Terminal windows) in still another. Switching between them is just a matter of a mouse click.

While the trial version allows for only two virtual screens, it's more than enough to get the idea. Pay for VirtualDesktop and you can have up to 100 virtual screens!

Installing CodeTek VirtualDesktop is straightforward. Simply double-click on the application icon and you are ready to go. The first thing you'll notice is a miniwindow known as the pager. The pager displays the virtual desktops available to you, organized on a grid, as shown in Figure 4-21. You'll notice that the desktop on the left holds a browser window while the one on the right is still empty.

Figure 4-21. The VirtualDesktop pager

You can change the skin (appearance) of the pager by creating one yourself or downloading one from CodeTek's site (http://www.codetek.com/php/virtual_skins.php).

There are so many ways to switch desktops, one or more of them will likely appeal. Click on a window in the pager and you're transported there instantly. Mouse between one desktop and the other by moving off the edge of the screen in the direction (according to the grid layout) of the destination desktop. Hot-key left, right, up, or down between screens. Or use the handy menu-bar icon to switch between open application windows or hop to another desktop, as shown in Figure 4-22.

Figure 4-22. Switching via the menu bar

Not only can you move yourself from one desktop to the next, you can also drag applications between desktops. Either grab the window you want and mouse over to the appropriate desktop. Or drag and drop the icon representing the application in the pager, as shown in Figure 4-23.

Figure 4-23. Moving a window from one virtual desktop to another

CodeTek VirtualDesktop is ultraconfigurable. Pin particular applications down so that they appear on every desktop; I do this with iChat and iPulse [Hack #42]. Alter the pager's appearance, set hot keys, and configure the layout of your virtual desktop grid (see Figure 4-24).

Figure 4-24. Tweaking preferences

VirtualDesktop is a must-have for the multitasking geek in you.

40.2 Project Space.app

If you are not up for paying $40 for CodeTek VirtualDesktop, or if you are willing to settle for something simpler without all the bells and whistles, then Space.app (http://sourceforge.net/projects/space/) is a decent alternative. It is free for personal and commercial use and distributed under the open source GPL license.

Space.app offers a user interface similar to that of the CodeTek, offering up to 16 workspaces (nameable) and a floating pager (see Figure 4-25).

Figure 4-25. The Space.app pager showing nine workspaces

Rather than creating actual virtual screens, Space.app operates by remembering which application is shown or hidden in each view (a.k.a. screen). While it's a decent stand-in for VirtualDesktop and the price can't be beat, the difference in feel and functionality is substantial. You cannot, for instance, have two windows from the same application open in two different spaces; it's the entire app or nothing at all. The refresh when switching from screen to screen is also a little jerky, as applications are hidden and shown before your very eyes.

?Wei-Meng Lee