MacOS – Where does Mountain Lion’s Calendar.app store its preferences

calendarmacospreferences

The program Calendar.app clearly has some preferences that are settable.

enter image description here

However, when I type defaults read com.apple.Calendar (and various permutations on capitalization), I get the message Domain com.apple.Calendar does not exist. Additionally, I don't find a file in ~/Library/Preferences with a time stamp to match the changes I made.

Where does the Mountain Lion Calendar program store its preferences?

Best Answer

After performing an extensive search of my user directory I have found file associated with the Calendar.app, if you check the Info.plist contained within in the Calendar.app bundle you will find that the identifier for the Calendar app is still iCal and the file you are looking for is like "com.apple.iCal"

The files I found using the following search is:

$ find /Users/yourusername/ -name com.apple.iCal*

Files found:

/Users/yourusername/Library/Application Support/SyncServices/Local/clientdata/com.apple.iCal
/Users/yourusername/Library/Caches/com.apple.helpd/Generated/com.apple.iCal.help
/Users/yourusername/Library/Caches/com.apple.helpd/SDMHelpData/AppleExtra/English/HelpSDMIndexFile/com.apple.iCal.help
/Users/yourusername/Library/Caches/com.apple.iCal
/Users/yourusername/Library/Preferences/ByHost/com.apple.iCal.helper.E4000000-0000-0000-0000-000000000000.plist
/Users/yourusername/Library/Preferences/ByHost/com.apple.iCal.helper.E4000000-0000-0000-0000-000000000000.plist.lockfile
/Users/yourusername/Library/Preferences/com.apple.iCal.helper.plist
/Users/yourusername/Library/Preferences/com.apple.iCal.helper.plist.lockfile
/Users/yourusername/Library/Preferences/com.apple.iCal.plist
/Users/yourusername/Library/Preferences/com.apple.iCal.plist.lockfile
/Users/yourusername/Library/Saved Application State/com.apple.iCal.savedState/

Additionally I am Fairly certain that iCal in Mountain Lion is using iCloud to store app preferences, or at least it should be since its suppose to be a cloud heavy app to span the iOS and OS X device boundary. I Will have to check into this further, and see how it works when iCloud is enabled or not...

It should be using iCloud as noted in developer docs topic of Designing for Key-Value Data in iCloud

To store discrete values in iCloud for app preferences, app configuration, or app state, use iCloud key-value storage.