Using SVN Protocols at IgorExchange from Firefox on MacOS X

Those of you using SVN on a Mac and also using Firefox might be interested to know how to have Firefox recognize your SVN client when you click on an svn://.... link on a project page. Here is what needs to be set as far as I can tell. Basically, you will want to add/edit four network.protocol settings in the Firefox configuration. Here is how I did it, though I won't claim that I know why it finally worked.

As a prelude note -- to add or change a parameter in the about:config list, right click on any of the menu listings.

*) Open a new (empty) Firefox page
*) Type about:config
*) Say OK to voiding warranty
*) Search for network.prot .... configurations (this brings up the list of network.protocol ... parameters)
*) Consider each of these in turn. Either add them and set the value as such or change them to be such:

- network.protocol-handler.external.svn boolean -> true
- network.protocol-handler.warn-external.svn boolean -> false
- network.protocol-handler.expose-all boolean -> true
- network.protocol-handler.external.app.svn string -> (PATH TO APPLICATION*)

* To get this, use the terminal
* It should be proceeded by /Volumes/...(hard drive name) .../Applications/... (path) ...
* It might likely need to borrow completely into the application package itself
* My specific example with svnX is /Volumes/MyDrive/Applications/svnX.app/Contents/MacOS/svnX
* Finally, the value may not be important to set, however the parameter must likely need to exist

Now for the kicker. After doing all this to absolutely NO AVAIL (Firefox bombed with svn protocol not set message), the secret that worked for me seemed to be to do exactly the next steps ...

*) Add and set the following parameter ..

- network.protocol-handler.expose.svn boolean -> false (apparently, setting this false is the real key to success next!)

*) While still holding the about:config page (ie, do NOT close Firefox), go to the IgorExchange site, log in, and choose an svn://... link. You should immediately get a dialog box asking you to associate a protocol with the link. Select your favorite SVN application. If the SVN link opens in it VOILA! If not, repeat the above steps until you have found a suitable mix --- further notices much appreciated.

*) Confirm now that all is well by quitting Firefox, restarting, and reconfirming an svn:// ... link

A check on my about:config settings now shows network.protocol-handler.expose.svn is reset to true, but svnX is called when I click an svn:// ... link.

The above procedure might be a general way to introduce other network protocols via Firefox as well.