Mousing and Page-Up/Down in Terminal for Mac OS X

OMG facepalms apple still hasn't taken care of this. I would get calls from Tier 1 noobs all day when I worked at apple.

  • Open Terminal.app
  • Open the Preferences window (CMD+,)
  • Click the Settings tab
  • Select your current Settings theme, and click on the Keyboard tab
  • Edit (or Add) the entry for Home:
    • Set Action: to send string to shell:
    • Set the string to \001 (or press Ctrl+a)
  • Edit (or Add) the entry for End:
    • Set Action: to send string to shell:
    • Set the string to \005 (or press Ctrl+e)
  • Edit (or Add) the entry for Page Up:
    • Set Action: to send string to shell:
    • Set the string to \033[5~ (copy and paste this in)
  • Edit (or Add) the entry for Page Down
    • Set Action: to send string to shell:
    • Set the string to \033[6~ (copy and paste this in)
  • Close the settings window.

There you go. Terminal should be ready to use the Home, End, Page Up, and Page Down keys as expected by Windows/Linux users.

SSH into your favorite Linux server, open nano, vi, or emacs and enjoy.

If home or end keys don't work in vim try these:

  • Home: \033[7~
  • End: \033[4~

As for the mouse issue, I'm not sure if Termminal.app supports xterm mouse reporting. Supposedly it needs that to work. iTerm is an alternative terminal program that support mouse reporting. MouseTerm is a hack to add mouse reporting to Terminal.app but I've not tried it and don't know how well it works

You can also install X11.

Once you do one of those three things you should be able to use ssh with set mouse=a.


With regards to Page Up/Down and Home/End, simply hold down the shift key to send those to the application. Otherwise remapping the keys as Kelbizzle described will completely do away with Apple's idea of what's most important to scroll through (i.e. their scrollback).


Within Terminal mc (midnightcomander) works with Fn+Shift+UpKey and Fn+Shift+DownKey