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
- defaults manual page, Apple Inc