========= --------------------------- CL-WIKI Wiki Engine for Common Lisp ========= --------------------------- http://common-lisp.net/project/cl-wiki/ Quick start =========== (asdf:operate 'asdf:load-op :cl-wiki) ;; Write config file "wiki.conf" in current directory with at least ;; (base (directory "/path/to/wiki-data/")) ;; ... (wiki:start) Then direct your browser to http://localhost:5757/cl-wiki/Somepage CL-WIKI uses Hunchentoot . The example above runs it without any front-end. But you can install it for use with Apache and mod_lisp, too. See Hunchentoot's documentation. Syntax highlighting via lisppaste's colorizing code . See colorize-README. Config ====== File "wiki.conf" in current directory. Example: ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: CL-USER; Base: 10 -*- ;; Config file for CL-WIKI -- Wiki engine for Common Lisp (base (port 5757 directory "/home/stesch/wiki-data" url "/cl-wiki/" page-list ((title "Home" link "Home") (title "About" link "About") (title "Contact" link "Contact")))) The following parameters can be set with the config file: Section: base ------------- directory Base directory for the wiki data, like pages, etc. port TCP/IP port CL-WIKI will listen to. Attention: listens on every interface. template-directory Base directory for templates. page-list List of title-link pairs with links that get displayed on the top and bottom of every page. See example above how to set this. reverse-proxy Indicates if CL-WIKI runs behind a reverse proxy. Default is NIL. Set it to t when behind a proxy. home-page Default page when root directory of the site is accessed. edit-textarea-size Plist of size of edit textarea. Default is (:rows 25 :cols 80). Textformatting ============== [[Page]] ==> Generates a link to named page. [[Page|Text]] ==> Generates a link to named page and links Text. [http://www.somepage.example/] ==> Inserts external link ''text'' ==> emphasize text (text) -- on most browsers italic '''text''' ==> stronger emphasize text (text) -- on most browsers bold text ==> text in small font text ==> text in big font x ==> subscripting x x ==> superscripting x text ==> strike out text text ==> underline text text ==> Mark text as deleted text ==> Mark text as inserted
or
==> Start a new line * Item ==> List item = Foo = ==> Level 1 header (discouraged) == Foo == ==> Level 2 header ... ... ====== Foo ====== ==> Level 6 header ---- ==> Horizontal divider ... ==> Sourcecode snippet
 ... 
... ==> Sourcecode snippet, colorized for the named language LANG. Snippet is surrounded by
...
LANG must be one of "Basic Lisp", "Scheme", "Emacs Lisp", "Common Lisp", "C", "C++", "Java", "Objective C", "Erlang", "Python", or "Haskell" ... ==> Excludes a portion of the text from code converting. Useful if you want to show the formatting codes on a help page, etc. ==> Removes everything between . Allows commenting. Philosophy ========== The term "wiki wiki" and its meaning are well known. Quick. Quick to use and quick to program. The first wiki was written in 30 lines of Perl code. Thanks ====== Kevin Griffin for tests with different CL implementations and beeing an early adopter. Ian Clelland for ideas, patches, etc. Vehbi Sinan Tunalioglu for ideas, patches, etc. Jens Teich reviving development, ideas, patches, etc. Ralf Stoye for a patch to speedup regexps, which are heavily used in CL-WIKI.