Skip to content

Instantly share code, notes, and snippets.

@narrowtux
Last active November 5, 2021 16:26
Show Gist options
  • Save narrowtux/d672ec4c73e5f98907c9 to your computer and use it in GitHub Desktop.
Save narrowtux/d672ec4c73e5f98907c9 to your computer and use it in GitHub Desktop.
OS X Shortcuts

OS X Shortcuts

This gist aims to be a fairly complete list of all known shortcuts all around OS X (and some OS X applications).

How to ergonomically press shortcuts

In this gist, there are sometimes multiple shortcuts for the same action. In that case, the shortcuts are ordered by how ergonomically you can press them, in descending order. That means that you should always learn the first shortcut in the list.

Using the normal Mac keyboard, you should refer to this table on how to press most shortcuts. It is assumed that you use your index finger for the letter that goes with the shortcut.

.
thumb for both
thumb for ⌘, pinky for ⇧ thumb for ⌥, pinky for ⇧
thumb for ⌘, pinky for ^ pinky for ^, ring finger for ⌥ pinky for ⇧, ring finger for ^
none thumb pinky pinky pinky

How to press special combinations

  • cmd + tab - thumb on cmd, ring finger on tab
  • ... (TBD)

Terminology and Keys

  • cmd - Command, ⌘
  • alt - Option, ⌥
  • shift - ⇧
  • esc - Escape, ⎋
  • enter - Return, ↩︎
  • crtl - Control, ⌃
  • tab - Tabulator, ⇥
  • caps - Caps Lock, ⇪
  • backspace - ←, ⌫
  • del - Delete, ⌦
  • ` - Backtick

Screenshots

By default, macOS will save screenshots to ~/Desktop.

  • cmd-shift-3 - save the full screen

  • cmd-shift-4 - allows you to select an area of which you want to take a screenshot

    While inside the dragging mode, you have access to the following features:

    • space - toggle between rectangle selection and full-window selection
    • alt - don't draw the dropshadow of the window when taking a screenshot in window-selection mode
    • While holding the left mouse button to drag the rectangle:
      • space - move the rectangle
      • alt - grow the rectangle from center
      • shift - restrict movement to one direction (horizontal or vertical)
    • esc - cancel taking a screenshot
  • ctrl- - Add ctrl to the other keys of either cmd-shift-3 or cmd-shift-4 to place the image in your clipboard instead of saving it to ~/Desktop

Window and App Management

  • cmd + w - close the current window or tab
  • cnd + shift + w - close the current window if window has tabs
  • cmd + alt + w - close all windows of the current app
  • cmd + ` - cycle between windows of app
  • ctrl + F4 - cycle between all windows
  • cmd + q - quit the current app
  • cmd + h - hide the current app and switch to the last recently used
  • cmd + [n] - switch to the n-th tab
  • cmd + 0 - switch to or open main window (iTunes, Mail, etc.)

App Switcher

Switch to the app you used before the current one with cmd + tab.

Invoke the App Switcher by pressing cmd + tab, and keep holding cmd.

While using the app switcher, you can use these shortcuts:

  • tab / right - cycle forward
  • ` / shift + tab / Left - cycle backward
  • Q - quit app
  • H - toggle hiding app
  • 1 / up / down - show app exposé
  • esc / . - cancel
  • Home - go to first app
  • End - go to last app
  • alt, then release both alt and cmd - click on dock icon

Mission Control

  • ctrl + up - show mission control
  • ctrl + down - show app exposé for currently focussed app
  • ctrl + left - cycle to desktop on the left
  • ctrl + right - cycle to desktop on the right
  • ctrl + [n-th] - go to n-th desktop
    • This is not enabled by default, enable in System Preferences -> Keyboard -> Shortcuts -> Mission Control -> Mission Control -> Switch to Desktop [n]

While in Mission Control

TBD

While in App Exposé

  • enter - select hovered window and exit expose
  • tab - cycle between apps
  • ` / shift + tab - cycle backwards between apps
  • esc - exit exposé without switching to another window
  • space - quicklook hovered window
  • cmd + first letter of window title - hover that window (works similarly in dropdown menus, just don't hit a global shortcut)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment