Mountain Lion's new Share menu is handy, but not smart enough not to propose you services you haven’t signed for in the “Mail, Contacts & Calendar” Preferences pane. Here’s a way to remove from it the items you don’t use.
Copy the file /System/Library/PrivateFrameworks/ShareKit.framework/Versions/A/Resources/SHKServicesOrder.plist to a folder where you have write permissions. Duplicate it and keep a copy of the original in case you want to revert to the standard Share menu, as we’ll have to overwrite the system version.
Open the file with any text editor and erase the lines corresponding to services you don’t use. I’ve erased Twitter, Facebook, and all the video services. Save the file and copy it back to the folder mentioned above. When asked if you want to overwrite the file, click on Yes and enter an admin password. You may have to log out and back in for the changes to take effect.
[kirkmc adds: Note that this change may not survive a system update. I agree that this should be user-configurable, and basing it on accounts defined in the Mail, Contacts & Calendar preference pane - whose more appropriate name would be Accounts - would make sense. It would also be great if there were a way to add accounts that aren't hard-coded into the system. Could this be a challenge to hinters to try and figure out how to do that?]
As mentioned in this hint, Mountain Lion removed the setting in the Sharing preference pane to turn Web Sharing on and off, even though Apache Web Server is still installed by default. That hint also mentions a third-party preference pane that you can install to toggle Web Sharing in Mountain Lion.
Here's another solution in the form of an AppleScript. If you copy the script to a .scpt file in ~/Library/Scripts, you can conveniently toggle Web Sharing by selecting the script in the Scripts menu.
Here's the AppleScript:
display dialog "Enter your password:" with title "AppleScript" ¬
default answer "" with hidden answer
set pw to text returned of result
set resultMsg to do shell script "
listResult=`launchctl list | grep org.apache.httpd`;
if [[ $listResult ]]; then
echo 'Apache Web Server stopped.';
echo 'Apache Web Server started.';
fi" password pw with administrator privileges
tell application "Finder"
set notifier to POSIX file "/Applications/Terminal-Notifier.app"
if exists notifier then
do shell script POSIX path of notifier ¬
& "/Contents/MacOS/terminal-notifier -message '" ¬
& resultMsg & "'"
display alert resultMsg
The script uses the free Terminal-Notifier app by Eloy Durán, if installed, to notify you that Apache Web Server has been started or stopped. If you have the app installed somewhere other than /Applications, be sure to edit the app's path in the script.
Note that the state of Web Sharing is persistent across reboots, whether you use this method to control it or the aforementioned preference pane.
If you use Growl, you might find it a bit overkill to have some notifications come through Growl and others to Notification Center. Mountain Growl pipes notifications from Growl to Notification Center, but there is one caveat: all these notifications will have the Growl icon, and not the icon of the application that sent the notification.
This is just a stop-gap, as Growl 2, to be released soon, will support Notification Center directly, but in the meantime, you might find this a useful solution to group all notifications in one place.
If you like getting those little Notification Center alerts when things happen, here's a way to get even more. iTunification gets information from iTunes when tracks change, and funnels this into Notification Center, so you can get a banner to see what the next track is.
This certainly isn't new, as GrowlTunes has been able to do this for a while (if you use Growl), and I get notifications from CoverSutra, an iTunes controller. On top of that, I'd be willing to bet pretty much anything that the next major update to iTunes has Notification Center support. But in the meantime, if you want simple banners to tell you what's playing, this is a good solution, and it's free.
If you use Launchpad, you can assign a keyboard shortcut to open it. Go to the Keyboard preference pane in System Preferences, then Keyboard Shortcuts, then Launchpad & Dock. Select Show Launchpad, press Enter or Return, and enter your shortcut.
[kirkmc adds: It's worth mentioning this because, oddly, there is no default shortcut for Launchpad. (This is the case for both Lion and Mountain Lion.) While we're at it, here are some keyboard controls you can use when in Launchpad. Command-right/left-arrow moves to a different page, and Command-down-arrow goes into a folder.]
Up until Mountain Lion, you could hover over the Install or Download button in the App Store Purchases list and an x would appear. Clicking this x would hide the app, removing it from the purchases list.
Now, in Mountain Lion, you need to right-click or Control-click and choose Hide Purchase from the one-item contextual menu that displays.
To unhide an item, click on the Account link on the main page of the App Store, then go to iTunes in the Cloud > View Hidden Purchases.
I recently upgraded to Lion and miss Exposé's "All Windows" Hot Corner feature, which showed clearly all windows of the current Space. With Mission Control, you have to delicately hover over tiny slices of windows and keep hitting the space bar to switch between windows or, using a hot corner with "Application Windows," select among all windows of a single app from all desktops (plus windows that aren't even open)! I'm a power multi-tasker and I use desktops to differentiate between projects that all use the same apps, which means that Mission Control is virtually useless to me. Thus, I have put together an alternative that is far from Exposé's previous functionality, but a wee step closer, and for me, a huge boost in productivity.
This hint uses two third-party preference panes (Witch and Corner Click) and an AppleScript.
First, make sure that the hot corner you want to use for Witch is not set in System Preferences.
Install Witch and open it in System Preferences.
Enable using the checkbox at the top.
Under Triggers, make sure the shortcut for All applications non-minimized / Forward is set as option-tab.
Under Behavior, show list right away so the hot-corner response is immediate, and un-check Releasing all modifier keys activates the selected window.
(Optional) Under Appearance, I maximized the size sliders, selected Show mini window previews if possible", and selected Pop up a preview... after 0.1 second delay.
Install Corner Click and open it in System Preferences
Under Settings, check Corner Click is enabled.
Under Actions, select the corner you want to use. Click the + button, set the Trigger to Hover, and for the Action, select Run Applescript, and choose the following script. You'll have to paste this script into the Script Editor and save as a script file:
tell application "System Events"
key down option
repeat while (value of seventh attribute of process "witchdaemon" is true)
on error errStr number errorNumber
key up option
error errStr number errorNumber
key up option
This script basically "holds down the Option key" (and taps the Tab key) and keeps the tab down until you've made your window selection.
I may be tweaking my settings as time goes by, but this to me is much better than Mission Control or the "pplication Windows hot corner simply because I can select among all windows on the current desktop quickly using a hot corner and a single click. No more delicate window slice navigation and space bar nonsense.
I noticed that my iChat-related AppleScripts had stopped working after the 10.8 upgrade. Apparently, Messages no longer answers to the name iChat; you have to edit your scripts to call "Messages" instead, like this:
tell application "Messages" to set status message to "On Mountain Lion"
I'm pretty sure the beta didn't break backwards compatibility like that, and I really can't think of a good reason for it.
[kirkmc adds: It's true that the name of an application like this changes it should probably still respond to the old name. So scripters beware. It's worth noting that both Contacts and Messages do respond to their old names if you search for them in Spotlight, though Calendar does not.]
if you take movies with your iOS device (or other camera) that need to be trimmed, you may have encountered the following. If you do not trim the movie on the device, but do it later on your Mac using QuickTime, the file’s date will change to the date you trimmed it, resulting in an incorrect sort order in iPhoto.
Terminal and touch come to the rescue:
First check the original file’s date and time in the Finder by selecting it and pressing Command-I.
Then, in Terminal, use touch to change the date and time. Here’s an example:
This will change the file's modification date to August 19, 2012 at 12:30. Doing this before importing the trimmed video will keep an appropriate sort order in iPhoto.
Check man touch for more on using this command.
[kirkmc adds: The touch command is nothing new, and there's even a hint about using touch with iPhoto that's more than ten years old. I thought it was worth posting this, however, because of the issue with dates that are changed when editing files such as movies.