[Wikireader] Quick intro re: offline viewing/editing
Bjoern Hassler
bjoern at caret.cam.ac.uk
Wed Jul 8 21:38:03 EDT 2009
Hi Ángel, hi Samuel,
>>> Another
>>> question is why isn't wiki editing more like svn? If your commit
>>> doesn't
>>> conflict, then it should be accepted. If there are conflicts, you
>>> need to
>>> resolve conflicts.
>>>
> MediaWiki tries to do that. On which scenarios does it fail?
I suppose it's more the fact that mediawiki does this silently: If it
can merge, you don't know it has merged, and if it cannot merge,
resolving the diff isn't convenient. (Unless I am missing something.)
> svn isn't the best comparision for the model you're advocating. svn is
> centralised. You'd want a
> distributed VCS.
I think ultimately one might want a distributed VCS. However, I was
thinking of a more pragmatic solution, where you have several client
wikis with a central wiki. Essentially the idea is to make a minimal
addition to mediawiki to enable some sort of synchronising
functionality.
I guess I would argue this as follows: There's a lot of content in
mediawiki already, and many people are familiar with mediawiki, so I'd
like to see a solution for mediawiki. I would like to have something
that ideally is part of the mediawiki core. Here are a few concrete
ideas:
1. The most basic solution (notwithstanding Samuel's earlier comments)
would be one way (similar to what you can already do with the OAI
extension), but very easy to enable.
In LocalSettings.php, one would say:
$wgWikiSource = "http://wikisource/api.php";
$wgWikiMirrorType = "LatestRev | AllRevs";
$wgWikiMirrorEditable = "no";
and specify something about frequency of updating. In any case,
calling "Special:Update" would do a complete update, and edit links on
pages are changed to point to "http://wikisource/index.php".
Programatically it's not exciting :-), but it would be useful, and a
concrete first step. And there'd be a fair amount of work required to
get it properly integrated into the mediawiki software.
2. A second, more exciting, step would then be to think about two-way
synchronisation, and some (options for) resolution of conflicts (which
is where Samuel's comments come in). In LocalSettings.php, one would
say:
$wgWikiSource = "http://wikisource/api.php";
$wgWikiMirrorEditable = "yes";
$wgWikiMirrorConflicts = " ... ";
where the last option specified how conflicts are handled: Basic, low
impact, branch etc (c.f. Samuel's and Ángel's posts), and perhaps a
bunch of other options too.
Overall, I'd like to have something where the actual functionality
could be quite basic, but it would have to be
* in mediawiki trunk, and would be very easy to enable,
* would need to be robust,
* be careful of bandwidth consumption, and
* handle uploaded files.
The mediawiki OAI extension goes a fair bit towards this, but it's not
in mediawiki trunk, and certainly not easy to install. So it would be
nice to find some people to do a concrete project in this area, that
puts the issues on the agenda, and starts addressing them. So, if
there are people wanting to do something with mediawiki, I'd be keen
to start some discussion around this. (Do recommend other mailing
lists as well, if this should be discussed elsewhere too.)
More generally, it would be useful to pull together some of the ideas
in this area, to see what's available. So (if appropriate on this
list) do post further links and suggestions, and I'll compile them.
Thanks for discussing, and all the best,
Bjoern
More information about the Wikireader
mailing list