Mail lets you choose to show the number of unread messages in mailboxes, but there's no way to show the total number of messages in your mailboxes. While most people may not want this, you might want to know how many messages are in certain mailboxes.
There's an interesting solution to this problem over at Stack Exchange, where user jaume presents two AppleScripts to accomplish this. The idea is to use the AppleScript to count the number of messages in the mailbox, then change the name accordingly, to something like "Messages (23)." The two scripts either change the names of a number of specified mailboxes, or of mailboxes whose names begin with the @ character. The script can be set to run via a Mail rule, such as every time new messages are received.
This is a nifty solution to a problem that many people wouldn't think of, but that can be useful in certain situations.
I use Dropbox to sync a backup of a number of local folders, and run a backup script every evening. When I got up the other morning, Dropbox was still running hard, and my Mac mini's fan was spinning. I clicked on the Dropbox menu item, and then on the gear button (this is with Dropbox 2), and saw that some files couldn't be copied because of "permissions denied" errors.
It turns out that Dropbox has a hidden feature to fix such things. Open the Dropbox preferences, click on Account, then press the Option key. The Unlink This Computer button will change to Fix Permissions. Click that button and let Dropbox go through your files.
Today, I went to send a weekly email to a list I maintain in Contacts, and I noticed that my group had inexplicably lost 7 cards! So I restored the contact cards from Time machine, which allowed me to only "Keep New" ones. However, I ended up with more cards than I knew I was supposed to have.
So I tried using Contacts' "Look for Duplicates" feature, but it would not let me review the duplicates. It simply told me that I had 28 duplicate cards and 8 duplicate entries based on people having the same name, and offered to let me either select Merge or Cancel. I'd sorted out messy merges before, so I wasn't about to get into that morass. So I devised my own way of finding and reviewing duplicates.
First, I selected my group, clicked the name at the top, then Shift-clicked the last name to highlight all the cards. I then dragged them into the to field of an empty email. I then typed Command-A to select them again and pasted them into a temporary TextEdit plain text document which I named "dupe_search.txt". (If anyone knows a way to skip the email/drag step, let me know.) I then ran the text document through this set of piped commands in Terminal:
This returns a list of email addresses with the number of times they occur in Contacts to the left. I then manually searched for each one in Contacts to inspect the dupes.
To merge the cards, select them and just type Command-Shift-| or select "Merge Selected Cards" from the Card menu.
I remembered after doing this that most of my missing cards had been a series of duplicates I'd previously merged a week ago! But I did recover 4 that had apparently slipped through Apple's cracks.
Be wary about maintaining lists in Contacts, especially if you use iCloud. I have found some disturbing bugs, such as when you right-click on a group and select "Send email to '...'", I wasn't getting the same number of email addresses as when I manually selected all the cards in that group and dragged them to the email! I've been adding emails via my iPhone - and I'm not sure I trust that iCloud is syncing them correctly given these four recovered cards!
[kirkmc adds: I haven't tested this. I have often had problems with Contacts, however, especially with certain cards having multiple email addresses that come from other cards. I wish there were a better way to clean out the Contacts database.]
A recent article in TechHive points out that you can now use line breaks in tweets. However, this is nothing new; I've been doing this for a long time, with my Twitter clients. Just press Option-Return to make a line break that does not act as press Return (or sending a tweet). It's worth noting that Option-Return works in just about any text field, including those where Return sends text (such as in Messages). This isn't a new hint; this feature has been around for ages, but it's good to know.
It's worth noting that my Twitter client of choice, Twitterrific, already handles Returns as line breaks; you have to press Command-Return to send a tweet.
You may have seen the news that Google Reader is shutting down as of July 1, 2013. If you use Google Reader, you may want to save your feeds to be able to import them into another RSS reader.
Go to Google Reader, then click on the gear icon at the right of the page and choose Settings. Click in Import/Export. In the Export your information section, click on Download your data through Takeout. Follow the instructions to download your data.
When you download the data, you'll get a ZIP archive. Double-click it, and look in the Reader folder for a subscriptions.xml file. You can use that to import your feeds into other RSS readers.
If you ever accidentally delete a contact, you can go to the Dropbox website and find older versions of your Contacts database.
[kirkmc adds: Obviously, this hint is useful only for those who don't use Time Machine. But it also suggests a way to store backups of other key files.
In the AddressBook folder, you'll find the entire Contacts database (AddressBook-v22.abcddb), which you can restore, but, while it may include contacts you've deleted, it might not have new contacts you've added. There's also a Metadata folder, which contains cards for your contacts, which are used when you search with Spotlight. You can browse through these cards and, if you find a contact you've lost, double-click it to add it to Contacts.]
Let's face it: ringtones are boring. And annoying. How many times do you want to hear the refrain from your favorite song when someone calls? And do you realize how annoying it is to others to hear a blasting bit of the latest Lady Gaga song.
On the other hand, using a default iPhone ringtone means that, if you're in a crowded area, lots of people will check their phones, thinking that they're getting a call, since they use the same ringtone.
You may be familiar with App.net, a service designed to be an alternative to Twitter. Originally a subscription-only service, App.net now has free tiers on an invitation-only basis.
App.net has an open API which allows developers to do interesting things. One of these is Project Amy, by Steve Streza which allows you to use Messages in OS X to send and receive App.net private messages. If you use App.net, you can download Project Amy here.
This hint updates this hint which provides an AppleScript that changes the sound input or sound output device selection.
I use Control Plane to manage various preference differences among the different locations (work, home, travel) where I use my MacBook. Control Plane uses various criteria (e.g., IP address, WiFi network name, etc.) to determine your location. Control Plane offers a lot of built in capability to change settings on your Mac based on arriving or leaving a location, and I recommend it highly if you regularly move your Mac among different working environments.
One capability that is not available in Control Plane is the ability to change Sound preferences when you move your Mac from one place to another. In my case, I have a Thunderbolt Display at work, which has built-in speakers and a built-in microphone. At home, I use my MacBook without a second display. I wanted to be able to change the Sound preferences back and forth using Control Plane.
Control Plane does offer the capability, however, to run any application when it detects that have arrived at or have left a particular location. So, you can run any AppleScript.
Relying on the hint comments here, I have updated the scripts in that hint to address my desire for changing sound preferences. My updated script should work on Lion and Mountain Lion. I cannot say whether it will work on earlier versions of OS X.
tell application "System Preferences" to activate
tell application "System Preferences"
reveal anchor "input" of pane id "com.apple.preference.sound"
tell application "System Events" to tell process "System Preferences"
tell table 1 of scroll area 1 of tab group 1 of window 1
select (row 1 where value of text field 1 is "Internal microphone")
quit application "System Preferences"
Note that this script hard codes the name of the Sound preferences pane tab to select and the sound input device to select. To set an output device, you would change "input" to "output" in the 3rd line of the script and then change the device name in the 7th line. I created separate scripts for sound input and sound output for each location where I work. I then simply created a Control Plane rule for each location for sound input and sound output separately.
Placing a comma after a phone number in Contacts allows you to add useful information. Without the comma, any information after the number will prevent it from auto-dialing on the iPhone, not recognizing it as a phone number.
Before smart phones I often found it useful to add additional information after a phone number in a contacts database, such as an extension number (x123), person's name or initial (John or J), function (billing), etc. The template in Contacts does not have a field for Extension which would allow for this. In addition, with the iPhone, the number itself will not even assume the proper format (area code in brackets, 3 numbers, dash, 4 numbers) if there is any additional information after the number, and therefore you won't be able to dial the number.
Putting a comma after any phone number (read as a one-second pause, as with modems) allows for any such qualifying information to be added. For me this is much easier than creating hundreds of custom fields for phone numbers.