#93 Support for arbitrary URIs


The patch implements a small change when clicking on a hyperlink.
Mindmanager only supported URLs (http, file, etc.) and file paths, while browsers and OSes can be expanded to support further protocols.
A frequent request is e.g. to support hyperlinks to Lotus Notes via the notes://... protocol.
With the change mindmanager now supports arbitrary URIs, i.e. any protocol which is offered by the OS is now also available within mindmanager.
The same mechanism can be used to pass parameters to tools (also an existing request), since the URI is passed to the protocol handler and can contain parameter information like known from web pages (e.g. myprot://arg1?arg2?arg3 or alike. The protocol handler can parse the string arg1?arg2?arg3)


  • isobot

    isobot - 2008-02-09

    Logged In: YES
    Originator: YES

    Note: in the above text mindmanager is erroneously stated instead of freemind.

  • isobot

    isobot - 2008-02-16

    Logged In: YES
    Originator: YES

    File Added: URI-beta15-patch.txt

  • isobot

    isobot - 2008-02-16


  • isobot

    isobot - 2008-03-01
    • assigned_to: nobody --> christianfoltin
  • John Taylor

    John Taylor - 2008-12-20

    This patch fails against Beta 20 with "\freemind\freemind\main\Tools.java uses or overrides a deprecated API." - is htere any chance that someone can fix it please?

  • John Taylor

    John Taylor - 2008-12-20

    This patch fails against Beta 20 with "\freemind\freemind\main\Tools.java uses or overrides a deprecated API." - is htere any chance that someone can fix it please?

  • isobot

    isobot - 2008-12-23

    after updating a plain beta18 version to RC01, I've had these weird
    "deprecated API" errors, too. After getting a completely new RC01 from
    scratch the problems were gone.

    I made some modifications to the patch to match with RC01. Actually the
    only part which made problems was ControllerAdapter.java, since the beta15
    patch included lots of white space updates which conflicted with RC01.
    I took care that the new patch really only changes the relevant parts.
    File Added: 05 URI-RC01-patch.txt

  • isobot

    isobot - 2008-12-23


  • Thierry

    Thierry - 2009-02-09

    I try the 0.9.0 RC2 and Lotus Notes URL are still not working.
    Is the patch OK for this version, and what is the way to apply it ?

  • Mike M

    Mike M - 2009-10-23

    Can anyone provide help about how to apply this patch? I've spent a fair amount of time looking, but can't figure it out. Not asking for step-by-step instructions, but any leads to where to learn how would be much appreciated.

  • Anonymous - 2010-10-05

    Can someone please provide instructions how to apply this patch?
    (As already requested by @mmveets)

    I am using Freemind 0.9.0 RC 7 on Mac OS X 10.5.7.

    What I did so far:

    1) I looked at the patch files. They seems to list all differences (additions/removals of lines) in certain files (referred to by the line prefix "Index:").

    2) I browsed into my application bunde (Freemind.app):
    But the relative filepaths mentioned in the patches are not even there!

    Help please! Thanks!

    P.S.: When will the support for arbitrary URL schemes get integrated into the main code branch?

  • Marcello

    Marcello - 2011-11-06

    Hello FreeMind Community,

    I am using FreeMind 0.9.0 RC 15, and it seems to me that this patch is not applied yet.
    When I insert a reference like: onenote:///C:\Documents%20and%20Settings\M9803562\My%20Documents\OneNote%20Notebooks\Personal\General.one#section-id={A657BD8D-FA61-47EA-ACA7-2DE4B1E0CD69}&end
    I still get the error: java.net.malformedURLException unknown protocol

    However, when I export my map as HTML Flash, it works nice using my IE Browser.

    Anyway, it would be very handy for me if there is a support for arbitrary URL within FreeMind map editor.
    I have already searched everywhere, and saw that there is a patch for that (), but as most of other people, I have no clue on how to apply this patch.

    There is a comment added by DanielPolansky in 2009 that provides a couple of links for this protocol issue, but even looking at those, I could not figure out how to solve this problem. http://sourceforge.net/tracker/index.php?func=detail&aid=2306014&group_id=7118&atid=107118

    Any help will be greatly appreciated.
    Thank you,

  • Marcello

    Marcello - 2011-11-11

    Hello FreeMind Community,

    After lots of research, I finally found a nice solution for the OneNote URL Protocol within FreeMind, which I want to share with you all.
    My last comment at this topic explains my issue.

    The “OnenoteSupport4Freemind” is explained in 2 steps at: http://code.google.com/p/onenote4freemind/wiki/OnenoteSupport4Freemind
    Thanks a lot for the person who posted it.


  • Dobbert

    Dobbert - 2012-02-02


    I have the repair patch. It must be replaced with a line "+ @ Override" to "+ / / @ Override". The patch file can be inserted with Linux. Calling patch-p0 <05_URI-RC01-patch.txt the main source tree were recorded in four Java source files. The process ensures the originals with the file extension. Orig. If you do not have the source code with Linux you can "FreeMind ..- src - .zip" itself also a Windows version compiling. Paste this folder in Eclipse and make the changes from the patch. + Added new means and - delete. There are always a few unimportant lines of code and then dafor present in the txt file. The @ @ symbol shows comments from programmers. About Index you will find the *. java files.

    A lot of fun.



    ich habe den patch repariert. Es muss bei einer Zeile "+ @Override" gegen "+ //@Override" ausgetauscht werden. Die Patch Datei kann mit Linux eingefügt werden. Durch den Aufruf patch -p0 < 05_URI-RC01-patch.txt im Hauptquellcodeverzeichnis wurden an vier Java-Quellcode-Dateien eingespielt. Der Prozess sichert die Originale mit der Dateiendung .orig. Wenn man kein Linux hat kann man mit den Quellcode "freemind..-src--.zip" auch sich selbst eine Windows version Compilieren. Dafür den Ordner in Eclipse einfügen und die Änderungen vom Patch durchführen. + bedeutet neu hinzugekommen und - löschen. Es sind immer ein paar unwichtige Code Zeilen dafor und danach in der Txt Datei vorhanden. Das @@ Symbol zeigt kommentare von Programmierer. Über Index findet ihr die *.java Dateien.

    Viele Spass.

  • Anonymous - 2012-02-03

    @homerwasser87: I was finally able to compile FreeMind with the URI patch!!! :-)

    Note: homerwasser87 's suggestion "+ / / @ Override" did not work, as the forward slashes separated with a space character "/ /" are then not recognized as the comment syntax, but rather as 2 literal forward slashes, and thus patching works, but compiling then fails. Maybe SourceForge truncated some whitespaces from homerwasser87 's comment. Search for "@Override" in the patch file, there is only 1 occurrence, and change this to "// @Override".

    This is how I did it:
    1) In the file 05_URI-RC01-patch.txt I changed "@Override" to "// @Override".
    2) I downloaded the source code of version 0.9.0_RC_15
    3) I ran:
    cd path/to/freemind-src-0.9.0_RC_15
    patch -p0 < path/to/05_URI-RC01-patch.txt # patched successfully
    ant dist # compiled successfully, created the executables in ../bin/

  • Anonymous - 2012-02-03

    Please add support for arbitrary URL schemes into the main code branch!

    It's a desire-able feature/option!

  • Christian Foltin

    Hi Stefan,

    can you please send me a patch for the current git repository origin.

    TIA, Chris

  • Anonymous - 2012-02-05

    @christianfoltin : No sorry. With FreeMind, I'm only a user, not a developer. I was already proud to be able to patch 0.9.0 RC 15 with 05_URI-RC01-patch.txt (commented @Override). Would be glad if I knew myself how to apply that change for the newest versions.

    @developers: Again: Please include the arbitrary URL feature/option to the main version!


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks