>
= FreeMindBrowser =
Wiki and mind-mapping are 2 great concepts that can be perfectly combined.
Get this macro to share your mindmaps with the users of your MoinMoin.
Read [[#aboutfreemind|About FreeMind]] to get a first impression of FreeMind and to find some good links to more detailed information.
== DESCRIPTION ==
This macro inserts the FreeMindBrowser applet into your page.
The applet tag will only be inserted, if the Formatter is an html formatter.<
> Otherwise, a normal link to the mindmap file is generated.
If you donot know about FreeMind yet, have a look at [[#aboutfreemind|About FreeMind]].
== USAGE ==
{{{
<>
}}}
'''mindmapUrl:''' url to the mindmap to be displayed
* 2 schemes are allowed for the url: {{{attachment:}}} and {{{http:}}}.<
>This means, that http-reachable mindmaps as well as MoinMoin attachments can be addressed.
'''width:''' (optional) defines the width of the applet; default: 100%<
> '''height:''' (optional) defines the height of the applet; default: 500<
>
== EXAMPLES ==
{{{
<>
}}}
== PREREQUISITES ==
* MoinMoin :)
* FreeMindBrowser macro ;-)
* Java -- see [[http://freemind.sourceforge.net/wiki/index.php/Main_Page|Main_Page]] for which Java version is suitable and from where to download
* FreeMindBrowser applet (freemindbrowser.jar)
* Stable -- see [[http://sourceforge.net/project/showfiles.php?group_id=7118&package_id=16120|download page (freemind-browser)]]
* OR
* 0.9 beta -- within here http://freemind.sourceforge.net/testversions/freemind-bin-max-0.9.0_Beta_8.zip<
> Colored mind maps and icons are rendered! CarlosBandar <>
== INSTALLATION ==
Please ensure that the prerequisites of above are met.
Install the !FreeMindBrowser !MoinMoin macro like the following:
1. Place `freemindbrowser.jar` (either stable or beta) in the `/usr/share/moin/htdocs/applets/FreeMindBrowser` or `wiki\htdocs\applets\FreeMindBrowser` directory of your !MoinMoin installation.<
>E. g. `C:\Programs\MoinDesktop_1.3.4-2\wiki\htdocs\applets\FreeMindBrowser`. (be careful to put `freemindbrowser.java` inside `applets/FreeMindBrowser`!)
1. You can as well ignore `freemindbrowser.html` - instead you will use the !FreeMindBrowser macro at hand.
1. Rename `FreeMindBrowser_patched.py` to `FreeMindBrowser.py` and place it in the `DATA-DIR/plugin/macro/` directory of your !MoinMoin instance.<
>E. g. `/var/wiki/moin/data/plugin/macro/` or `C:\Programs\MoinDesktop_1.3.4-2\MoinMoin\macro`
----
The installation can be tested like the following:
1. Attach an existing mindmap to your local WikiSandBox page, e.g. freemind.mm.
1. Then add the following macro to your local WikiSandBox page:
{{{
[[FreeMindBrowser(attachment:freemind.mm)]]
}}}
In the rare case, that attachments are not allowed in your MoinMoin installation, alternatively take an http-reachable url to your mindmap.
Try one of the following http-links to mindmaps (CarlosBandar´s note: I think those are not working, just deliver the map but not within the browser applet!:)
* http://maps.pietrosperoni.it/TaoistBooks.mm
* http://www.adictosaltrabajo.com/tutoriales/freemind/rcanales.mm
last one should be:
* http://www.adictosaltrabajo.com/tutoriales/freemind/freemindbrowser.html
== TESTS ==
Successfully tested with the following environment:
* OS: Windows XP
* MoinMoin: MoinMoin - 1.3.4 [patch-723]; DesktopEdition Releases 1.3.4-2 and 1.5.4
* FreeMindBrowser: 0.7.1
* Java: java version "1.5.0_04" and "1.5.0_06"
* Python: 2.4.1 (if not using DesktopEdition!)
----
== Download & Release Notes ==
||Download ||Release Version ||Moin Version ||Release Notes ||
||[[attachment:FreeMindBrowser_patched.py]] || ||1.3 ||!FreeMindBrowser.py has some deficits, take patched version ||
||[[attachment:FreeMindBrowser.py]] || ||1.3 || ||
== MODIFICATION HISTORY ==
@copyright: 2005 by Jürgen Lind (JürgenLind) <
> @license: GNU GPL, see COPYING for details. <
> Version: 1.3.4-1 <
>
Patched version by CarlosBandar, that just applied the patches of PeterPfläging and GuoYong. Tested and working.
<>
= About FreeMind =
FreeMind is a premier free mind-mapping software written in Java. <
> It also provides an applet, called FreeMindBrowser, that is able to visualize and browse FreeMind mindmaps. Editing FreeMind mindmaps, however, is currently not possible with the FreeMindBrowser applet.
'''References:'''
* Find all information around FreeMind at the [[http://freemind.sourceforge.net/wiki/index.php/Main_Page|FreeMind wiki]]
* Get info about the FreeMindBrowser (also called FreeMind applet) at the [[http://freemind.sourceforge.net/wiki/index.php/Asked_Questions#Mind_maps_on_web_pages_with_FreeMind.27s_applet|FreeMind's applet info section]]
* Inform yourself about the discussion of [[http://freemind.sourceforge.net/wiki/index.php/Stuff#FreeMind_combined_with_wiki|FreeMind combined with wiki]]
* Download FreeMindBrowser/FreeMind's applet from the [[http://sourceforge.net/project/showfiles.php?group_id=7118&package_id=16120|download page (freemind-browser)]]
* Download FreeMind from the [[http://sourceforge.net/projects/freemind/|download page]] <
> You will also find the FreeMindBrowser there in the bottom half. So in all probability you have to scroll down a good part to reach the FreeMindBrowser.
* Read the well-written article of Robert J. Alexander about [[http://freemind.sourceforge.net/docs/Serving|Freemind maps in a browser/ Serving mindmaps in a browser]]
= Discussion =
== Small bug in FreeMindBrowser.py ==
If you modify the static pages in {{{wikiconfig.py}}} to not point to {{{/wiki}}}, your in troubles with FreeMindBrowser.py macro. Here's a fix as context diff for FreeMindBrowser.py:
{{{
*** FreeMindBrowser.py.orig Tue Nov 15 21:03:28 2005
--- FreeMindBrowser.py Tue Nov 15 21:06:20 2005
***************
*** 39,45 ****
class FMBMacro:
appletClass = 'freemind.main.FreeMindApplet.class'
- appletArchive= '/wiki/applets/FreeMindBrowser/freemindbrowser.jar'
widthDefault = '100%'
heightDefault= '500'
--- 39,44 ----
***************
*** 55,61 ****
# Check and set, if we have an HTML formatter
self.isHTML = '
\n' == self.macro.formatter.linebreak(0)
! self.appletArchive = self.macro.request.getQualifiedURL( FMBMacro.appletArchive )
self.isFatal = False
self.applet = [] # this is for the applet code
--- 54,61 ----
# Check and set, if we have an HTML formatter
self.isHTML = '
\n' == self.macro.formatter.linebreak(0)
! appletArchive= "%s/applets/FreeMindBrowser/freemindbrowser.jar" % (self.macro.request.cfg.url_prefix)
! self.appletArchive = self.macro.request.getQualifiedURL( appletArchive )
self.isFatal = False
self.applet = [] # this is for the applet code
}}}
Greetings / (I did include in the patched version; CarlosBandar)
* PeterPfläging
== A issue with MoinMoin DesktopEdition 1.5.2-1 ==
self.isHTML will not be set to True because the value of self.macro.formatter.linebreak(0) is not '
\n' but '
\n'. Here's a fix for FreeMindBrowser.py:
{{{
*** FreeMindBrowser.py.orig Sun Jul 2 00:00:01 2006
--- FreeMindBrowser.py Sun Jul 2 00:59:09 2006
***************
*** 55,61 ****
self.args = args
# Check and set, if we have an HTML formatter
! self.isHTML = '
\n' == self.macro.formatter.linebreak(0)
self.appletArchive = self.macro.request.getQualifiedURL( FMBMacro.appletArchive )
--- 55,61 ----
self.args = args
# Check and set, if we have an HTML formatter
! self.isHTML = '
\n' == self.macro.formatter.linebreak(0)
self.appletArchive = self.macro.request.getQualifiedURL( FMBMacro.appletArchive )
}}}
GuoYong
Thanks Guo! So many time waiting for a solution ... / I (CarlosBandar) included it in the patched version.
----
I hacked a version that works with 1.8.2 of moin. I hope it helps someone.
{{{
56c56,57
< appletArchive= "%s/applets/FreeMindBrowser/freemindbrowser.jar" % (self.macro.request.cfg.url_prefix)
---
> # appletArchive= "C:/Python25/share/moin/htdocs/applets/FreeMindBrowser/freemindbrowser.jar"
> appletArchive= "%s/applets/FreeMindBrowser/freemindbrowser.jar" % (self.macro.request.cfg.url_prefix_static)
120,123d120
<
< if self.isHTML:
< self.result = self.macro.formatter.rawHTML( result )
< else:
131d127
< if self.isHTML:
148d143
<
152,154d146
< else:
< self.applet.append( self.macro.formatter.url( 1, self.mindmapUrl ) )
< self.applet.append( self.macro.formatter.url( 0 ) )
}}}
-- AP
Hi again... I got this file working with moin version 1.9.2 too. The changes are similar to the above (1.8.2) hack. Here it is:
{{{
56,59c56,57
< # Following line works with an alias for '/applets' in apache httpd.conf (on windows).
< # appletArchive= "/applets/freemindbrowser.jar"
< appletArchive= "%s/applets/FreeMindBrowser/freemindbrowser.jar" % (self.macro.request.cfg.url_prefix_static)
< self.appletArchive = appletArchive
---
> appletArchive= "%s/applets/FreeMindBrowser/freemindbrowser.jar" % (self.macro.request.cfg.url_prefix)
> self.appletArchive = self.macro.request.getQualifiedURL( appletArchive )
121a120,123
>
> if self.isHTML:
> self.result = self.macro.formatter.rawHTML( result )
> else:
128a131
> if self.isHTML:
144a148
>
147a152,154
> else:
> self.applet.append( self.macro.formatter.url( 1, self.mindmapUrl ) )
> self.applet.append( self.macro.formatter.url( 0 ) )
}}}
Changes since the 1.8.2 version: Got rid of call to 'getQualifiedURL'. It took me a while to figure that out though since I am not familiar with Python.
I have also attached the my version of the file as: [[attachment:FreeMindBrowser_for_1_9_2.py]]. Please rename to FreeMindBrowser.py before use. I have only tested this on windows (2k3). One more thing to note is that now (for Moin ver. 1.9.2) I had to put the FreeMind jar file in the following folder:
{{{
C:\Python26\Lib\site-packages\MoinMoin\web\static\htdocs\applets
}}}
And I also had to remove the moin_static alias in my apache httpd.conf file (If you don't have one -- don't worry about it).
-- AP
== Problems ==
I want to use this Marcro with version 1.83 standalone. I applied the patch, but it does not work. Does anybody use this macro with moinmoin v1.83? In addition to that, the syntax changed to <>. I changed this. RalfMoll
@RalfMoll, I was able to use this macro with version 1.84 on `CentOS` by applying the above patch from AP. I can document in more detail if this would be helpful. BenChapman
In the FreeMind tool one is able to insert links to other .mm files. When I use the .jar browser + this macro in a page of my MoinMoin wiki, none of these links work anymore. Is it possible to link to other .mm files using FreeMindBrowser.jar + this macro? Thanks! JenCarlile