Customizing Hidden Settings with Defaults on macOS Tahoe
The defaults command allows you to access and modify the macOS user defaults system. Many applications and system components have configuration options that are not exposed in the standard "System Settings" or "Preferences" windows. You can unlock these hidden features using the terminal.
Reading Settings
To see all the default settings for a specific application or domain, use defaults read.
Syntax:
defaults read [domain]
Example: Read all Finder settings.
defaults read com.apple.finder
To read a specific key within a domain:
defaults read com.apple.finder AppleShowAllFiles
Writing Settings
To change a setting, use defaults write. You need to know the domain, the key, and the type of value (string, boolean, integer, etc.).
Syntax:
defaults write [domain] [key] -[type] [value]
Note: Often the type is inferred, but for booleans, use -bool.
Common Examples
Here are some popular hidden settings you can enable.
1. Show Hidden Files in Finder
By default, Finder hides system files (like .gitignore or .zshrc).
defaults write com.apple.finder AppleShowAllFiles -bool true
2. Change Screenshot Format
Screenshots are saved as PNGs by default. You can change this to JPG for smaller file sizes.
defaults write com.apple.screencapture type jpg
3. Remove the Dock Delay
Speed up the animation when showing/hiding the Dock.
defaults write com.apple.dock autohide-delay -float 0
defaults write com.apple.dock autohide-time-modifier -float 0
Applying Changes
Most changes made with defaults do not take effect immediately. You usually need to restart the application or the specific system process.
To restart Finder:
killall Finder
To restart the Dock:
killall Dock
To restart the System UI (Menu Bar, etc.):
killall SystemUIServer
Deleting Settings
If you want to revert a setting to its factory default (or just remove your custom override), use defaults delete.
Syntax:
defaults delete [domain] [key]
Example: Revert the screenshot format setting.
defaults delete com.apple.screencapture type
For more on general terminal usage, refer to Getting Started with macOS Tahoe.