From 1fbe7b5721a9b497abfffaefc8dfd23ce1446e08 Mon Sep 17 00:00:00 2001 From: Utz-Uwe Haus Date: Sat, 4 Oct 2008 22:30:48 +0200 Subject: [PATCH] Add automatic documentation generation. Use David Lichteblau's atdoc package. Signed-off-by: Utz-Uwe Haus --- README | 3 +++ generate-documentation.lisp | 52 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 generate-documentation.lisp diff --git a/README b/README index 2f9ec7c..e7399cc 100644 --- a/README +++ b/README @@ -14,5 +14,8 @@ The file example.lisp (and example.peg) contains a simple example of how you can use opossum to generate a parser for your favorite grammar in your own lisp code. +Documentation is automatically generated from the docstrings in html format +using David Lichteblau's atdoc package, with minor modifications. + $Id$ diff --git a/generate-documentation.lisp b/generate-documentation.lisp new file mode 100644 index 0000000..a77a990 --- /dev/null +++ b/generate-documentation.lisp @@ -0,0 +1,52 @@ +;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10; package: cl-user -*- +;;;; ************************************************************************************** +;;;; +;;;; (c) 2008 Utz-Uwe Haus, +;;;; +;;;; $Id$ +;;;; +;;;; This code is free software; you can redistribute it and/or modify +;;;; it under the terms of the version 3 of the GNU General +;;;; Public License as published by the Free Software Foundation, as +;;;; clarified by the prequel found in LICENSE.Lisp-GPL-Preface. +;;;; +;;;; This code is distributed in the hope that it will be useful, but +;;;; without any warranty; without even the implied warranty of +;;;; merchantability or fitness for a particular purpose. See the GNU +;;;; Lesser General Public License for more details. +;;;; +;;;; Version 3 of the GNU General Public License is in the file +;;;; LICENSE.GPL that was distributed with this file. If it is not +;;;; present, you can access it from +;;;; http://www.gnu.org/copyleft/gpl.txt (until superseded by a +;;;; newer version) or write to the Free Software Foundation, Inc., 59 +;;;; Temple Place, Suite 330, Boston, MA 02111-1307 USA +;;;; +;;;; ************************************************************************************** + +;;; Load this file to generate documentation using David Lichteblau's atdoc +;;; (if you are adventurous add this file to the .asd file as depending on +;;; the package itself) +(asdf:oos 'asdf:load-op 'atdoc) +;; we force a fresh compile-and-load cycle to make sure docstrings +;; are up-to-date +;; ugly: package docstring is not updated on allegro unless we +(ignore-errors (delete-package :opossum)) + +(asdf:oos 'asdf:compile-op 'opossum :force T) +(asdf:oos 'asdf:load-op 'opossum :force T) + + +(in-package :cl-user) + +(atdoc:generate-documentation '(:OPOSSUM) + (directory-namestring + (make-pathname + :directory (append + (pathname-directory + (asdf:system-definition-pathname + (asdf:find-system :opossum))) + '("web")))) + :index-title "OPOSSUM reference manual" + :heading "opossum" + :css "boxy.css") \ No newline at end of file -- 2.11.4.GIT