Tuesday 2 November 2010

Running Series: Little Tweaks, Tips and Apps (Part 3)




I have had the luxury of working with multiple monitors for, well.... forever. The OS support for multiple monitors has come a long way over the last 15 years and even non-geeks can be found running dual-monitors these days. Regardless of whether your background is in graphics design, software development, day-trading, marketing there is a tick about a power user when they are setup with multiple monitors. Their secret is in their stash of shortcuts, tools and hacks. Keep in mind that although the focus for many of these tools is for multi-monitor setups, some of them apply even to single monitor users!


The tools fall into a few general categories
  • Hotkeys. These tools do tasks like move a window from one monitor to another or to minimize/maximize a window etc. To me, this is the most crucial aspect of any multimonitor tool.
  • Start bar, wallpaper & screensaver hacks. Generically these tools allow users to have different screensavers and/or wallpapers on each monitor. The start menu hacks usually allow either the start bar to replicated on the secondary monitors and/or to have only the applications that are currently on a given monitor show up on that monitor's start bar.
  • Secondary monitor management. These tools allow a user to enable and disable their secondary monitor with as few clicks as possible.
  • Virtual desktops. Much more common in the Linux environment, these tools allow users to organize their desktop clutter.
  • Icon Management & Position Hacks. When you move from different monitor configurations your desktop icons and window positions may get all frazzled. These tools let you manage them.
  • KVM. While not technically a multi-monitor thing, there are tools that allow the user to share a single keyboard/mouse to another computer

The Tools at a Glance
If you just want to jump in and have a look at the tools, here they are:
 I'll be going through the various tools from a per-task perspective (rather than per-tool) and I'll cover which tools will get the job done.



Hotkeys
Some of the most common tasks a user will do with application windows are: minimizing/maximizing and moving an application-window from one monitor to the other. There are other tasks like tiling/cascading that we do from time to time but they are much less common. This is probably one of the most subtle but important ticks that separate a power user from the average user (generally speaking, power users prefer keyboard shortcuts over mousing around as they are [relatively] instantaneous).

If you're looking for a list of built-in shortcuts, you can start here; I've glanced through it and it seems fairly comprehensive. For the application-window related shortcuts, look under 'Windows Logo key keyboard shortcuts'.

Of the above tools, Swap Screen, a tool in the Dual Monitor Tools suite is the absolute quickest way to get this functionality. The tool is open source and free so feel free to install it on work machines. There's no installer required so this is very clean way to do things and I strongly reccomend this as the primary solution if you're just looking for hotkey support. Another free solution is WinSplit Revolution.

If you have more complicated hotkey needs (i.e., locking cursors, toggling displays etc), DisplayFusion and UltraMon both provide more extensive hotkey support (and other functionality too!). I use UltraMon myself as I occasionally have need for the more extensive functionality. UltraMon has an available 30-day-trial and DisplayFusion has a limited, free (non-commercial) version available so definitely give them a spin if your hotkey needs exceed what Swap Screen can handle.

Taking this a step further.... (aka the Mantra of a Power User)
To really build some integration into the way you use your computer/monitors, you can take the next step and integrate it into your mouse/keyboard-macro -- this way you can press one button/key and the window will minimize/maximize.


Start Bar, WallPaper & Screensaver Hacks
If you want to have a task-bar per monitor you'll need to decide if you want/need to see all the applications on the second/third task-bars or if you are ok if that task bar only shows the applications that are currently being displayed with that monitor (personally, I dont mess with this, I keep one task-bar). If you are content with just the applications that appear on a monitor being on that monitor's task bar, MultiMonitor can get the job done for free (I should note that I am uncertain as to whether or not the Pro version allows you to mirror all the task-bar or not).

If you need/want your task-bar to be mirrored (i.e., all the applications currently running show up on all the monitors), then you'll need to use DisplayFusion (Pro -- the free version doesnt support this) or UltraMon.

If you're looking to have multiple wallpapers on your monitors (whether it's a different image per monitor or a single large image), look no further than the Dual Wallpaper utility from the Dual Monitor Tools suite. Again this is a free, open source solution without any installation need. Again, DisplayFusion and UltraMon can provide this functionality as well.

Similarly, if you want to have either different screensavers or a spanned/duplicated screensaver, you'll have to grab DisplayFusion (Pro as the Free version doesn't provide this functionality) or UltraMon.



Secondary Monitor Management
Some games dont play well with multiple monitors -- for some reason or another, the mouse cursor just doesnt play nice with your second monitor! You can use mouse-related tools like MouseJail to try and lock the mouse to the primary monitor (where your game is) but sometimes this tool doesnt work so well (usually when you are working with different resolutions on the monitors).

Sometimes you just want to disable that pesky secondary monitor. The DisMon utility from the Dual Monitor Tools suite is again, your free, open source solution. It lets you disable the secondary monitors via a GUI or it can do so automatically when a specific application is run. Alternatively, UltraMon can also provide this functionality (although, not as elegantly).



Icon and Positioning Tools
Let's suppose you have a laptop: at work you connect to one resolution and at home you connect to another -- and your icons are all over the place! On my laptop, I use the free FSL Icon Restorer to handle saving and restoring icon positions. You can keep multiple icon profiles and a quick description to them to help you sort them out. A fantastic little gem.

Tools like SwapScreen, WinSplit Revolution, DisplayFusion and UltraMon can provide limited/awkward support for positioning windows - limited to moving application windows between windows. But what happens if you get a window that opens in the middle of both monitors? What happens if, for some reason or another, that second monitor was physically turned off when this happened? Or you moved the logical placement of the secondary monitor to the opposite side of the primary monitor -- and an application fired up in it's previous location - which is now offscreen?!

Well, you can use the age-old [ALT],[SPACE],[M],[ARROW KEY],[MOUSE MOVEMENT] to rapidly move the window. This is where SheepDog comes in. It's free, it's open source and it gets your window back to the primary monitor pronto.


Virtual Desktops
Users coming from Unix/Linux are familiar with virtual desktops/workspaces -- and they get used to it! For everyone else, a virtual desktop is just a way of decluttering your task tray. So if you have 15 browser windows open because you are researching something, you can whisk them all out of the way (without closing them) so you can focus.

There are a few tools available to get this job done but VirtuaWin is my go-to: it's free, it's open-source and it's easy to use. The nice thing about keeping your "clutter" on a different workspace is that this also cleans up your [ALT]+[TAB] options -- just dont forget those windows when restarting/shutting-down! Contrary to the name, the desktop is the same (i.e., so if you change the position of an icon on virtual-desktop2, it will be reflected on virtual-desktop1 etc).



KVM
I saved the best for last - and it's the best by a large margin. Power users often have their own little network (really, it's just a matter of time :P). In the effort to declutter our already cluttered workdesks, we'll often stow away the keyboard/mouse for the secondary machine until we really need to use it. So what happens if you just need to use that secondary machine real quick? It's a pain to unpack the keyboard/mouse etc.

Or how about, if you're a software developer and you use your two monitors as many do.... and suppose you need to have a remote desktop (or two) open ... you rapidly run out of desktop space on your active machine! Heaven forbid if you have power/hardware issues on your primary machine! By doing all this extra crap on the secondary machine, you keep the primary machine decluttered (both from an applications-windows perspective and a CPU cycle perspective).

If you think about it, the scenarios where this can come in are really extraordinary - suppose there are two of you working on a project, you on one computer, your partner on the other. Now suppose he or she doesnt know how to do something -- you could swap seats, you could explain it to them -- or you could hijack their keyboard/mouse and they can watch you do it. Yes I've done that. It also has very funny implications during LAN gaming when you can suddenly mess with the other player's view :P

The tool to get all this magic going is free and open sourced. It's Synergy+ (formally called Synergy). This here is a really slow video that outlines pretty much all you need to get rolling.  The big selling points are that you [can] share one [text] clipboard between multiple computers (which can be running different operating systems) and the transition between the various computers is absolutely, magically, seamless.


ISSUES TO KNOW BEFORE JUMPING IN
UltraMon crashing on Startup
I believe it's been fixed as of now but older versions of UltraMon would crash on first startup in Windows Vista and Windows 7. This was due to the change in the file format for the visual styles. Silly enough, the utility would load a pair of "power tools" the first time it starts up -- and these tools would choke on the visual style and crash. If you're here because you're looking to get UltraMon working on Windows Vista or Windows7, all you have to do is:
  1. Navigate to [HKEY_CURRENT_USER\Software\Realtime Soft\UltraMon\<versionNumber>\Window Buttons]
  2. Set the following keys to '0' (zero)
    "
    Move Window Button"
    "Maximize to Desktop Button"
Configuring Synergy
At the time of writing, this is not the most intuitive process, I'll make a guide & review to do this shortly and link it here.

No comments:

Post a Comment