How to use text substitution in Snow Leopard

One of the potentially more useful new features in Snow Leopard is the ability to create (nearly) system-wide text replacements. If you open the Text tab of the Language & Text System Preferences, you’ll see a number of predefined replacements, including (c) for ©, (r) for ®, and TM for ™.

Today, I’ll give you a couple tips on getting the most out of substitutions in OS X 10.6, including just getting them working in the first place. For some unknown reason, substitutions are seemingly disabled on a global basis in Snow Leopard—they’ll work in TextEdit, but not in any other application I tested, such as Mail, iChat, or any other Cocoa applications.

As it turns out, you need to enable text substitutions on a per application basis. For most programs, you can do this by selecting Edit -> Substitutions, and then selecting Text Replacements on the sub-menu, if you don’t already see a checkmark next to that entry. (Note that you’ll only see this menu item if the program supports substitutions.) This will enable text substitutions (yes, Apple called the same feature two different names) within that application…most of the time.

There’s at least one exception, though there may be more. In Mail, this menu is grayed out when you’re looking at the main Mail window. To enable substitutions in Mail, you need to first open a new message window; you’ll then find you can select the menu as shown above.

Once enabled, substitutions should remain enabled through application relaunches, though I’ve seen iChat occasionally “forget” they’re enabled, and they stop working. The fix for that problem is simply to close and reopen the current chat, and substitutions should start working again.

Substitutions should work automatically in all Cocoa applications, but there are definite exceptions there, too. The iWork ’09 applications, for example, don’t show the Substitutions menu item at all—perhaps because they offer their own substitutions feature. Some third party Cocoa applications already support substitutions (Smultron is one that works), and I expect support will be coming to other apps with future updates.

Once you’ve got substitutions working in general, you’ll quickly run into another apparent limitation: how do you enter multi-line substitutions? That is, what if you want your signature to read:

Regards;
Richard

There’s no apparent way to enter line breaks in the text you enter in the Text tab of the Language & Text System Preferences panel. But as it turns out, there are actually two ways to get line breaks into your replacement text. The easiest way, especially for short replacements like the one above, is to hold down the Option key and press Return whenever you need a line break. So to create the above substitution, you’d type in Regards;Option-ReturnRichard. You won’t be able to see both lines in the input area, but it will work when you type the abbreviation.

For longer snippets with more line breaks, you can compose them in a pure text editor such as TextEdit, then just copy and paste them into the replacement area. The ability to use multi-line replacements makes Snow Leopard’s replacements helps make replacements more useful.

If you find yourself limited by other aspects of the built-in replacements tool, however, I strongly recommend you check out either TextExpander or TypeIt4Me. Both of these utilities take the basics of text replacement to an entirely different level. Not only can you use multi-line replacements, you can do things like position the cursor, insert the contents of the clipboard or the current date or time, and create rich text replacements (Snow Leopard’s feature works only on plain text).

Subscribe to the MacWeek Newsletter

Comments