[Welcome to Sensei's Library!]

StartingPoints
ReferenceSection
About


Languages
Français Français

Paths
HowPathsWork

Referenced by
WikiWikiWeb
CoffeeMachine
UnderstandingWiki...
VirtualKoThreat
Utilities
EncyGoPedie
WikiNews
Cryptonomicon
SLHistory
OnTheFlyDiagram

 

GoWiki
    Keywords: SL description

GoWiki is the 'engine' underlying Sensei's Library which presents the pages and diagrams based on a pure text version stored in a database.

GoWiki is a collection of [ext] PHP scripts which interface with a [ext] mySQL database, custom made for Sensei's Library.

GoWiki is based on [ext] PhpWiki which can be found at Sourceforge.


The PHP source for the diagram image creating routine (i.e. conversion of the SL text format for diagrams into PNG files) is available separately and published under the GNU General Public License.

Download sltxt2png (and rename to sltxt2png.php)

The file has demo code included. Just copy it to your webserver, and call it. You should see a diagram with a well-known position. You need to have GD support enabled in PHP. You can check this by calling phpinfo() and looking for a section titled "gd". GD version 2 produces nicer images than GD version 1 (IMHO).


Are GoWiki's sources available ?

  --AGiss

Arno: if you are just looking for a wiki engine, then I suggest that you have a look at PhpWiki above. GoWiki is based on version 1.2. PhpWiki has been developed further, has an active development team, version 1.3 has many more features, is very easy to install, ... In short: this is the sane (and best) choice.

A list of other wiki engines can be found at Ward's wiki at [ext] http://c2.com/cgi-bin/wiki?WikiWikiClones.

The only thing that GoWiki adds are the diagrams. However, this and other minor enhancements are not coded in a clean style, as the source was never meant to be published. The source could (if at all) only be published on alt.tasteless.jokes. If you absolutely have to have to sources you can email me. No documentation, no support, nasty code, hacks, bugs, and workarounds.

Note: The current GoWiki code bears next to no resemblance to PhpWiki. The code was forged in late 2000 and both branches developed very differently.


BenjaminGeiger: I'm trying to write a basic go-diagram processor for [ext] MoinMoin, which entails rewriting the diagram code in Python. I can generally glark enough from the PHP code to get the basic idea, but I'm still in the dark about one thing: How are the board images saved and used within SL?

Specifically, are the board images and SGFs cached and reused, or are they generated each time a page is loaded? How are the names chosen? (They look vaguely like MD5 checksums.) And why do the preview diagrams look so different?

Arno: the images are cached and reused. Just have a look at the HTML source of a wiki page and you see that the images there are real PNG files. The names are MD5 hashes over the diagram content - but any naming scheme is good enough really. It is useful to detect what diagrams have changed and need to be created or deleted. Preview looks different because actually they are a composite of small images (just look at the HTML source). But you got me thinking: it should be easy to create the graphic on demand. Will put it on my todo list.

MarkD: Arno, will this break the Slot programs conversion routines? Or will the database format be unchanged?

Arno: the format will remain unchanged as it only affects the edit preview and archiv views where the diagram is no longer available in the current wiki.



This is a copy of the living page "GoWiki" at Sensei's Library.
(OC) 2004 the Authors, published under the OpenContent License V1.0.