#mac


Find Duplicates in Address Book

Ever had the sit­u­a­tion where you have synced your iPhone (to iTunes OS X) and hap­pen to sync both the con­tacts from your Address Book and Google Con­tacts? Or, just hap­pen to add someone’s new con­tact info as anoth­er con­tact-card? Well, here’s how I cleaned and merged dupli­cate con­tacts so that my Address Book per­forms like a champ.

  1. Launch Script Edi­tor (Applications/AppleScript/Script Edi­tor)
  2. Paste the fol­low­ing code snip­pet
    tell application "Address Book"
        set biglist to {}
        set theGroup to count every person
        if not (exists (group "Duplicate Entries")) then
            make new group with properties {name:"Duplicate Entries"}
        end if
        set the_names to the name of every person as list
        repeat with i from 1 to number of items in the_names
            set this_Name to item i of the_names
            set theName to name of person this_Name as string
            if this_Name is not in biglist then
                copy this_Name to end of biglist
            else
                add (people whose name is theName) to group "Duplicate Entries"
            end if
        end repeat
        save addressbook
    end tell
  3. Save your new­ly cre­at­ed script (would usu­al­ly default to ~/Documents/AppleScripts/), and just open/run it

Now, the eas­i­est way to fig­ure out if its run­ning or not (at least for me) was to run the Activ­i­ty Mon­i­tor and sort by CPU. I sim­ply just wait­ed to see if Address Book would climb to the top doing 90+, and back down to nil. When this is done, you should be able to see a group called “Dupli­cate Entries”. From there, you may now sort through the details and delete the ones that you don’t need.

Note: You can also do a quick merge via Address Book itself from dupli­cate con­tacts. How­ev­er, you won’t be able to see which con­tacts are being merged as its just a set-it-and-for­get kind of deal. If you do not care and sim­ply just want to get rid of those dupes, you can do so by doing the fol­low­ing:

  1. Launch Address Book
  2. Select Card from its menu
  3. Then, select Look­ing for Dupli­cates… and just go through the fol­low­ing prompts after search results fin­ish­es

Adium Chat Transcripts Location

This applies to those using the ever-pop­u­lar IM client, Adi­um.

Adi­um is a free instant mes­sag­ing appli­ca­tion for Mac OS X that can con­nect to AIM, MSN, Jab­ber, Yahoo, and more.

If you are in a sit­u­a­tion were you would need to back up your chat tran­scripts due to account migra­tion, or in need to do a clean instal­la­tion of your OS X machine, here’s where to start:

~/Library/Application Support/Adium 2.0/Users/Default/Logs

Note: This is cur­rent as of Leop­ard OS X 10.5.4, and Adi­um 2.x.

ExpressCard Media Card Reader for MacBook Pro

I recent­ly pur­chased this from eBay: adapterbest. Works pret­ty good.

This thing is tiny. I almost for­got what I pur­chased as the pack­age that came from HK was pret­ty small.

Here are some specs:

  • Sup­port ExpressCard/34 and ExpressCard/54 slot
  • Sup­port SDHC for­mat
  • Sup­port mul­ti­ple flash cards:
    • With­out adapter: SDHC, SD, MMC, MMC­plus, M.S., M.S. PRO and xD
    • With adapter (NOT includ­ed): microSD, min­iSD, MMC­mo­bile, RSMMC, M.S. Duo, M.S. PRO Duo
  • Rugged and reli­able stain­less steel cov­er
  • Size: 34.2 mm x 75 mm x 5 mm
  • Sup­port Win­dows 2000 and XP, and Mac 10.4 and above

PS. Here’s how it looks inject­ed into the slot.

MacBook/Pro — Disable Wake on Lid Open

It seems like the cur­rent Soft­ware Update nul­li­fied my tweak (YMMV). I think this might be help­ful as most of the results showed only how to “dis­able sleep when the lid is closed” vs. dis­abling wake on lid open.

Any­ways, to do so, do the fol­low­ing in your Ter­mi­nal (Appli­ca­tion > Util­i­ties > Terminal.app):

Check cur­rent state (i.e. “lid­wake”):

$ pmset -g

Dis­able it:

$ sudo pmset -a lidwake 0

Or put it back to nor­mal (re-enable):

$ sudo pmset -a lidwake 1

Check the cur­rent state again to ver­i­fy (i.e. “pmset -g”). You shouldn’t have to restart. I hope that helps. Would’ve saved me a cou­ple of min­utes for sure.