162

I just checked http://en.wikipedia.org/wiki/Table_of_keyboard_shortcuts but the following "Window management" entries are blank for Mac OS X:

  • Move the focused window
  • Resize the focused window
  • Maximize the focused window

Are there really no built in keyboard shortcuts for these in OS X? I do this stuff all the time with GNOME under Linux.

3
  • 1
    On 10.9.4, superuser.com/a/718843/60022 worked for me. Be sure to name it exactly "Zoom".
    – user60022
    Aug 4, 2014 at 19:37
  • 8
    Is there a reason nobody has made a straight-up replacements for the Windows window manipulation keys? Surely that's what most readers come here for? Apr 25, 2016 at 13:28
  • 3
    Command+Control+F for maximize/fullscreen
    – tejasvi88
    Jul 9, 2022 at 3:39

16 Answers 16

128

Spectacle hasn't been mentioned yet. "Move and resize your windows with ease." -- http://spectacleapp.com

It's open source: https://github.com/eczarny/spectacle

Update March 17, 2020

Spectacle author does not maintain the project anymore.

Macos provided an option to move windows left/right. See the answer from @afonsoduarte

11
  • 9
    Nice - supports behaviour similar to "windows key" + "arrow" on Win7. Just what I was after.
    – Frederik
    Feb 13, 2014 at 14:54
  • 2
    Yes thanks again... I am new to MacOsX and I just think this should be included in the OS natively... why the green button does not make the same effect.
    – рüффп
    Mar 15, 2015 at 15:13
  • 1
    @ruffp I suspect at this point it is because Apple would have to concede that Windows' behaviour was better all along. Similar situation to the one-button mouse.
    – Timmmm
    Jan 4, 2017 at 9:34
  • 11
    Spectacle being not maintained anymore, the open-source alternative is now Rectangle. Works well on MacOS 10.15!
    – dbernard
    Dec 11, 2019 at 14:20
  • 1
    @dbernard tried out rectangle. working great
    – Saif
    Nov 8, 2022 at 7:46
56

macOS Catalina (10.15) now has commands to:

  • tile windows left and right of screen (this enters fullscreen mode with 2 app side by side)
  • enter fullscreen mode
  • move windows to left and right side of screen
  • zoom (maximise window)

You can select them by hovering the green full-screen button in the upper-left corner of a window (press the Option key for more options).

macOS Catalina window tiling options

To create shortcuts for these commands you can do the following:

  1. go to System Preferences > Keyboard > Shortcuts
  2. select App Shortcuts
  3. press the + sign to create a new shortcut
  4. in Menu Title enter the title of the option as it appears when hover the green full-screen button, for example: Move Window to Left Side of Screen
  5. pick a keyboard shortcut, for example: ⌃⌘←
5
  • 2
    Ah! I hadn’t realized you could make shortcuts for these. (I only just now discovered that they are in the menu bar under Window, thanks to your comment.) Dec 3, 2020 at 23:16
  • 1
    Has anyone been able to get the shortcuts to work with Firefox browser windows? I'm using v90.0.2. Manually selecting the move and tile commands works. However, the commands do not work when using the assigned Shortcuts. Jul 26, 2021 at 18:53
  • Same problem with PhpStorm (and probably all JetBrains IDEs.
    – Bevan
    Aug 31, 2021 at 6:44
  • 1
    ^+Cmd+f is per default the Fullscreen, not the zoom.
    – Timo
    Mar 30, 2022 at 18:44
  • 1
    Unfortunately, the move to left/right side of the screen is inconsistent across apps. VS Code ignores it. Firefox weirdly moves the window back to where it was. Obsidian works intermittently, depending on what your key combo is and whether it conflicts.
    – Pauk
    Nov 8, 2023 at 9:05
16

Not built in, but you can install 3rd party software.

http://www.macupdate.com/info.php/id/26411/mercurymover

http://www.macupdate.com/info.php/id/30591/right-zoom

2
  • MercuryMover seems like what I was looking for. Thanks. Too bad it isn't built in. Nov 11, 2009 at 6:33
  • +1 to MercuryMover. I've tried Optimal Layout, Size Up and ShiftIt. MercuryMover is the best for me because it's the quickest way to move/resize windows. Plus, you can make your own shortcuts for resizing to a particular size.
    – Eddy
    Aug 18, 2012 at 12:13
14

I haven't tested in other versions, but in OS X 10.9 (Mavericks), you can use the Voice Over Utility to move and resize windows.

  1. Enable Voice Over in the Accessibility control panel.
  2. Click "Open Voice Over Uitlity"
  3. Click "Commanders" in the left panel.
  4. Select "keyboard"
  5. Select "enable keyboard commander"
  6. Add a new commander.
  7. Specify any keyboard key not already in use.
  8. Choose the command: Size and Position -> Start Moving Window
  9. Select with window to be moved
  10. Hold down the right option key, and press the key selected in 7.
  11. Move the window with the cursor keys.
3
  • Clunky, but very helpful to understand why a Java window was going missing: it dislikes being moved to my other monitor. Grr. Mar 3, 2015 at 13:30
  • Doesn't seem to work for XQuartz...
    – krs013
    Apr 21, 2016 at 2:11
  • Thanks! This worked perfectly in OS X 10.11.5 (El Capitan). I recently installed a new program and it started up with the title bar stuck past the top of my screen... would've been really annoying to have to install another program just to fix it :)
    – kayge
    Jul 14, 2016 at 22:11
12

The best answer is to create a keyboard shortcut in System Preferences > Keyboard > Shortcuts > App Shortcuts.

Then add Chrome or whichever and in the name exact as it appears enter: Zoom.

This is the critical part...

The shortcut has to include the Shift key. When you want to fully maximize the window using the keyboard and mouse you can do so by holding down the Shift key and clicking the Green Maximize/+ button in the browser toolbar.

I assigned my shortcut to be Command+Shift+Return and it works like a charm.

System Preferences > Keyboard > Shortcuts > App Shortcuts

enter image description here

6
  • 1
    easily the easiest and best answer for getting window to full size of screen
    – 1''
    Sep 27, 2018 at 2:09
  • 2
    I can't understand why this isn't enabled by default in OSX. Using it in Mojave (10.14). I grew tired of the whole double-clicking on the window top bar. Thanks. Oct 25, 2018 at 20:22
  • 1
    Repeat the same procedure for all apps??
    – Danijel
    Sep 5, 2019 at 8:04
  • 3
    @Danijel, just add it for "All Applications" Jul 9, 2020 at 13:21
  • Why would shift be needed for moving the window if you want a shortcut? In the high voted example, there is no shift used.
    – Timo
    Mar 30, 2022 at 18:40
9

Personally, I prefer Size Up - it has a huge array of options for auto resizing with a single keypress including quarter screen, maximise and moving windows between monitors and even Spaces.

http://www.irradiatedsoftware.com/sizeup/

8

Install rectangle, it's another open source alternative to spectacle (which is no longer maintained)

brew install --cask rectangle

Then press ^

The application looks like

enter image description here

1
  • This should be the ticked answer as of Nov 2023. The method of setting App Shortcuts to move windows to the left/right side of the screen within the OS is inconsistent across apps (Firefox likes to move itself back to where it was, VS Code ignores them altogether). Rectangle just works across all apps. It's like being back on Windows, where it's built in! (ducks for cover)
    – Pauk
    Nov 8, 2023 at 9:03
5

Following along with the idea of windowflow - check out it's parent project Optimal Layout. I tried sizeup for a while and was actually trying to find a replacement for it when I found Optimal Layout.

It is by far the best OSX keyboard based window manipulation app I've seen yet! Rocks...

http://most-advantageous.com/optimal-layout/

2
  • I agree, it ads one functionality which is highly desirable: switch to a particular window in an application. Where Command Tab allows you only to switch to a particular App, Optimal Layout's Alt Tab gives you a list of windows grouped by application
    – Micha Roon
    Feb 11, 2017 at 14:59
  • @DrGorb you can also use built-in CMD+` to switch between application window instances Oct 13, 2017 at 15:53
3

I've tried the other third party apps here and have found Moom to be the best:

http://manytricks.com/moom/

3

If you consider yourself a "hacker" you may consider Slate. Slate is like Bettertouch or Sizeup on steroids. Here is the github repo.

There is a learning curve but it is very powerful and customizable. There is a great write-up on how to set up and use it.

1
  • Thanks! The write-up led me to add an answer about spectacleapp.com as well, which I noticed in the comments. Apr 24, 2013 at 11:09
3

With VoiceOver enabled (Command-F5), you can use the move window keyboard shortcut.

  • Control-Option-Accent (`) move window with arrow keys (or using Shift-Arrow to move just a bit)
  • Shift-Control-Option-Accent (`) displays the Window Resize Options menu

Using the Window Resize Options menu, you can move the window to sections of the screen (e.g., centre screen, top left etc.).

2
  • Now if only I could find a way to disable actual voicing over...
    – alexeit
    May 18, 2016 at 4:04
  • 2
    alexeit To mute VoiceOver while it's enabled, open the VoiceOver Utility app located in your Utilities folder (Applications > Utilities), then from the utility categories menu select Speech, and tick the Mute Speech checkbox.
    – TimD
    Jun 4, 2016 at 11:47
1

See the following AppleScript for the popular (and free) Mac OS X keyboard/mouse shortcut program QuickSilver that will get you a keyboard shortcut for the green zoom button. When you install that and use it with Quicksilver, you'll be able to customize your keyboard shortcut.

tell application "System Events"
    if UI elements enabled then
        set FrontApplication to (get name of every process whose frontmost is true) as string
        tell process FrontApplication
            click button 2 of window 1
            --button 2 is the green "zoom" button for all applications
            --window 1 is always the frontmost window.
        end tell
    else
        tell application "System Preferences"
            activate
            set current pane to pane "com.apple.preference.universalaccess"
            display dialog "UI element scripting is not enabled. Check 'Enable access for assistive devices'"
        end tell
    end if
end tell

Source: http://snippets.dzone.com/posts/show/1026

1
  • Weird, that quicksilver link now redirects to some baseball program. Sep 15, 2011 at 3:41
1

I have a utility called BetterSnapTool running on my OSX 10.9.4 MacBook. This is a very nice tool that mimics the behavior on Windows 7 of snapping a window to the top, left, or right sides if you drag a window to one of these sides with your mouse. Within BetterSnapTool there is an "Extras" tab and on this panel is an option for "Move Windows". Here, I've chosen CTL and OPT and now when I depress these keys I can move any window under my mouse cursor. BetterSnapTool is rated 5 stars in the Mac App Store application and costs $1.99.

0
1

Go in/out of Fullscreen on Mac OSX defaults to

Command + Ctrl + F

(Ended up here searching for going to Fullscreen with no luck)

Some apps auto go to full screen when opening but don't show the maximize options bar e.g. IntelliJ 2020.2, which is annoying) No bar :(

Also, I didn't have the shortcut visible when hovering on other apps options bar No shortcuts :(

1
  • This is the solution I was looking for! Feb 1, 2021 at 14:22
0

SizeWell

Features and ease of use are combined in a way that I can't find in any alternative software.

I use it with Mountain Lion.

Downside

SIMBL (required by SizeWell) is not recently updated.

0

This is kinda far from ideal, but it is possible to manually drag a window using "Mouse Keys":

https://support.apple.com/guide/mac-help/control-the-pointer-using-mouse-keys-mh27469/mac

You can move the cursor to the windows title bar and hold down "5" just like a mouse left click button, and then while holding "5" can use the other numbers to drag it. It's clumsy, but it does work and only involves the keyboard.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .