Updated 2015-09-08 20:19:16 by LarrySmith

I've modified Wikit with a few things that I would like to see. All modifications are described below. The modified kit can be downloaded from [1] (which includes the source, naturally).

Larry Smith I get 403 Forbidden when I click on that link.

Many thanks to jcw and ps.

Current version:
   2003/10/14 11:33:47  23489-30081  wikit-akg.kit

Fixes a bug with static page cache maintenance with referring pages.

Cheers, AKG.

Formatting Rules

Headings

You can specify headings using using the format:
 ==<level> <Heading Text> ===

e.g.
 ==2 Headings ===

The level is a number between 1 and 6.

References

  1. You can refer to another page by putting its name in square brackets like this: [TITLE]. To specify a label use: [TITLE | LABEL], note that the spaces before and after the vertical bar are important.
  2. URLs will automatically be recognized and converted into a hyperlink: http://your.site/contents.html. To specify a label use [http://your.site/contents.html | LABEL], e.g. [2]. Notice that links to external sites are displayed in brackets.
  3. If you put URLs in square brackets, they'll be shown as a tiny reference [3] instead. In this situation, the system assumes that any url ending in .jpg, .png, or .gif is an image and displays it inline.
  4. URL methods recognized are:

Adding highlights

  • Surround text by pairs of single quotes to make it display in italic
  • Surround text by triples of single quotes to make it display in bold

Adding structure to your text

  • Lines of text are separated by breaks, with empty lines used to delineate paragraphs.
  • Lines starting with three spaces, a "*", and another space are shown as bulleted items.

If the following line is plain text, i.e. isn't enumerated or quoted text, it will be part of the current item, with a line break before it.

  • Lines starting with three spaces, a "1.", and another space are shown as a numbered list.

If the following line is plain text, i.e. isn't enumerated or quoted text, it will be part of the current item, with a line break before it.

  1. first numbered bullet
  2. second numbered bullet
  • Lines starting with three spaces, item tag name, ":", three spaces, and then the item tag body are shown as taggest lists.
tag1
text1

Further text for tag1.
tag2
text2
 All other lines beginning with white space are shown as is
 - no highlighting, reference generating, or even text wrapping occur.

  • Put four or more dashes on a line to get a horizontal separator, like the "----" below:

Using brackets in your text can be done by doubling them, so [[ shows as [.

Wikit Configuration

In addition to the configuration described in Wikit Configuration, AKG Wikit has been extended with the following configuration environment variables:
CGI_LOG
If this is set errors are written to the file named instead of being e-mailed.
WIKIT_CVSDIR
The directory used to check items into CVS.
WIKIT_TEMP
The directory used to store temporary files when creating diff pages on Windows. Unix uses "/tmp".
WIKIT_PATH
Any directories to be added to the path. Apache seems to create its own path variable and doesn't allow modification, this is a way to extend it.

Wikit URL's

This version integrates the functionality from tclhist (thanks to [4]). I've tried to keep as much backward compatibility as possible, which has resulted in a somewhat inconsistent format.
/<num>
Display page number <num>
/<num>&
Display a version summary of page number <num>

To display an unformatted version, e.g. for WikiDiff to consume, use /<num>&?fmt=0. The "History" link on each page displays the version summary for that page. The tclhist specifier of "*" is accepted, but doesn't mix well with the static page cache.
/<num>~
Display a version annotation of page number <num>

The "Annotation" link on each page displays the version annotation for that page.
/<num>.<ver>
Display version <ver> of page number <num>

To obtain the source (unformatted) use /<num>.<ver>?fmt=0 Links for displaying earlier versions are provided in the History (Version Summary) page.
/<num>-<ver>
Display differences between the latest version and version <ver> of page number <num>

The differences are displayed thanks to Pascal Scheffers worddiff package, which is part of http://wiki.tcl.tk/WikiDiff . To display unformatted output, i.e. direct from cvs diff, use /<num>-<ver>?fmt=0 Links for displaying differences are provided in the History (Version Summary) page.
/2?<text>
Search for <text> in the titles.
/2?<text>*
Search for <text> in titles and page content.
?pg=index
Display an index of all entries in CVS.

Modifiers:
?dbg=1
Display debug and error information in the page, set _cgi(debug) 1. Can't be used when searching.
?fmt=0
Don't format the page. See above for where this applies.

The fmt modifier seems to be lost when used in conjunction with the static page cache. I'm still investigating why.

Page History

Wikit can use CVS to keep a history of each page, which may be viewed using the commands described above.

To enable history, WIKIT_HIST and WIKIT_CVSDIR must be defined.

To add pages into cvs run:
  wikit.kit -archiveHistory

periodically, e.g. from a cron job. A delay of 1 second is included between each update to prevent the cvs server from being flooded.

Miscellaneous Enhancements

  • A "Cancel" button has been added to the Edit page.

This includes a fix to the annoyance of having a "Saved Page" message displayed when cancelling the edit.

  • A more descriptive prompt has been added to the Search page.

CvK: <wikit-akg.kit> - The page Edit function link seems unavailable on all pages when running under WindowsXP as a HTTPD service. (ie, tclkit wikit-akg.kit -httpd <port#> ), but all seems to work when run as CGI under Apache. Unsure why this is?

  • -HTTPD mode is read only!

MHo: One thing preventing me from using this derivate of wikit is, that actual changes in wikit are not reflected. It would be nice if the modifications in AKG Wikit were isolated in the code, so that one could apply it to the 'normal' wikit after a new version of that became available...