[X4U] Program association settings in OS X / Default association....FTP...

John Richardson richards at spawar.navy.mil
Tue Apr 26 09:51:45 PDT 2005


Hello,

Hope the following helps. It is from the applescript list. I included 3
answers
and you may have to glean bits from each answer. It is somewhat related to
all
the threads about launch services, plists, protocols,.......

John F. Richardson

======================= The Stuff ptotocol ======================

> Why does this execute script editor on my machine from the apple site?
>
> There is an HTML line in the source on the apple site with an cute
> icon that
> says click here and it will run script editor on your machine
> (I.e., I'm at
> the apple site and it will execute script editor on my machine.
> That is so
> cool. And it works. The dots are just standard portions of the HTML
> that I
> have striped like the image parameter. I assume that the key is
> "applescript://com.apple.scripteditor".
>
> <a href="applescript://com.apple.scripteditor">........
> name="clickscripteditor" ... </a>
>
> Why does this work? Is there a chapter in some documentation about
> this? Is
> this some sort of clever web services use of SOAP,whatever,.....?

Nothing so complicated.  "applescript:" is just another URL scheme;
Script Editor registers itself as the default handler for that
scheme, and voila!  You can read about it at <http://www.apple.com/
applescript/scripteditor/12.html>.


--Chris Nebel
AppleScript Engineering

################

> A partial answer to my previous post.
>
> URL PROTOCOL SUPPORT
>
> I assume that a null action just simply executes the scripteditor.
>
> So, is there a list of com.apple.XXX strings that work? Sort of like
> com.apple.iCal or com.apple.Safari or ,......
>
> Perhaps the stuff protocol. Then the systems is told that the stuuf
> protocol
> is handled by iCal.
>     stuff://com.apple.iCal
> Where would one register the protocol?

The com.apple.scripteditor bit is mostly filler.  Exactly who gets
the URL request is actually determined by Launch Services based on
which applications say they can handle "applescript:" URLs.  You
specify that in your application plist; see <http://
developer.apple.com/documentation/MacOSX/Conceptual/BPRuntimeConfig/
Concepts/PListKeys.html#//apple_ref/doc/uid/20001431/TPXREF115> for
details.

################

> Thanks. By the way, Christopher, since you work for apple according
> to the email address. If I want a Carbon App to handle a custom
> protocol is the solution convoluted. Is it just a case of editing
> the apps Info.Plist to indicate which protocol to support. In this
> case it is the "simvrml://" protocol.

As it happens, I just answered your question on-list.  (That's what I
get for reading my list mail first.)  Registering for a scheme is
simply a matter of adding it to your plist and then getting yourself
registered with Launch Services, which should happen automatically
when you launch the application.  See < http://developer.apple.com/
documentation/MacOSX/Conceptual/BPRuntimeConfig/Concepts/
PListKeys.html> under CFBundleURLTypes for details.  In your case, it
would look something like this:

CFBundleURLTypes = (
     {
         CFBundleURLName = "SimVRML";
         CFBundleURLSchemes = ( "simvrml" );
         CFBundleTypeRole = "Viewer";
     }
)


--Chris Nebel
AppleScript Engineering






More information about the X4U mailing list