Quick Tip: Customize the Terminal


It’s safe to say that many Mac users will only rarely be seeing the Terminal. In our age of gorgeous UI, or User Interface, design and there’s an app for that, the need to do things the old fashioned way is diminishing.

Nevertheless, when you do find yourself at the command line, you can make it look less intimidating or more like it does in the movies. In this tutorial I'll show you how you can use Terminal’s deep customization tools to spruce up the look of the app to suit your preferences.


Quick Tip: Customize the Terminal

Skin Deep

We’ll be making cosmetic changes, but there’s a practical side to this endeavour: setting up your own look ensures that readability and contrast is perfectly suited to your environment.

Depending on your usage of Terminal, you may find that you’d like it to be optimized for large amounts of text that’s easy to parse. Or, you may simply need text to be large so you can keep an eye on a process from the other side of the room.

Creating Your Own Terminal Profile

To begin, launch Terminal from the Utilities folder (within Applications), and navigate to the Preferences by using the menu or the system-wide shortcut Command , (Command Comma).

Default Terminal
The default Terminal profile is kind of...bland.

Step 1: Clean Slate

From the Preferences window, click over to the Settings tab. Before modifying anything, create a custom profile. You’ll see a list of default profiles in the sidebar, and at the bottom there’s a + button that you’ll click to create your new custom profile.

Creating a Profile
Make a new profile entry and give it a descriptive name.

Step 2: Text Options

The first set of options to configure is text settings. You can use any system font for your profile, but Terminal use tends to require the predictable spacing and distinctive characters of a fixed-width typeface, which restricts your options.

I’m not a fan of Menlo, the default font, so I will pick another popular option that comes pre-installed in Mavericks: Monaco.

With the typeface selected, it remains only adjust the sizing to suit your preference. I find myself preferring point sizes of thirteen or fourteen to keep things easy to read from a normal distance.

Selecting a Font
Pick a font that best suits your needs; in my case, it's Monaco.

Below the font picker, you’ll see some checkboxes for additional text behaviour options. Anti-aliasing is worth keeping on in most scenarios, and allowing bold and blinking text can help distinguish certain process elements depending on what tasks you’re performing.

I generally leave all but the last item checked, because I prefer to denote bold items using an entirely different colour.

Step 3: Colours & Cursors

This brings me to colour selection. You can select a different one for normal text, bold items, and for selected text. Pick colours that are not only pleasing to the eye on their own, but that also provide contrast to your intended background colour, which you’ll be setting up shortly.

Text Colours
Select text colours that will fit well with your intended background.

In the interest of making myself feel like a hacker when I’m performing server updates, I’m choosing green for normal text and a light blue for bold. My selection colour will be a pale yellow so it’s easy to spot.

The final task in this section is to pick a cursor. Are you a block kind of person or do you prefer the sleek underline? If you’re a writer, perhaps the familiar vertical bar is your choice. Whichever you like, make sure to decide if you want it to blink as well.

Sidenote: If you’re wondering what that ANSI stuff is, don’t bother: it’s a vague term referring to a character set that expands upon ASCII. If you were on bulletin boards way back when, you may recognize the acronyms as they were used to describe art that people assembled from text characters. In that context, think of ANSI as an expanded set of character and colour options versus ASCII.

For us, it’s only relevant if you want to tweak the default colour palette. Personally, I tend to leave it as is because I don’t often encounter multiple colours in my usage of the Terminal.

Close the default Terminal window that opened when you launched the app, and click Terminal > New to open a dropdown menu showing all the existing window profiles—including your new one. Create a new window using your custom settings and you can see how everything is looking so far.

Work in Progress
So far so good, but I really need to change my background colour now.

As you continue to modify the profile, this window will update in realtime to show you how your design looks.

Step 4: Window Dressing

Now that I’ve exhausted my development of the text, all that remains is to make sure the window itself looks the way I want it to. Click over to the Window section of the Settings tab.

Here, you can give each Terminal window a default title, and the checkboxes below allow you to include various additional points of information in the window’s title bar. I mostly just keep the active process name showing so I know what each Terminal window is up to.

Window Settings

That's much better! Don't forget to customize your title bar to include the information you need.

The background area allows you to set either a solid colour or an image as your Terminal background. I don’t like image backgrounds, so I’m choosing a simple black to complement my hacker theme.

When you click the colour block, you’ll see that the colour picker gives us some interesting additional options, notably the ability to set an opacity level for the background and add some gentle blur to help obscure whatever lies beneath.

Tip: If you routinely have multiple Terminal windows open, you can consider adding a dedicated set of opacity and blur values for inactive windows to help distinguish them. Mine become more transparent.

How’s your profile looking so far? Here’s my finished hacker one:

Hacker Theme

Just like in the movies.

Step 5: Sizes & Defaults

With the colours in place, I need only decide on how big I want the default window size to be.

Naturally, this can be adjusted manually on individual windows by dragging the corners, but if you have a size that you’d like all windows to start at, set it up in the Window Size section.

You are now the proud designer of a custom Terminal profile. In the profiles panel, make sure to highlight your new profile and click the Default button to make sure that Terminal remembers how you want new windows set up.

Making it Default
Now all new Terminal windows will open with your custom profile.

Tasteful Terminals

You’ve now created your very own Terminal profile. Remember that you can make as many of these as you like, so if you have different usage scenarios, you can create one for each and then select them as needed.

For now, whether you’re fiddling with remote servers, performing maintenance tasks, or simply giving low-level instructions to your computer, you’ll be doing it in your very own customized version of Terminal.