In an effort to reduce my mouse usage as much as possible and mitigate RSI over time, I’ve been using a set of keyboard shortcuts to handle window management. This may be useful for anyone who spends a great deal of time working on a Mac between multiple applications who would like to reduce the need to touch the mouse repeatedly through the day.
Here’s an example of this in action:
Requirements:
- I work on a Mac, so this example pertains only to Mac OS X.
- There are a variety of window management apps you can choose from, but I find SizeUp to be the simplest one that has all the features I need. You can try it for free, but you should buy it if you like it. As of this writing it’s $13, well worth the cost.
Overview:
The goal here is to reduce need of the mouse/trackpad to do the following:
- Move between or select Spaces
- Click Windows to select them
- Resize Windows
- Move windows around on a screen
- Move windows between Spaces
To do this we’ll use a combination of the SizeUp app and the Keyboard system preferences to modify the default system keyboard shortcuts.
In general I use modifier keys such as CTRL, CMD, Option and Shift in combination with the Arrow keys for all movement, but the specific shortcuts are up to you.
A note about spaces: Spaces allow you to segment your work to better focus on a task or a set of related tasks at one time by keeping unrelated windows out of view.
System Keyboard Preferences:
Using Spotlight or the Apple menu (top left corner of your screen), open the System Preferences. Next, click on Keyboard to open the Keyboard Preferences. Finally, click Shortcuts at the top:
Move between Spaces
Click Mission Control on the left and look for the “Move left a space” and “Move right a space” shortcuts:
Be sure each is checked, then double click on the shortcut listed on the right side to edit it. I use the Option and Left/Right Arrow keys for this movement.
Change window focus
We need to be able to select the active (open) window to resize, move, or to work in without touching the mouse. From the Keyboard Preferences screen:
Click Keyboard on the left and look for the “Move focus to active or next window” shortcut:
Be sure it’s checked, then double click on the shortcut on the right to edit it. I use the Option and Tab key to toggle between on-screen windows to focus the one I want to move, resize, or use.
SizeUp Preferences:
We’ll need an app to resize windows with the keyboard and to move selected windows between spaces. I use SizeUp for this. Here is what my SizeUp shortcuts look like currently:
Resize Windows
For my purposes, I use the same three-key combo and the arrow keys to do all of my resizing. I use my primary window on the left, typically a browser, and smaller/secondary windows on the right:
- Send Window to the left half of the screen: CTRL-Shift-CMD – Left Arrow
- Send Window to the right half of the screen: CTRL-Shift-CMD – Right Arrow
- Send Window to the Top-Right Quarter of the screen: CTRL-Shift-CMD – Up Arrow
- Send Window to the Bottom-Right Quarter of the screen: CTRL-Shift-CMD – Down Arrow
- Make Window full screen: CTRL-Shift-CMD – Return
Move Windows between Spaces
The last piece of the puzzle is moving a selected window to a new location:
- Send Window to the next space: CTRL-CMD – Right Arrow
- Send Window to the previous space: CTRL-CMD – Left Arrow