Skip to content
/ aliw Public

A Lisp in Wonderland (aka. ALIW) is a wiki software written in Common Lisp.

License

Notifications You must be signed in to change notification settings

vy/aliw

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

      __--__-_
  ,-^'        ^%\
.'      /|      #&    __-.--,_
       / |       ~?:^'        `:. ...
      /  |
     /_-=|^  L I S P
   -/'  '|   I N
  (/     |&  W O N D E R L A N D
                        ,..
          __,,-    ,-~^'   `
..-'^'-'^^     `'^'

Overview

A Lisp in Wonderland (aka. ALIW) is a wiki software written in Common Lisp, to ease the collaboration on editable web pages.

Besides its features you will experience during your visit,

  • Extensible markup language (via meta-sexp),
  • Content caching to reduce markup transformation overhead,
  • Open to further development via flexible interface of Hunchentoot web server,
  • Plain file based - thus platform independent - version control system,
  • Advanced editing, diff'ing (via cl-difflib), history viewing capabilities,
  • Modular user interface structure through CSS,
  • Full-text search availability (via Montezuma)

are some of the relatively major features supported by ALIW.

Installation

Before proceding to the next steps, you first need to ASDF-install ALIW tarball.

CL-USER> (asdf-install:install :aliw)

or use the full path of the tarball.

CL-USER> (asdf-install:install "/path/to/aliw.tar.gz")

After installing ALIW tarball successfully, you need to configure some of runtime parameters that act specific to each installation. For this purpose, you need to edit `specials.lisp' file coming with the ALIW tarball.

Besides optional ones, the parameters that you must configure are

*CONTENT-DIRECTORY*
*CONTENT-INDEX-DIRECTORY*
*STATIC-FILES-DIRECTORY*
*ACCOUNTS-DIRECTORY*

After that, you can edit specials.lisp as you wish through your concerns. (All of the parameters in the file are documented.)

Starting/Stopping Server

To start/stop the web server that wiki will run on, you can use START-SERVER/STOP-SERVER functions coming with ALIW package. START-SERVER takes identical parameters with HUNCHENTOOT:START-SERVER.

Pay attention that, you must use ALIW:START-SERVER and ALIW:STOP-SERVER to start/stop the wiki server, not HUNCHENTOOT:START-SERVER. Otherwise, required initialization steps will be totally skipped.

START-SERVER parameters:

(&key (port 80 port-provided-p)
      address
      dispatch-table
      (name (gensym))
      (mod-lisp-p nil)
      (use-apache-log-p mod-lisp-p)
      (input-chunking-p t)
      (read-timeout *default-read-timeout*)
      (write-timeout *default-write-timeout*)
      #+(and :unix (not :win32)) setuid
      #+(and :unix (not :win32)) setgid
      #-:hunchentoot-no-ssl ssl-certificate-file
      #-:hunchentoot-no-ssl (ssl-privatekey-file ssl-certificate-file)
      #-:hunchentoot-no-ssl ssl-privatekey-password)

To stop the server, just call STOP-SERVER. (STOP-SERVER takes no arguments.)

About

A Lisp in Wonderland (aka. ALIW) is a wiki software written in Common Lisp.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published