It has been nearly a year since I switched from Windows to Mac. In the past I’ve written that among the more difficult things I encountered in the switch was the behavior of the keyboard:
In spite of all this attention there was one key stroke combination group that I missed and it didn’t get to me until very recently: the behavior of the Page Up and Page Down keys. On the Windows and Ubuntu based systems I have handy the Page Up and Page Down key perform the following action: Page Down/Page Up in a non-editing viewport (web browser, help system, etc) and the viewing window scrolls Down or Up by a screen. If however you are in an editable surface (like a text editor) and hit Page Down/Page Up it moves the screen and the cursor.
This is different than the behavior on a Mac. The Mac Page Down / Page Up keys (fn-Down Arrow / fn-Up Arrow on a MacBook) only move the screen view, not the cursor. The way to move the cursor and the screen view on a Mac one screen at a time is to use Option-Page Down / Option-Page Up. Even when doing this the behavior is different: Windows and Ubuntu keep the cursor position in the same place relative to the window as you scroll down; Mac places the cursor in the middle of the screen.
|Full Keyboard||MacBook Keyboard||Action|
|Page Up||fn-Up Arrow||Move screen up|
|Page Down||fn-Down Arrow||Move screen down|
|Option-Page Up||fn-Option-Up Arrow||Move cursor/screen up|
|Option-Page Down||fn-Option-Down Arrow||Move cursor/screen down|
When I’m in Safari I hit Page Up / Down in order to scroll the viewport, then can switch to the arrow keys for fine tuning the view. Page Up / Page Down are effectively a jump tool for the cursor position.
Many times lately I’ve found myself paging up and down in a large code file in TextMate, then I’ll automatically hit the Down Arrow to just move down a little and since that action moves the view back to the cursor I’m usually back at the top of my document.
Frankly I think Apple got this one wrong; it should be the other way around with the Option modifier being used to only scroll the screen. It is of course too late now to change it and I am working to commit this keystroke combination to muscle memory, however if anyone knows the rationale behind this design choice I’d love to hear it.