Protocol handlers are configured with set_protocol_handler. You can configure a protocol to be handled internally, externally, or to prompt for an external handler. The call form looks like this:
The protocol being configured. In other words, the scheme portion of the url, with no colon.
- Handle the protocol internally. That is, have Gecko try to handle it.
- Prompt for a handler when attempting to open a link of this protocol.
- an nsIFile
Use the executable indicated by the nsIFile as a handler. You can get an nsIFile from make_file or find_file_in_path.
- a string
- The string is a template url for a web service for handling this protocol. The sequence "%s" in the string will be replaced by the url-encoded url of the resource.
This kind of protocol handler only affects what happens when clicking on (or following) a hyperlink. It has no effect on reloading, or any commands that cause an url to be loaded in a new buffer or window, such as command-line remoting or clicks-in-new-buffer.
3.1. Handle mailto links with a shell script
3.2. Handle mailto links with Thunderbird
3.3. Handle mailto links with GMail
3.4. Handle magnet links with Transmission