On Wed, Aug 01, 2007 at 10:36:49PM +0800, Ping Yeh wrote:
Yes I'm working on a wiki "engine" with
replaceable parts. The
replaceable parts include parser (wiki text -> document tree in
memory), formatter (document tree -> output text), storage system,
authenticator, authorizer, and search engine. User interface is not
in it, but rather the whole engine is driven by a UI to be supplied by
the developer.
You can think of this "engine" as a "wiki library" that have
pre-defined interfaces to replaceable parts. So, with an html
formatter and a mediawiki parser (a draft version already exist), it
can already show HTML for mediawiki contents. Furthermore, if parsers
and formatters of markup A and B are available, we can freely convert
wiki contents from A to B and vice versa. The "intermediate" thing is
actually the document tree in memory.
The whole thing is written in C++. With help from wrapper generators
like SWIG, it is possible to be called by many scripting languages
supported by SWIG (PHP, Python, Ruby, Tcl, Lua, Java, C#, to name a
few). I haven't got around to doing this just yet, but I did similar
work with other systems before so this should be doable.
Oooooh! Phase 4!
:-)
Cheers,
-- jr 'will rouse rabble for food' a
--
Jay R. Ashworth Baylink jra(a)baylink.com
Designer The Things I Think RFC 2100
Ashworth & Associates
http://baylink.pitas.com '87 e24
St Petersburg FL USA
http://photo.imageinc.us +1 727 647 1274