[dokuwiki] new include plugin - call for testers
- From: Michael Klier <chi@xxxxxxxxxxx>
- To: dokuwiki@xxxxxxxxxxxxx
- Date: Mon, 23 Mar 2009 23:14:17 +0100
Hi everyone,
over the past 3 weeks I made an attempt of completely rewriting the include
plugin [1] from scratch. The reasons are as follows:
In the past the plugin did a lot of guesswork to determine/convert the
sections/headers of included pages. This was error prone to no end. The TOC
didn't work 100% and the ODT export wasn't really working as advertised etc.
pp.
The new include plugin now works completely on instruction level. This has a
lot of advantages:
1. The instructions of included pages get directly added to the
instructions of the top the level page which "triggerd" a inclusion.
This
works for nested includes as well. The end result is a instructions
array which contains all converted instructions of all included pages.
2. Due to 1. The include plugin now doesn't need a separate ODT renderer
plugin. The ODT plugin works out of the box now :D.
3. The section/header conversion got smarter. The old include plugin
online converted the headers/section "down". Now if you include a page
of which the first headline is a level3 headline below a level1
headline,
all headlines/sections of the included page are convertet "up" too. This
has the advantage that you can include a page in different indented
sections on different pages and it will always look "fine".
Now here's the deal: I'm not able to test the plugin in all possible ways.
But, because this plugin is widely used I would like to make sure it works
100% before doing a final release. So, if you're using the include plugin for
more than just inserting a page into another, but with heavily nested includes
etc. it would be great if you could setup a little test Wiki and give it a
shot with your example data and report back if sth. doesn't work as you
expect. I'm especially interested in the performance when a lot of big pages
are included with nested inclusion.
IMPORTANT: Some things don't work yet (but I plan to fix them in the upcoming
days):
1. the &noheader option doesn't work yet
2. I haven't really tested the Macro feature (but it should work ;))
3. since the plugin is working on instruction level it needs to strip
out
plugin instructions which are unwanted when a page is included (i.e.
tags,
discussion, linkbacks etc.). Let me know if there are other plugins for
which this would be desireable.
4. WARNING: The blog plugin is not (yet) compatible with this version of
the include plugin and will be 100% broken. First things first, if the
include plugin works I'll fix the blog plugin accordingly.
Attached is a devel snapshot of the plugin. You can also checkout a darcs
version from our darcs repository [2].
Thanks in advacne to everyone who's planning to help in advance! In the end we
all benefit from your efforts ;).
Regards,
Michael
[1] http://dokuwiki.org/plugin:include
[2] http://dev.chimeric.de/darcs/dokuwiki/plugins/include
--
Michael Klier
www: http://www.chimeric.de
jabber: chi@xxxxxxxxxxxxxxxxxx
key: http://downloads.chimeric.de/chi.asc
key-id: 0x8308F551
Other related posts: