online page editing
- Missing support for preview.
- Missing conflict detection, just overwrites changes and does not svn up
first..
- Eventually, might want page deletion.
- Eventually, might want file upload.
recentchanges
-
Should support RSS for notification of new and changed pages.
This can be a static rss file that is generated when the moo
is built. (As long as all changes to all pages is ok.)
-
Should support mail notification of new and changed pages.
Hmm, should be easy to implement this.. it runs as a svn post-coommit hook
already, so just look at the userdb, svnlook at what's changed, and send
mails to people who have subscribed.
docs
Need to turn [[usage]] into a man page.
this wiki too. Can markdown generate a man page somehow?
pluggable renderers
I'm considering a configurable rendering pipeline for each supported
filename extension. So for ".mdwn" files, it would send the content through
linkify, markdown, and finalize, while for ".wiki" files it might send it
through just a wiki formatter and finalize.
This would allow not only supporting more types of markup, but changing
what style of [[WikiLink]]s are supported, maybe some people want to add
[[CamelCase]] for example, or don't like the [[SubPage/LinkingRules]].
The finalize step is where the page gets all the pretty junk around the
edges, so that clearly needs to be pluggable too.
There also needs to be a step before finalize, where stuff like lists of pages
that linked back to it could be added to the page. However, doing linkbacks
also needs to tie into the main logic, to determine what pages need to be
renered, so maybe that won't be a plugin.
revisit case
Being case insensative is handy, but it does make the [[BackLinks]] a bit
ugly compared to other links. It should be possible to support pagenames
that have uppercase, while still allowing them to be linked to using any
case.
html
Make the html valid. Add css.
sigs
Need a way to sign name in page that's easier to type than "--[[Joey]]"
and that includes the date.
What syntax do other wikis use for this? I'm considering "[[--]]" (with
spaces removed) as it has a nice nmemonic.
OTOH, adding additional syntax for this would be counter to one of the
design goals for ikiwiki: keeping as much markup as possible out of the
wiki and not adding nonstandard markup. And it's not significantly hard to
type "--[[Joey]]", and as to the date, we do have page history.
recentchanges links to commit diffs
Would take a bit more viewcvs integration, let the be a "[diff]" link in
recentchanges that goes to the diff for any listed change.
recentchanges more than 100
Possibly add "next 100" link to it, but OTOH, you can just use svn log if
you need that data..
setup classes
The setup files should "use WikiWiki::Setup" and the like at the top, and
indeed could just be one big use that passes all params to the module's
importer. The module then handles running ikiwiki functions. This would
allow for different types of setup files for more than just the one
hardcoded thing there is now, and would probably be good for upgrades,
incompatible changes, etc, too.
base wiki
Need a toned down version of this wiki with a basic frontpage, sandbox and
docs to use as a seed for new wikis.
search
- full text (use third-party tools?)
- list of all missing pages
- list of all pages or some kind of page map
[[Bugs]]