Top 15 Terminal Commands for Hidden Settings in Snow Leopard
Every time Apple brings out a new version of OS X, we compile a list of our favourite Terminal commands for enabling hidden features and changing hidden settings (here are the lists for Tiger and Leopard).
For those who are new to Terminal Commands, here's a quick run down of how to use them. Don't worry, it's really easy. Start by opening up Terminal, located in the Utilities folder in the Applications folder. In the window that appears, paste in one of the lines provided below, and then hit Return. For the changes to take effect, you need to restart the application concerned. For applications like the Dock or Finder, it is easiest to just type killall Dock
or killall Finder
into the Terminal to restart them. To reverse the changes, you just need to change the last word of the command and run it again. If the last word is YES, change it to NO, change 1 to 0, and change TRUE to FALSE and vice versa for all.
1. Folder previews in Quick Look
This is my favourite hidden feature in Snow Leopard. When enabled, using Quick Look (hit the space bar) on a folder will show you a preview of the folder's contents inside a translucent folder icon. The previews of the files inside the folder also cycle through so you can see all of them. Just use the following command:
<code>defaults write com.apple.finder QLEnableXRayFolders 1</code>
You will need to restart the Finder, either by typing killall Finder
into the Terminal or by Control-Option-clicking on the Finder in the Dock and choosing Relaunch.
2. Globally enable Text Substitutions
You may have realised that the new text substitutions feature in Snow Leopard isn't enabled in all applications by default, most noticeably in Safari. To enable it , you need to right-click on a text box and choose Substitutions then Show Substitutions. To globally enable text substitutions, use the following three commands one at a time. The first one will enable substitutions, while the second will enable dash replacement and the third will enable spell checking.
defaults write -g WebAutomaticTextReplacementEnabled -bool true
defaults write -g WebAutomaticDashSubstitutionEnabled -bool true
defaults write -g WebContinuousSpellCheckingEnabled -bool true
If you decide there are some specific applications where you want to disable these again, you can do it in the normal way. As always you will need to restart each application for the changes to take effect.
3. Bring back AppleScript Studio palette
As of Snow Leopard, AppleScript Studio has be deprecated in favour of AppleScriptObjC. You can still work on AppleScript Studio projects, but you can't create new ones, and the AppleScript Studio palette in Interface Builder is gone. To bring it back, use the following command:
defaults write com.apple.InterfaceBuilder3 IBEnableAppleScriptStudioSupport -bool YES
4. Disable "focus follows mouse" in Terminal
In Leopard there was a Terminal command to make the Terminal's window focus change with mouse movement. If you had previously enabled this, you will find things don't work quite right in Snow Leopard when you use Command-Tab to switch between applications in different spaces. To fix this, you will need to disable the focus follows mouse behaviour using the following command:
defaults write com.apple.Terminal FocusFollowsMouse -string NO
5. Force Dictionary to only use one window
If you aren't a fan of using Command-Control-D to quickly look up definitions, you might use the "Look up in Dictionary" contextual menu item or Services menu item. In Snow Leopard, each word you look up using these methods opens in a new Dictionary window, which gets a bit annoying. To make each word you look up open in the same window, just use the following command:
defaults write com.apple.Dictionary ProhibitNewWindowForRequest -bool TRUE
6. Change the behaviour of the green zoom button in iTunes
With the release of iTunes 9, Apple messed around a bit with the behaviour of the green zoom button in iTunes. Things are back to normal as of iTunes 9.01, but briefly the green button maximised the window instead of switching to the mini-player. If you liked the temporary change, you can bring it back using the following command:
defaults write com.apple.iTunes zoom-to-window -bool YES
Of course, you can always get the alternative behaviour by holding the Option key and clicking in the green button.
7. Debug menu in Address Book
The debug menu has been available in Address Book for some time, but there are some new additions in Snow Leopard. If you don't already have it enabled, the command is:
defaults write com.apple.AddressBook ABShowDebugMenu -bool true
Restart Address Book, and then click Debug in the menu bar to see the new options. You can enable reflections under contacts pictures, get to the "People Picker Panel" and enable a debug panel called "Ye Olde Debug Settings”.
8. Autoplay movies in QuickTime X
One of the weird things about the new version of QuickTime is that it has no Preferences. Luckily you can still change things using the Terminal. To make a movie automatically start playing when you open it, use the following command:
defaults write com.apple.QuickTimePlayerX MGPlayMovieOnOpen 1
9. Keep QuickTime in full screen when switching applications
If you are watching a movie in full screen in QuickTime and you use Command-Tab to switch to another application then the movie will automatically exit full screen. To make it stay full screen in the background, use the following command:
defaults write com.apple.QuickTimePlayerX MGFullScreenExitOnAppSwitch 0
10. Disable Rounded corners in QuickTime
If the slightly rounded corners of movies in QuickTime bug you, use the following command to disable them:
defaults write com.apple.QuickTimePlayerX MGCinematicWindowDebugForceNoRoundedCorners 1
11. Always or Never show titlebar and Controller in QuickTime
The following two commands either permanently enable or disable the titlebar and controller that pop up when you mouse over a movie in QuickTime:
defaults write com.apple.QuickTimePlayerX MGUIVisibilityNeverAutoshow 1
defaults write com.apple.QuickTimePlayerX MGUIVisibilityNeverAutohide 1
12. Automatically show closed captioning and subtitles on opening
This turns on subtitles and closed captioning automatically when you open a movie that supports them.
defaults write com.apple.QuickTimePlayerX MGEnableCCAndSubtitlesOnOpen 1
13. Make list view stacks work like grid view Stacks
This command slightly changes the behaviour in Stacks in list view. Once enabled, they act more like grid view Stacks, but with a single list of files and icons on the left. The main difference is when "drilling-down" through folders within the Stack.
defaults write com.apple.dock use-new-list-stack -bool YES
You will need to restart the Dock for changes to take effect. The easiest way is to use killall Dock
in the Terminal.
14. Enable mouseover highlight in stacks
If you want items in grid view stacks to highlight when you move the mouse over them, use the following command. It's slightly different from the equivalent in Leopard. Also, note that you can get the highlight behaviour in Snow Leopard without using this command by using the arrow keys to select items in a stack, or by clicking and holding on a stack before dragging the mouse up onto the grid.
defaults write com.apple.dock mouse-over-hilite-stack -boolean YES
You will need to restart the Dock for changes to take effect. The easiest way is to use killall Dock
in the Terminal.
15. Set a precise screensaver password delay
A useful new feature of Snow Leopard is the ability to set how long your Mac is asleep or how long the screen saver is on before it requires a password to wake up again. You can access this from the Security section of System Preferences. However, you have to choose a time period from a drop-down menu, and you can't enter your own custom time period. To do this, use the following command. The number at the end is the time in seconds. For example 1800 is 30 minutes, which bizarrely isn't an option in the drop-down menu.
defaults -currentHost write com.apple.screensaver askForPasswordDelay -int 1800