[OFFLIST]
On Jun 8, 2010, at 3:15 PM, (4) GMAIL 5278 wrote:
Dear AppleScriptors,
Hello. I normally use Defaults to view and edit plist values if the list is not complicated. When I want to access a value under an extensive array of strings, I don't know how to do it. In one particular case, Apple's Property List Editor shows
At the end of March, this year, I replied to a similar question with the following:
Here's how I create a new preference file:
property defaultPrefsRec : {a:1, b:"string", c:{3, 4, 5}} -- for example
property prefsName : "prefsFileName" -- lookup info on CFBundleIdentifier to find out how to name your prefs file
set prefsFolder to (path to preferences folder from user domain)
set posixPath to quoted form of (POSIX path of prefsFolder)
do shell script "defaults write " & posixPath & prefsName & " x y" -- creates the new property list file with dummy value
tell application "Finder" to set prefsFile to (file (prefsName & ".plist") of prefsFolder) as alias
tell application "System Events" to set value of property list file (prefsFile as text) to defaultPrefsRecord
Reading the preference file:
tell application "System Events" to set prefsRec to (value of property list file (prefsFile as text)) --<<<<<<<<<<<<< READ
You can now modify the record prefsRec as desired.
Writing the preference file:
tell application "System Events" to set value of property list file (prefsFile as text) to prefsRec --<<<<<<< WRITE
Keep in mind that when you look at your preference file with Property List Editor, Array = list and Dictionary = record.