Ian Bicking: the old part of his blog

New Wiki

I spent most of the weekend working on the new wiki for Webware (http://wiki.w4py.org), which is going along with the new website (http://webwareforpython.org , or w4py.org for short). The front page design itself is still in the works, and the wiki content is still a rough translation from its former home.

You can read about the wiki itself on the This Wiki page. Key features:

I'm excited about the possibility of making the wiki the canonical location for all the Webware documentation. Much of the stuff that's already in reST form can be easily imported, and we can export the content easily as well.

Created 11 Apr '04
Modified 14 Dec '04


Ian, I like this a *lot*. However ReST on its own is YAWML, so you might want to make a couple of modifications to it. Certainly more casual visitors to the wiki will probably appreciate being able to input both WikiNames and [[Bracketed Wiki Names]]. You could alwyas pre-process them into ReST before passing it on to the parser, and store the ReST form.

I've added a sandbox, linked to from the "This Wiki" page.

One thing I've found quite useful on some of the newer wikis that I've come across is a checkbox that allows the authors to state "this is a minor change". This allows people to come in and correct typos and whatnot without it triggering a new entry on RecentChanges which will be undetectable to the naked eye, and rather a downer when viewing the subsequent diff. It would still appear on the page history.

Other possible changes:

Viewing a diff might be nice.

Having a link to "view current version" on the bottom when viewing a history entry

Writing some docs on how to include an image would be nice.

I'll see if I can have a look at doing these in my Copious Free Time this evening...
# Moof

Cool stuff. Could you provide a hourly checkout or something like this? Not everybody is already using Subversion (and Subversion under Jaguar is no fun), so it would be nice to just pull down some .tar.gz ...
# Georg Bauer

Moof: I'm not a huge fan of the reST linking (i.e., `words here`_), but I'd rather keep it consistent. And I dislike implicit links like WikiName, especially since the code refers to a lot of class names, all of which look like wiki names, and it gets distracting.

For minor changes, I'm not sure -- MoinMoin has this, but all changes show up in the RSS regardless. Part of this is to allow monitoring for abuse. It would be possible to have two RSS feeds, perhaps, one that was thorough and another that wasn't.

A diff is planned. Maybe when a log message is missing it could even go in the RSS (or at least some abbreviated form).

There is a link to current version implicit, in that "View" always shows the current version. Maybe it should be named differently when you're on a historical page, though.

I'm not sure how to document reST -- repeating the reST documentation seems like a bad idea, but a really-quick introduction might be good. But maybe that should be part of reST too.

Georg: while it's not hourly, I made a checkout to my home directory: http://www.webwareforpython.org/~ianb/w4py.org/Wiki/

At some point we should put up a better code browser on the site, since the code is the whole point of the site. But that should give you something to look at for now.
# Ian Bicking

Very cool. A couple of suggestions, though...

If you save the unconverted HTML in the .html files, (but with relative links to other Wiki pages as e.g. "./SomePage.html") they could actually be served statically as pure documentation. So, if the "cache" were visible directly via a webserver, you'd actually see static doc pages. But, when displayed in the Wiki, you'd have the Wiki wrapper content around the page, including edit links, etc., as long as you stripped off the '.html' in the URLs.

In other words, if you move the '_cleanHTML()' call so it occurs on data retrieved from the cache, rather than on data being put in the cache, this should work. (If you want it to go faster, you might also try using html.rfind(".)
# Phillip J. Eby

Phillip: that would still leave dangling links, which are good form for a wiki, but obviously very bad form for a static site. Plus the .html files aren't fully formed -- we strip them down to a fragment, and some information (at this point just the title) is kept separately. (Though it could conceivably be merged back in)

What's required is really an alternate template-driven publishing system that is triggered whenever a page is changed *or* when a page it links to is created or deleted. Which actually wouldn't be that much harder to do, and the result would be much more useful.

(I noticed that Zope 3 is putting .html extensions back on URLs, which I actually kind of like even if it's "bad" in theory -- it might also be nice if the wiki did the same thing, thus making the static and Webware URLs equivalent)
# Ian Bicking