Spectacle allows you to easily organize your windows without using a mouse.
Objective-C Ruby
Clone or download
Pull request Compare This branch is 232 commits behind eczarny:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



Build Status

Easily organize windows without using a mouse.

System requirements

Spectacle 0.8.6 is the last version to support Mac OS X 10.7; future releases will only support 10.9 or greater. Folks wishing to stay on 10.7 should download 0.8.6. Those looking for a version of Spectacle that supports 10.6 can still download 0.7.

Keyboard Shortcuts

Spectacle makes use of several keyboard shortcuts that trigger specific window actions. A window action is nothing more than a command that tells Spectacle how to change the size and/or position of a particular window.

A keyboard shortcut consists of one or more modifier keys paired with a character key. The common modifier keys Spectacle takes advantage of are:

Symbol Key
Command Key
Control Key
Option Key
Shift Key

The default keyboard shortcuts can be changed at any time. Use new key combinations to trigger window actions, or clear particular keyboard shortcuts to disable window actions entirely.

Basic window actions

To move a window to the center of the screen use the ⌥⌘C keyboard shortcut. Centered windows will not have their size altered. Maximize a window using the ⌥⌘F shortcut.

Windows can be moved to a number of predefined regions of the screen:

  • Move to the left half — ⌥⌘←
  • Move to the right half — ⌥⌘→
  • Move to the top half — ⌥⌘↑
  • Move to the bottom half — ⌥⌘↓

  • Move to the upper left — ⌃⌘←
  • Move to the lower left — ⌃⇧⌘←
  • Move to the upper right — ⌃⌘→
  • Move to the lower right — ⌃⇧⌘→

Spectacle can also move windows between horizontal and vertical thirds of the screen. The ⌃⌥→ keyboard shortcut will move a window to the next third of the screen, starting with the horizontal third region on the left of the screen. ⌃⌥← will move a window to the previous third of the screen.

Resizing a window is just as easy. To make a window a bit larger use the ⌃⌥⇧→ keyboard shortcut; ⌃⌥⇧← can be used to make a window smaller. Spectacle will always attempt to maintain contact between the edges of a window and the edges of the screen when resizing.

Multiple displays

The ⌃⌥⌘→ keyboard shortcut will move a window to the next available display. ⌃⌥⌘← can be used to move a window to the previous display.

Window action history

Spectacle remembers where every window was prior to executing a window action. To undo a window action use the ⌥⌘Z keyboard shortcut. Use the ⌥⇧⌘Z shortcut to redo the window action once again.


Apple's OS X Accessibility Protocol makes Spectacle possible. This protocol allows assistive applications to drive the user interface of another application running in OS X. In order to do its job Spectacle must be granted access to use these accessibility features. Instructions to do so will be displayed if Spectacle determines it does not have sufficient privileges.

Most applications built with the Cocoa frameworks can be readily manipulated via the OS X Accessibility Protocol; allowing Spectacle to interact with nearly every window it encounters. Unfortunately this is not always the case. Spectacle will be unable to manipulate the windows of applications that build their user interfaces in unexpected ways.

Building and running

Spectacle uses CocoaPods. Before building Spectacle in Xcode run:

$ pod install

Once CocoaPods pulls down Spectacle's dependencies open the Xcode workspace:

$ open Spectacle.xcworkspace

After Xcode finishes loading the workspace press ⌘R to run Spectacle.


Copyright (c) 2015 Eric Czarny.

Spectacle should be accompanied by a LICENSE file containing the license relevant to this distribution.