Enable global text replacements in Snow Leopard

One of Snow Leopard’s more intriguing new features is text substitution, which lets the operating system replace defined sets of characters with other characters or symbols. For instance, typing (c) will generate the copyright symbol, ©. You can define your own shortcuts in the Language & Text System Preferences panel, on the Text tab.

However, substitutions are not enabled globally by default; they must be enabled in each application that supports them by selecting Edit -> Substitutions -> Text Replacement. If you’d rather enable substitutions globally, open Terminal and enter this command:

defaults write -g WebAutomaticTextReplacementEnabled -bool true

Note that this will only affect programs that support text replacement, and in which you haven’t disabled text replacement via the menu. (That is, if you disabled text replacement in Mail, the above command will not turn it back on.)

There are some reasons you may not want this enabled by default, which may be why Apple didn’t turn it on everywhere. As but one example, if you’re writing code and you want to refer to a variable c, it might look something like this: mystring = uppercase(c). With text substitution enabled in your text editor, that (c) would instantly turn into ©, which is clearly not what you want.

If you decide you’d like to revert to having substitutions off by default, use this command in Terminal to delete the preference you created:

defaults delete -g WebAutomaticTextReplacementEnabled

Again, if you’ve manually set some program to use substitutions, the above command will not automatically disable them—the program’s manual setting always overrides the global default. Thanks to Mac OS X Hints contributor GaelicWizard for unearthing this one.

Subscribe to the MacWeek Newsletter

Comments