Contents
FreemindSitemap
Description
Generates a visual sitemap of your wiki. The sitemap will be shown as a clickable mind map.
The macro uses the FreemindSitemap action and the Freemind Flash browser.
See also this feature request.
Examples
Look at the live demo. The page is in german but nevertheless don't hesitate to play around with the sitemap viewer.
This is a screenshot of the macro in action. Please ignore the strange page names. I was just experimenting a little bit around
News
2009-11-01:
Known Bug: The http header must be sent int the action before the freemind format sitemap is sent. Else the extension creates errors. I will post the necessary changes soon.
2009-10-20:
I added a modified version of the FreemindFlashBrowser which supports now utf-8 encoded urls. I posted my changes on the official support forum of this project. If you can't wait for the official release of the next FreemindFlashBrowser, you can try my version here. Simply copy the swf file into your htdocs/applets/freemindflashbrowser. The source code for the flash applet is here. You should use the ide "FlashDevelop" for compiling the source. It's great stuff and you don't have to use Adobe Flash for that.
2009-10-13: Version 0.2
removed strange file cache. FreemindFlashbrowser now gets its data through an read access to the action FreemindSitemap
the action FreemindSitemap is now together with the macro FreemindSitemap zipped into a package
- One macro now works with Moin version 1.8 and version 1.9
- PEP8 errors fixed
- only pages are listed, where the current user has read access to
Issues:
- links don't work with unicode characters in Internet Explorer. They have to be converted to unicode in the flash applet. I wrote a patch for that and proposed it on the official homepage of the freemind flash browser. If you are in an urgent need for it: call me.
2009-09-30:
FreemindSitemap now works with version 1.8 and version 1.9
each page node in the mind map now has a link to its wiki page
To do: The Freemind Flash browser requires a html link to the mm file we create with the action FreemindSitemap. Therefore I create some kind of temporary file with a unique hash name in the cache directory under the folder "freemindflashbrowser" in your "htdocs" folder. Old temporary files should be automatically deleted from time to time. I have to program some time diff code for that before.
Download & Release Notes
Download and install the Freemind Flash browser before.
Download |
Release Version |
Moin Version |
Release Notes |
0.3 |
1.8, 1.9 |
Works together only with my modified version of the FreemindFlashBrowser. Supports unicode encoded urls links. |
|
0.2 |
1.8, 1.9 |
|
Install
- download the Freemindsitemap tar.gz file and extract the contents to your plugin directory (action and macro)
In the applets folder in your htdocs static folder (e.g. /htdocs/applets) create the folder:
"freemindflashbrowser" (url is e.g.: "/htdocs/applets/freemindflashbrowser")download the freemind flash browser from http://freemind.sourceforge.net/wiki/index.php/Flash_browser (50kB zip file)
unzip all files in this packages into the folder "freemindflashbrowser"
set this configuration variables in your wikiconfig.py
(please adjust the pathes like they are on your system !!!)
freemind_flash_browser_url = '/moin_static190/applets/freemindflashbrowser' freemind_css_url = '/moin_static190/applets/freemindflashbrowser/flashfreemind.css'
Adust the xxx in /moin_staticxxx to your version of MoinMoin. E.g.: /moin_static185 for MoinMoin version 1.8.5
enable embedding of swf files in your wikiconfig.py
mimetypes_embed = ['application/x-shockwave-flash', ..., ]
Usage
Add this macro on your wiki page
<<FreemindSitemap()>>
- If you want to adjust the width and height of the flash application try this:
<<FreemindSitemap(width)>>
<<FreemindSitemap(width,height)>>
Discussion
I have tested this macro on MoinMoin1.8.3 (WinXP). It works fine, except that links to pages become incorrect when the macro is placed in a subpage. -- TakeoKatsuki 2009-10-12 12:34:59
I also have this error. Will provide a patch soon JosefMeier
MoinMoin_184 with_Config: Apache/2.2.13 (Win32) mod_ssl/2.2.13 OpenSSL/0.9.8k mod_wsgi/2.3 Python/2.5.2
I have tested this feature yesterday with my wiki. Macro is working fine. Its looking good. what i am thinking now. Maybe it will be good if we can see pages under related category (same like sub pages),Then we can take a look of real structure.It is just an idea. What do you think?
Example:
Amd:01-10-2009
Could you give us some more real live example, please? I fear, I didn't got It yet. JosefMeier
Real Example
I have explained the idea in the following diagram. I have manually pasted the light yellow box(tree). I think, it will be good to know that which pages belong to which categories.
we are getting all pages and categories on same level of root with the help of FreeSitemap at the moment.
you can see in my example (Ligt yellow Box) that i have one category named "CatToolbox" and maybe this category has lot of pages and these pages maybe appear in the front of "CatToolbox" (as in yellow box).
Maybe we can try to achieve the pages for categories same like subpages and HelpOnInfowiki tree (dark yellow boxes).
I think that now you will get my idea. If not then please inform me, then i will explain it in more detail.
The diagram is really big. you can delete it (if you want) because i want to resize it but i forgot. Now i can not delete this attachment.
Amd:12-11-2009
- does not work with 1.9 with the following error:
WARNING 2009-12-13 12:33:47,216 MoinMoin.log:111 /var/www/pim/data/plugin/macro/FreemindSitemap.py:61: DeprecationWarning: the md5 module is deprecated; use hashlib instead ERROR 2009-12-13 12:33:47,217 MoinMoin.macro:131 Macro FreemindSitemap (page: 'MetaMoin') raised an exception: Traceback (most recent call last): File "/usr/local/lib/python2.6/dist-packages/MoinMoin/macro/__init__.py", line 121, in execute return execute(self, args) File "/var/www/pim/data/plugin/macro/FreemindSitemap.py", line 294, in execute return fmb.execute() File "/var/www/pim/data/plugin/macro/FreemindSitemap.py", line 106, in execute self.getFreemindSitemap() File "/var/www/pim/data/plugin/macro/FreemindSitemap.py", line 116, in getFreemindSitemap freemindSitemap = action.getHandler(self.request.cfg, 'FreemindSitemap', 'getSiteMapFreemind') File "/usr/local/lib/python2.6/dist-packages/MoinMoin/action/__init__.py", line 328, in getHandler cfg = request.cfg AttributeError: 'LocalConfig' object has no attribute 'cfg' INFO 2009-12-13 12:34:30,257 MoinMoin.log:126 using logging configuration read from "/var/www/pim/logfile" INFO 2009-12-13 12:34:30,772 MoinMoin.config.multiconfig:127 using wiki config: /var/www/pim/wikiconfig.pyc
I know this error. It happened on early alpha versions of version 1.9. Which version of the freemind sitemap did you use?JosefMeier
- I was using 1.2 --- now it works with 1.3 --- thanks, Laurent
I'm glad to hear that. Thanks for the info. JosefMeier
Feature Requests
I would like to have the following additional parameters:
- rootpage = give the possibility to use an individual root page and show only some part of the whole wiki as the sitemap (specially needed if you have a wiki with thousands of pages)
- filters = use to search / filter some pages (for example to exclude category pages, templates, etcetera)
- modes = subpages (default), category (use the connections from category structure to build a sitemap and not the pages/subpages). Because some people use more categories to order the wiki and do not count on page hierarchy stuff.