I use Smile prediminantly as my AppleScript editor. At the moment however I am having to use Script Editor for a few things. I want to know about the options for saving scripts in Script Editor.
What I want is to save a script so that it runs in the background only, stays open with a idle handler and whose property behaviour is like that of a traditional apple script and not like that of a AppleScript studio application.
I assume that the new saving option of a application bundle is probably what I need because I can go and add the LSBackgroundOnly plist entry to the info.plist file after saving the script but I am concerned that the behaviours of properties in the script wont be the same as for a script not saved in a bundle. Does anybody have any experience of this?
Just tried it and it does store modified properties, just as in regular carbon applets/droplets.
You can save as a package and modify the LSBackgroundOnly entry, or save as applet and modify the LSBackgroundOnly in the “plst” resource, if you can use a copy of ResEdit, Resorcerer, ResFool, or just use Satimage:
set x to alias "path:to:app"
set bgPLIST to "<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
<plist version="0.9">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleIconFile</key>
<string>150</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>aplt</string>
<key>LSPrefersCarbon</key>
<true/>
<key>LSUIElement</key>
<integer>1</integer>
</dict>
</plist>
"
put resource bgPLIST to x type "plst" index 0 with name ""