defaults (software)

defaults is a command line utility that manipulates plist files. defaults is present in the OS X and GNUstep operating systems, and it first appeared in the NeXTStep operating system upon which both of the aforementioned systems are based. The system stores each user's preferences set in a .plist file for each program stored at ~/Library/Preferences for user-specific preferences, and /Library/Preferences/ for global preferences. Either way, the defaults utility writes or reads from these plist files depending on the one given.

Usage

The most common uses of defaults is:

$ defaults read DOMAIN # gets all
$ defaults read DOMAIN PROPERTY_NAME # gets
$ defaults write DOMAIN PROPERTY_NAME $VALUE # sets
$ defaults delete DOMAIN PROPERTY_NAME # resets a property
$ defaults delete DOMAIN # resets preferences

DOMAIN should be replaced by the plist file, without the extension '.plist'. plist files are named with Java-style reverse domain name notation. For example:

$ defaults read com.apple.iTunes # prints all of iTunes' preference values

plist files store property lists and values. The PROPERTY_NAME value becomes the name of the property to modify. For example, to remove the Search field from Safari's address bar:

$ defaults write com.apple.Safari AddressBarIncludesGoogle 0

or

$ defaults write com.apple.Safari AddressBarIncludesGoogle -boolean FALSE # case-sensitive!

Replacing 0 with 1 or FALSE with TRUE returns the search bar to normal.

Sometimes, preferences cause corrupt applications. To reset Address Book's preferences, you would either remove the ~/Library/Preferences/com.apple.AddressBook.plist file or issue the command

$ defaults delete com.apple.AddressBook

Settings

Some example settings configurable with defaults.

Domain Value OSX Version Legal Values Default Values
NSGlobalDomain AppleAquaColorVariant 10.8 1, 6 1
NSGlobalDomain AppleHighlightColor 10.8 3 floats range 0-1.0 "0.780400 0.815700 0.858800"
NSGlobalDomain AppleShowScrollBars 10.8 Automatic, WhenScrolling, Always Automatic
NSGlobalDomain NSQuitAlwaysKeepsWindows 10.8 bool false
NSGlobalDomain NSAutomaticWindowAnimationsEnabled 10.8 bool true
NSGlobalDomain NSNavPanelExpandedStateForSaveMode 10.8 bool false
NSGlobalDomain NSWindowResizeTime 10.8 float:time in seconds .2

References

This article is issued from Wikipedia - version of the Friday, November 21, 2014. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.