ikiwiki/doc/todo/plugin.mdwn

30 lines
2.0 KiB
Plaintext
Raw Normal View History

2006-05-03 23:58:17 +02:00
Suggestions of ideas for plugins:
2006-05-01 22:51:48 +02:00
2006-05-03 23:58:17 +02:00
* list of registered users
2006-05-01 22:51:48 +02:00
* a [[todo/link_map]]
* [[todo/sigs]] ?
2006-05-01 22:51:48 +02:00
* [[pageindexes]]
2006-05-03 23:58:17 +02:00
* Wiki stats, such as total number of links, most linked to pages
2006-05-01 23:26:43 +02:00
* Support [[RecentChanges]] as a regular page containing a plugin that updates each time there is a change, and statically builds the recent changes list. (Would this be too expensive/inflexible? There might be other ways to do it as a plugin, like making all links to RecentChanges link to the cgi and have the cgi render it on demand.)
* Support for smileys or other symbols. I appreciate the support for check
2006-05-03 23:58:17 +02:00
marks, etc in other wikis. Needs some free smiley files.
* For PlaceWiki I want to be able to do some custom plugins, including one
that links together subpages about the same place created by different
users. This seems to call for a plugin that applies to every page w/o any
specific marker being used, and pre-or-post-processes the full page
content. It also needs to update pages when related pages are added,
so it needs to register dependencies pre-emptively between pages,
or something. It's possible that this is a special case of backlinks and
is best implemented by making backlinks a plugin somehow. --[[Joey]]
2006-05-01 23:07:08 +02:00
## case study: Moin Moin plugins
See <http://moinmoin.wikiwikiweb.de/MoinDev/PluginConcept>
6 different types of plugins:
* *actions* are possibly out of scope for ikiwiki, this is probably what it uses for cgi script type stuff. Unless ikiwiki wants to allow pluggable CGI script stuff, it doesn't need these.
* *parsers* and *formatters* are basically what I've been calling [[PluggableRenderers]]. MoinMoin separates these, so that a page is parsed to (presumbly) some intermediate form before being output as html or some other form. That's a nice separation, but what to do about things like markdown that are both a parser and a formatter?
* *macros* and *processors* are analagous to preprocessor directives. A processor can operate on a large block of text though.
* *themes* should be irrellevant (ikiwiki has [[templates]]).