Differences between revisions 1 and 2
Revision 1 as of 2001-01-10 03:28:05
Size: 6032
Editor: anonymous
Revision 2 as of 2008-06-26 09:50:09
Size: 6034
Editor: anonymous
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 6: Line 6:
Contents: [[TableOfContents]] Contents: <<TableOfContents>>
Line 24: Line 24:
   * Steal ideas from [http://www.usemod.com/cgi-bin/mb.pl?action=editprefs MeatBall:Preferences]    * Steal ideas from [[http://www.usemod.com/cgi-bin/mb.pl?action=editprefs|MeatBall:Preferences]]

This is a list of things that are to be implemented. If you miss a feature, have a neat idea or any other suggestion, please put it on MoinMoinIdeas. To discuss the merit of the planned extensions, or new features from MoinMoinIdeas, please use MoinMoinDiscussion. A list of things that are added to the current source in CVS are on MoinMoinDone. MoinMoinRelease describes how to build a release from the SourceForge repository.



Things to do in the near future:

  • Spellchecker:
    • add a nice progress page, while the dictionary cache is built
    • add a means to build the dict.cache file from the command line
  • Macro that lists all users that have an email address; a click on the user name sends the re-login URL to that email (and not more than once a day).
  • Send a timestamp with the EditPage link, and then compare to the current timestamp; warn the user if page was edited since displaying.

  • Now that we can identify certain authors (those who have set a user profile), we can avoid to create a backup copy if one author makes several changes; we have to remember who made the last save of a page, though.
  • Implement the update script (copying new images etc.) described elsewhere on this page or MoinMoinIdeas.

    • By default, enable an as-if mode that shows what needs to be fixed.
    • Replace SystemPages by using the normal "save page" code, thus creating a backup copy of the page that was in the system. Only replace when diff shows the page needs updating.

  • UserPreferences

    • Send a regular "changes" mail? (checkbox, plus frequency setting hourly/daily/weekly/etc.)
    • Other things like color, icons, menu?
    • On request, send email containing an URL to send the cookie
    • Steal ideas from MeatBall:Preferences

    • a CSS switch (needs more work on the formatter issue to really work)
    • configurable fonts, font sizes etc. (copy master CSS file to a user one, and send that)
  • MoinMoinRefactoring

    • create a dir per page in the "backup" dir; provide an upgrade.py script to adapt existing wikis
      • or go all the way, and store pages as data/pages/<firstletter>/<pagename>/(current|meta|...|<timestamp>)

  • Add backlink patch by Thomas Thurman
    • Page info: links to / from page.
  • Add a link to EditThePageSimultaneously (or a link to a local copy) to the edit conflict message.

  • SiteMap: find the hotspots and create a hierarchical list of all pages (again, faster with caching)

  • ProcessingInstructions

  • Remember when someone starts to edit a page, and warn when someone else opens the same page for editing
  • macro for the server time/date (pass the strftime string as an optional argument)
  • Using the new zipfile module, add a download of all pages
  • Some of IndexingScheme as macros

  • Diffs:
    • Lynx-friendliness (keep >>> === <<< ?)

    • look at cvsweb code (color-coded, side-by-side comparisons)
    • or look at viewcvs www.lyra.org/viewcvs (a nicer python version of cvsweb with bonsai like features)
    • diff -y gives side by side comparisons
  • Create MoinMoinI18n master sets (english help pages are done, see HelpIndex, translations are welcome)

  • Document the config options (possibly after the refactoring)

  • Check generated HTML code for conformity


See MoinMoinBugs


  • Script or macro to allow the creation of new wikis ==> WikiFarm

  • Setup tool (cmd line or cgi): fetch/update from master set of system pages, create a new wiki from the master tarball, delete pages, ...
  • Support URNs, see http://www.ietf.org/internet-drafts/draft-daigle-uri-std-00.txt and http://www.ietf.org/internet-drafts/draft-hakala-isbn-00.txt

  • Add ISBN links
    • IsbnInfo page and ISBN macro

    • pattern d{3}-d{8}-d{8}-[0-9xX]
    • calculate checksum
    • Link icon to IsbnInfo page, and the ISBN number itself to the main URL

  • Support for -- (‐ ?), << and >> (french quotes) and possibly any (Latin-1) SGML entity.

  • A RegisterInterest macro

  • Add display of config params (lower/uppercase letterns) to the SystemInfo macro.

  • Add a "news item" macro (edit page shows a special form)
  • Implement http://sunir.org/apps/visits.pl

  • Make a sitemap using GraphViz

  • System Info: number edits, views, whatever.
  • Add hidden field to editor, for two purposes:
    • recognize saves from the same author
    • prevent direct saves from outside (i.e. simple attacks), that did not load and parse the edittext page before saving
    • needs a way to save meta-info for a page
  • Add change counter to RecentChanges

  • Add PyUnit tests

  • WikiName|s instead of the obsessive WikiName' ' ' ' ' 's (or use " " for escaping)

  • Backslash escapes?
  • Support &uuml; SgmlEntities

  • Configuration outside the script proper (config file instead of moin_config.py)

  • When a save is in conflict with another update, use the rcs/cvs merge process to create the new page, so the conflicts can be refactored. Warn the user of this!
  • Write timings to a log file (cgi_log) when configured accordingly, so we can check for necessary optimizations.
  • WikiWordStatistics (or just add counters to the WordIndex?)

  • Document all MoinMoinUrlSchemes (i.e. action=whatever)

  • Make a ZopeMoinMoin product, to compete with ZWiki product.

    • I'll certainly not have the time to climb the Zope learning curve in the near future. The new source structure would allow to simply add a zopemain.py companion to cgimain.py. Volunteers?


The following actions are needed:

  • On request, send email containing an URL to send the cookie (i.e. login from a click into the email)
  • Add password handling?

Preference settings:

  • Use text links instead of images on RecentChanges

  • Checkbox: Send daily "changes" mail?
  • Other things like color, icons, menu?

MoinMoinTodo (last edited 2008-06-26 09:50:09 by anonymous)