View Single Post
There's a straightforward, effective way to do this. Set up a separate user account! Turn on Fast User Switching and the whole affair causes very little pain, especially compared to putting things back "just so" after someone else uses your computer, or you make a hash of things trying to work around the behavior of an application that expects to find its data in a specific spot.

If, however, you prefer hammering square pegs into round holes and using chisels as screwdrivers, you could continue along your current path. OmniFocus stores your preferences in ~/Library/Preferences/com.omnigroup.OmniFocus (.plist), and the database (which includes the perspectives) in ~/Library/Application Support/OmniFocus/OmniFocus.ofocus. When you thought you were working only on your demonstration copy, what you were actually doing was opening your own database and your demonstration copy, and any changes to preferences and perspectives were being done to your own database. This functionality is present to allow you to retrieve items from backups and the archive by drag-and-drop; you just double-click the backup file and you get a new window independent of your regular database. Make backup copies of all of those files/directories before doing a demonstration, and restore the originals when you are done.