
Mac keyboard shortcuts - ingve
http://mattgemmell.com/mac-keyboard-shortcuts/
======
yan
I live by keyboard shortcuts, and one that I use many times a day that I find
lists of OS X shortcuts always miss is how to restore a window if it's
minimized, or open a new empty document if no windows are active.

Normally, when you cycle open apps with Command+Tab, if you land on an
application that has minimized windows, nothing happens. The way to remedy
that is as follows: Hold Command and tab to the app you want to un-minimize.
Without letting go of Command, press down Option, then while holding down
Option, let go of Command.

It's a little awkward to use at first, then you'll do it automatically. I hold
Command with my thumb, then tab with ring finger, then just move ring finger
back down to Option, and let go of thumb.

Edit: Bonus tip: When landing on an application icon with Tab, continue
holding Command and use Tilde (~) to cycle through windows of the same App. I
use that one a lot too.

~~~
morganherlocker
This was one of the things that made OSX horrible for me when switching from
Windows and Linux. I have since learned the tricks to get around many of OSX's
windowing quirks, but I do wonder how things like this have not been fixed.

I love my OSX setup now, but if I was a "non-power-user", I think it would be
completely unusable. Watching a typical Windows user try to maximize a window
in OSX is pure pain.

Hit the + button: window gets a bit bigger, but not full screen.

Drag the window to the top: nothing happens.

Try to get to the edge of the window, and drag it out: RSI inducing
frustration.

Windows seems to dominate as far as basic user usability goes on the windowing
front. I would still find it completely unusable without the help of a
windowing app like spectacle[1] or slate[2].

[1] [http://spectacleapp.com/](http://spectacleapp.com/)

[2] [https://github.com/jigish/slate](https://github.com/jigish/slate)

~~~
ghshephard
10 years later, and what I would consider a "power user", and I still spend
time every day trying to maximize windows on OS X. It's usually a game of
hitting the "+" button to see what will happen, and usually being disappointed
by the results.

Does anybody know how to maximize a window with OS X?

~~~
ihuman
I use Spectacle. Full screen is Command-Alt-F. you can also make the window
take up a half, third, or quarter of a screen with 1 shortcut. It takes some
getting used to, but I find it hard to go without it.

[http://spectacleapp.com/](http://spectacleapp.com/)

~~~
Smirnoff
Do mention that this is a FREE app, which just works! The most of the other
suggested apps here are paid.

------
userbinator
I find the philosophy behind keyboard shortcuts in Mac OS vs Windows
interesting; the former appears to be designed with a much heavier emphasis on
mouse use, with keyboard shortcuts added later, while the latter feels
somewhat more balanced and the shortcuts easier to discover. E.g. menubars can
be navigated in Windows via Alt, the arrow keys, and Enter, with the
underlined items also accessible by pressing the corresponding key; in Mac OS
the corresponding shortcut is Ctrl+F2, is only available after enabling it
with Ctrl+F1. and there's no underlined letters to guide you. Things like
moving/resizing windows can be accomplished pretty easily with the keyboard in
Windows (Alt- -M/Alt- -S), there's no equivalent by default on a Mac.

~~~
septerr
I feel the same way. When I moved from Windows to Mac, I nearly burst into
tears due to lack of simple keyboard shortcuts. And it was surprising to me
given how geeks prefer Mac over Windows. I expected Mac to be more keyboard
friendly and was disappointed.

~~~
archagon
OSX doesn't have a lot of shortcuts for working with the GUI like Windows
does. On the other hand, OSX has some fantastic and consistent shortcuts for
actually working with data. (For example, Cmd-G, Cmd-Shift-G, Cmd-E, and Cmd-J
for text search.) OSX is also incredibly powerful in that it allows you to
assign shortcuts to Services, which in turn can be created using simple
Automator workflows. This opens up so many possibilities system-wide. Finally,
and most importantly, OSX adheres to the same sort of natural language
philosophy that we're so used to with Google: if I want to find a specific
menu action, why would I navigate the menu graphically when I can just type in
the name? Cmd-Space and Cmd-? are the shortcuts I miss most of all whenever I
switch back to Windows.

~~~
kristiandupont
Thank you for pointing out cmd+?, I had no idea it would search through menu
items. That will relieve the frustrations that I have with OSX menus a little.

Could you provide an example of what you use services and Automator for? I've
seen the services menu and I think I read somewhere that it works with the
clipboard, but I have no idea what I can use it for.

~~~
archagon
I think the one I use most of all is "New Terminal At Folder", since it means
I don't have to type in my current Finder directory in cd.

Here's another example. I recently wrote an Automator Service to copy selected
file/folder paths to my clipboard. Super useful for programming and it only
took me half an hour without knowing any AppleScript.
[http://cl.ly/1a3s3g1u2Q2w](http://cl.ly/1a3s3g1u2Q2w)

By the way, the contents of the Services menu changes depending on the type of
data you've selected. If you want to see a full list, go to System Preferences
— Keyboard — Shortcuts — Services. Lots of stuff to choose from!

~~~
omikun
Just wanted to throw out a mouse alternative: you can drag any folder into the
terminal and get the path and then you go back to the head of line and cd into
it

------
raamdev
I work in web browsers a lot and the greatest thing I've ever done for
productivity is use the Vimium extension in Chrome, which allows me to easily
navigate the web using my keyboard.

Pressing "f" instantly tags each link on the page with one or two letters that
I can type on the keyboard to go to that link (if I type them as capital
letters, the link gets open in a new background tab, otherwise just a new
tab).

Even if you're not a fan of the vim editor, if you enjoy keeping your hands on
the keyboard it's worth learning the few keyboard shortcuts that Vimium
provides for navigating the web.

[https://chrome.google.com/webstore/detail/vimium/dbepggeogba...](https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb)

~~~
mercer
You might also be interested in Gleebox. I use it a lot.

------
nimeshneema
Well how many of you felt frustrated when not being able to use Cmd+x / Cmd+v
for moving files/directories in finder and have to take a recourse to mouse,
open the source and destination finder windows and drag files manually?

I recently discovered this gem that accomplishes the feat using keyboard
shortcut. Use Cmd+c to place the file(s)/directorie(s) on clipboard. Now move
to destination directory and use "Cmd+v" to do copy-paste and use
"Cmd+Option+v" to move the selected files and folders.

~~~
archagon
Yep! I was gobsmacked when I found out. Unfortunately, it's a little bit
inconsistent at times, especially when moving files between different media.

~~~
nimeshneema
Can you please describe the exact steps where the behaviour was inconsistent.
We can always file a radar.

------
sikhnerd
Highly relevant if you're interested in learning these, or are bad about
remember all the random keys in disparate apps is CheatSheet:
[http://www.cheatsheetapp.com/CheatSheet/](http://www.cheatsheetapp.com/CheatSheet/)

Pop up that shows available keyboard shorcuts (activated by a keyboard
shortcut of course :)

~~~
kemayo
I tried that out a month or two ago, and liked it but quickly removed it. At
the time it was popping up its sheet when you invoked the command-tab
switcher, which was really annoying.

They seem to have fixed it since then.

------
alxndr
There are some other symbols which are (somewhat) common in OS X's shortcut
listings but which aren't listed on this page, like Escape, Home, End,
Delete... Found them listed here:
[http://www.danrodney.com/mac/index.html](http://www.danrodney.com/mac/index.html)

~~~
roryokane
That page is missing some symbols, too, and the symbols there are images, not
Unicode characters. Here is a full list of Mac key symbols I compiled:

⌘ command; cmd

⇧ shift

⇪ caps lock

⌥ option; alt

⌃ control; ctrl

↩ return

⌅ enter

⌫ delete

⌦ forward-delete

⇥ tab

␣ space

⏏ eject

↑ up arrow

→ right arrow

↓ down arrow

← left arrow

⇞ page up

⇟ page down

↖︎ home

↘︎ end

⎋ escape

~~~
roryokane
A character I missed:

⌧ clear

Also, 9 of the 22 symbols above are conveniently available in the Technical
Symbols category in Character Viewer. You have to enable the Technical Symbols
category first by choosing “Customize List…” from the gear menu at the top
left. Character Viewer supported categories starting in OS X 10.7.

~~~
alxndr
Wow, don't think I've ever noticed that button...

------
danso
If there was one basic skill that is critical for all novices in moving from
novice to intermediate, it'd be keyboard shortcuts...a mechanical skill that's
seemingly banal yet important to day-to-day development as typing is to modern
writing...and it's even more easily overlooked because most aspiring
programmers know how to type at a decent rate, and expect that that's all
that's needed to become a decently productive programmer.

Doing power-scripting may not require a ton of keyboard-skill...but for
novices trying to leapfrog into web-app development (let's not debate whether
that's even wise)...it's excruciating to tell them "OK, now look in config.rb
and see if that matches what you see in the main_controller.rb. Then switch to
Chrome, refresh, and see the output"...and watch them take 5-10 seconds to
poke through each open tab in Sublime Text (or just as bad, explore each
branch of the project tree)...by which time, they've forgotten what they were
supposed to be looking for in the first place.

In other words, if aspiring developers want to take the quick shortcut, past
basic computer science and operating system theory, right into web app
development, then _they must_ make up for it in other areas of efficiency.
Learning keyboard shortcuts isn't the _only_ vital skill, but it's the easiest
to master...and the easiest to pooh-pooh.

~~~
jimmcslim
Not only that, but apparently mouse movements contribute more toward RSI and
carpal tunnel than using a keyboard so it has health benefits too (according
to an ergonomics coach I spoke to years ago, this may be disputed by research,
for all I know, but it seems reasonable to me)

------
tuananh
OS X is emacs-friendly, for example C-A, C-E works as home and end
respectively.

~~~
Gracana
I wondered if anyone would mention this. I love those features, and without
having a separate meta-key for GUI commands, Apple wouldn't have been able to
do it. It's something I really appreciate when running Terminal.app as well;
cmd does stuff with the GUI, and ctrl does what you'd expect in the terminal.
There are no additional modifiers or quirks to deal with like there tend to be
in Windows and Linux.

~~~
Stwerp
This is actually one of the biggest reasons I am still in Mac OS. Are there
any *nix builds or distributions that have this separation out of the box?
I.e.: C-b, C-a, etc (emacs commands) including C-v for scroll (and not system
paste) and S-c for copy, S-v for paste (where S is super key or win logo or
something similar).

------
DontGiveTwoFlux
Better Touch Tool
([http://www.bettertouchtool.net](http://www.bettertouchtool.net)) is another
great free app that can really up your productivity. The biggest features for
me are additional multitouch gestures that you can program any way you like.
My favorites are three finger swipes up, left, and right to reposition windows
a la Windows-Key Up Left Right.

While it isn't strictly a keyboard app, it also gives you a lot of flexibility
and does support the keyboard. My latest addition is a script that pulls up
the Lastpass extension from a global hot key and puts the mouse over "Copy
Password." It is very useful for getting passwords into the command line.

~~~
ansimionescu
You might want to switch to a real window manager. I use Spectacle, but I
think ShiftIt is much more popular.

[http://spectacleapp.com/](http://spectacleapp.com/)

[https://github.com/fikovnik/ShiftIt](https://github.com/fikovnik/ShiftIt)

------
simscitizen
One that doesn't seem to be mentioned: if you want to navigate to an absolute
path using the keyboard from within a Finder window or a Save dialog, use ⌘⇧G
to open a little "Go to..." panel that lets you type in a path. It has path
completion and has tilde expansion.

~~~
oneeyedpigeon
Correction: it has _really badly implemented_ path completion, at least in
10.6.8 (yeah, I know ...) For instance, "/hom⇥" gives "/home/" but "/home⇥"
takes the focus to the cancel button. I suppose it's a tricky one to get
right, given that ⇥ is being overloaded here, but it's a pretty horrible
experience as it is.

------
jimmcslim
Unfortunately ^F2 doesn't seem to consistently work in my experience, so I
have unmapped it and use a Keyboard Maestro macro triggered by same keystroke
globally...

1\. Save mouse position 2\. Mouse mouse to 0,0 3\. Click left button. 4\.
Restore mouse position.

It's a hack but it works.

I also wish there was a consistent keystroke for focusing to the top-level
element of a page in Safari: when browsing using Chrome I frequently use the
excellent Vimium extension (Vim shortcuts in Chrome; plus great highlighting
of links to pretty much navigate quickly with keyboard only). In Safari I use
the similar, but not quite as good Vimari. However I find that after
navigating to a page from the URL bar, the shortcut to trigger Vimari doesn't
ALWAYS work until I click on the document somewhere...

~~~
roryokane
⌃F2 only works after you have hit ⌃F1 once to “Turn keyboard access on or
off”. If you hit ⌃F1 again, it will stop working. It’s probably not working
for you because you hit ⌃F1 sometimes. You might be hitting it accidentally or
because you use it to do something else – I use ⌃F1 to start recording a Quick
Macro in Keyboard Maestro.

~~~
jimmcslim
Hmmm, maybe, I'll disable my macro and give the original shortcut another go.
Perhaps I can disable the shortcut for Turn keyboard access on or off!

------
smallegan
Screenshot shortcuts are my favorite:

Cmd+Shift+3 = Capture the entire screen

Cmd+Shift+4 = Capture a selection with the mouse

Cmd+Shift+4 -> Space Bar -> Move cursor and click on window = Capture the
selected window

By default it will save these to an image on the desktop. By holding down the
Control key it will copy it to the clipboard.

~~~
btown
Dropbox can actually hook into these and save screenshots into your Dropbox
folder, copying a sharable link instead of the image content itself. It's
brilliant when you want to quickly share a screengrab with a collaborator.

~~~
smallegan
Wow that sounds great, is this the product you are referring to:
[http://grabbox.devsoft.no/](http://grabbox.devsoft.no/)?

~~~
btown
At least on OS X, it's been built in to the Dropbox client for at least a few
months now, no need for a third party product. Activate it in the Imports tab
of Dropbox's Preferences.

------
Shivetya
I love my Mac, I really do, but damn why is Mail such a POS? Really do I need
a three key combo to mark a message read? Why can't I have my smart mailbox
mark its messages read? Let alone Mail went through all those trials and
tribulations where it really didn't want to think you read your mail.

Still there are still other quirks that can be irritating, as others have
mentioned window controls and my favorite, accidentally finding a three key
combo that puts things off the main window or worse changes the zoom and you
have to figure it out the hard way (yeah, have had Macs for over ten years now
and there are key combos that elude me still)

~~~
jswanson
Agree completely. You may want to checkout Airmail. Nice looking client with
all of the GMail keyboard shortcuts enabled.

Plays relatively nicely with Exchange too.

~~~
swah
Had to spend two bucks yesterday to find out that Airmail doesn't support the
new Gmail folders (Primary etc). Back to Web client.

------
quackerhacker
My FAV key combo is simple: FN + Backspace

Since I use the terminal ALOT, this key combo is the same behavior as delete
on a full keyboard. It will delete text in front of the cursor.

Another helpful one I found out through trial and error is Fn + Shift + <\- OR
->

The above moves the cursors placement to the beginning or end of a terminal
prompt. Hope this helps someone else :)

~~~
CGamesPlay
You will see the same behavior with the emacs shortcut Ctrl-D on most system
text areas, as well as in the terminal. I even added it as a Vim mapping in my
config.

While we're here:

    
    
      ^A - Home (beginning of line, A is the first letter of the alphabet)
      ^D - Delete (the character to the right of the cursor, or the one underneath the block cursor)
      ^E - End (end of line, E for End)
      ^T - Transpose (switch the characters left and right of the cursor, for example "acbd" with the cursor between "c" and "b" would become "abcd")

------
dba7dba
Good stuff. Most importantly, it highlights Cmd+Spacebar. It's amazing how
many of the non-hard-core geeks know about Cmd+Spacebar on Mac.

Someone told me an investment firm took AWAY computer mice from all employees
because using just keyboard makes you 20% more productive (I think they were
all Windows shop). And I believe the 20% figure.

------
bonjourmr
Great list. I'd also like to suggest this small plugin which allows you to
rearrange your windows on your screen as you would in Windows 7/8 with the
snap to feature: [http://most-advantageous.com/window-keys/](http://most-
advantageous.com/window-keys/)

------
jongraehl
I love how my 3 year old macbook pro has "alt" and "option" labels on that key
that in shortcuts is some awesome unrelated glyph, and the key labeled
"control" is in shortcuts described as "^" (which at least is familiar from
TTY)

------
edanm
The "shortcat" application recomended seems pretty awesome. Playing around
with it now.

~~~
aaronharnly
Thanks for pointing it out -- my eyes had slid past that portion of the
article. Shortcat is really impressive! I'm not sure whether I'll use it
enough to get into a muscle memory with it, but off the bat it makes
navigating web pages and controlling iTunes much easier.

[http://shortcatapp.com](http://shortcatapp.com)

------
personlurking
My one gripe is they took away Dictionary definitions as first results from
Spotlight (command+space). I'll look into using the Dictionary shortcut
mentioned in by the OP but I often used the Spotlight way for words I wasn't
looking at on my screen.

~~~
speg
You can press Cmd + L to skip down to the definition, or Cmd + D to open the
dictionary to the current word.

------
sbecker
SizeUp is a great utility that gives you keyboard shortcuts for resizing and
moving windows around. Essential!

[http://www.irradiatedsoftware.com/sizeup/](http://www.irradiatedsoftware.com/sizeup/)

------
chappi42
A bit shallow.

For me the main problem was that Macs had a completely different shortcut
layout than Windows and Linux. With 'KeyRemap4MacBook' I was able to get
consistency across the different platforms (not perfect but ~ok).

~~~
TazeTSchnitzel
The keyboard layout took some adjusting to. First that Command/Super is used
in place of Control for most shortcuts, and second that on a Mac keyboard,
Command/Super and Alt are swapped!

~~~
chappi42
The problem is if you switch between Mac and Linux computers (and sometimes
Windows): it's highly annoying when the 'shortcut-muscle-memory' has to
'think'...

With KeyRemap4MacBook I could 'linux-standardize' the Mac shortcuts. It's not
perfect but good enough and vim, terminal, most ui behave ~equal.

~~~
err4nt
> The problem is if you switch between Mac and Linux computers (and sometimes
> Windows): it's highly annoying when the 'shortcut-muscle-memory' has to
> 'think'...

Or you just need to double the amount of shortcuts you know ;)

------
matsur
Command-Shift-G in the save dialog or in a Finder window brings up a "Go to
folder" prompt that allows text input of a path _with tab completion_.

As an aside, these posts remind me of macosxhints.com of years past.

~~~
mjs
Hitting just ~ will also launch that dialog, although the text box only has
"~" in it. And cmd-. cancels it. (Works pretty much everywhere that has a
"Cancel" menu item.)

------
3rd3
You can set up a shortcut for tagging files in Finder which I find really
helpful: [https://coderwall.com/p/8li8hw](https://coderwall.com/p/8li8hw)

------
hedgehog
Also: [http://www.hcs.harvard.edu/~jrus/site/system-
bindings.html](http://www.hcs.harvard.edu/~jrus/site/system-bindings.html)

------
fadeddata
Most of the basic Emacs navigation bindings work as well

C-a C-e C-b C-f C-p C-n C-d

probably more...

------
ChikkaChiChi
The most glaring issue I have with Mac keyboard shortcuts is the lack of a
Meta+L lock feature like in other OSes. "Hot Corners" are idiotic for this
purpose.

~~~
snowwrestler
Ctrl-Shift-Eject (or power for non-optical Macs) locks the screen.

------
donatj
"Opening recent items" doesn't seem to work for me with _any_ app including
TextEdit. I just get Exposé

------
peterfisher
Seriously how can you write a keyboard shortcut tutorial and not include any
mention of keyremap4macbook.

------
abruzzi
useful stuff, but is skipped the easy shortcuts to get accented characters:

option-n then n or N : ñ or Ñ

option-e then a, e, i o or u : á é í ó ú or Á É Í Ó Ú

option-u then a, e, i o or u : ä ë ï ö ü or Ä Ë Ï Ö Ü

option-` then a, e, i o or u : à è ì ò ù or À È Ì Ò Ù

option-c : ç or Ç

there are probably others but I'm more familiar with French, Spanish and
German than say Czech.

~~~
janfoeh
Since 10.7 or 10.8, you can also keep the key pressed to get an IOS-style
special character popover.

~~~
abruzzi
never noticed that. the option keystrokes are so ingrained, I'll probably keep
using them.

------
mrb
Why this trend of using large font size on blogs? (1.225em from
[http://mattgemmell.com/stylesheets/screen.css](http://mattgemmell.com/stylesheets/screen.css)).
This is ridiculous, especially when this is done on mobile too. I have to
_scroll_ to be able to even read the first word of the first paragraph on my
phone!

------
biafra
My favorite shortcut is:

ctrl-shift-eject

to start the screen saver and lock the screen if screen locking is enabled.

------
5partan
Finder/Help/Search: keyboard shortcuts. Second topic.

------
Axsuul
Turning CapsLock into a modifier key changed my life.

------
superbaconman
on osx the shortcuts are different for emacs between the terminal and x
forwarded sessions. it kills me inside that this is the best hardware I can
afford for now. oh I also had to remap OSX shortcuts to keep from closing my
xfowarded emacs session.

