<> = 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