Terminal.app on Mac OS X is a little weird. It has some default settings that don’t work right, at least for me. I’m logging in to all sorts of machines from Terminal.app: Linux, FreeBSD, Solaris, other Macs. I’m also often using screen and tmux. It’s taken a while to get settings that work fairly nicely everywhere.
Here are my settings, grouped by preference pane.
- Shells open with default login shell (
- Font: DejaVu Sans Mono 10 pt.
- Empty title.
- Active process name, dimensions, command key: checked. The rest are unchecked.
- Limit number of scrollback rows to 10000.
- Run command: unchecked.
- When the shell exits, close if the shell exited cleanly.
- Prompt before closing: never.
I used info from this Mac OS X Hint to rebind home, end, pageup, and pagedown. By default, shift home and shift end had some incorrect strings. I wanted to correct them so that I could use them in mutt or vim. I also wanted to scroll Terminal’s buffer using shift-pageup and shift-pagedown, like every other terminal program.
So, the result is this:
- page down:
- page up:
- shift page up: scroll to previous page in buffer
- shift page down: scroll to next page in buffer
- shift home: scroll to start of buffer
shift end: scroll to end of buffer
- Use option as meta key: checked.
- Declare terminal as:
- Delete sends Ctrl-H: unchecked.
- Escape non-ASCII input: unchecked.
- Paste newlines as carriage returns: checked.
- Strict VT-100 keypad behavior: unchecked.
- Scroll to bottom on input: checked.
- Audible bell: unchecked.
- Visible bell: checked.
- Character encoding: Unicode (UTF-8).
- Set LANG environment variable on startup: checked.
- Terminal setup describes my more general terminal and shell setup.