Adding new URL handler for Freeplane 1.3.x

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Adding new URL handler for Freeplane 1.3.x

Dimitry Polivaev
Administrator
Freeplane 1.3.x is able to navigate to a node given in its command line argument like

freeplane.exe myMindMapFile.mm#ID_12345

Unfortunately it still does not allow to link to the nodes inside mind maps using URL syntax in other programs. This issue has been discussed in http://sourceforge.net/apps/phpbb/freeplane/viewtopic.php?f=1&t=854 .

Because I believe that possibility to link to nodes can be very important for using freeplane together with other programs I want to implement following changes for the coming release:

1. Complete node URI should have schema "freeplane" instead of "file" like

freeplane:///C:/path/to/file.mm#ID_12345

2. Freeplane should properly handle such URL internally

3. Freeplane windows installer and mac configuration should register Freeplane as handler for URLs with schema freeplane

4. Also correspoding Linux scripts should be developed by people packaging Freeplane for linux

Any objections?

Regards, Dimitry
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Adding new URL handler for Freeplane 1.3.x

Joeran
I have not completely thought that through, but on first glance the idea sounds good.

However, the question is if we want to have two schemas like freeplane:/// and docear:/// or something more general that could be used by both Freeplane and Docear (e.g. mm:///)

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Adding new URL handler for Freeplane 1.3.x

Dimitry Polivaev
Administrator
Hi, I fixed it!

The ugliest issue was that URI look different when it comes from Internet Explorer than from
anywhere else because Internet Explorer partially (!) decodes the path and all other browsers and
programs don't.

http://msdn.microsoft.com/en-us/library/ie/aa767914%28v=vs.85%29.aspx

So the freeplane node URI is now like

freeplane:/%20/C:/Users/Dimitry/Documents/Refactoring%20catalog.mm#ID_791834704

When it comes from Internet Explorer it looks like

freeplane:/ /C:/Users/Dimitry/Documents/Refactoring catalog.mm#ID_791834704

Part /%20 before /C: is used to find out if it was decoded by Internet Explorer not.

Regards, Dimitry
P.S.
Because handler is registered by the installer we can use separate handlers for freeplane and docear.

> I have not completely thought that through, but on first glance the idea sounds good.
>
> However, the question is if we want to have two schemas like freeplane:/// and docear:/// or
> something more general that could be used by both Freeplane and Docear (e.g. mm:///)

Loading...