IDoc - A No Frills Haskell Interface Documentation System -*-text-*-
---------------------------------------------------------
IDoc extracts interface documentation and declarations from Haskell modules
based on standard Haskell layout rules and a small number of clues that the
programmer may embed in interface comments. These clues have been designed to
be visually non-imposing when displaying the source in a text editor.
Interface documentation is rendered in standard markup languages (currently,
only HTML is supported). IDoc has been designed to be simple to use and
install. Further information can be found at
http://www.cse.unsw.edu.au/~chak/haskell/idoc/
Contents:
COPYING -- GNU General Public License (GPL)
ChangeLog -- Change history
Makefile -- Root makefile
README -- This file
GetOpt.hs -- Sven Panne's Haskell version of GNU getopt
IDoc.hs -- The source of the documentation system
test/ -- Test data
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= INSTALLING =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Short Summary
~~~~~~~~~~~~~
Simply type `make' to compile IDoc. Type `make install' to install IDoc.
NB: The make system requires GNU's make utility to work (see
).
The Whole Story
~~~~~~~~~~~~~~~
The default installation location is `/usr/local' (ie, the executable will be
installed into `/usr/local/bin'). To change the installation location invoke
make as follows
% make PREFIX= install
where determines the installation directory (ie, if is
`/home/chak', the executable will be copied to `/home/chak/bin').
IDoc has been coded in pure Haskell 98, so it should work with any standards
conforming Haskell system. There are two make variables that affect the
Haskell system that is used for compilation:
HC -- determines the Haskell compiler to be used
HCFLAGS -- determines the command line options passed to the Haskell
compiler
both variables can be set either in the `Makefile' or by invoking `make' thus:
% make HC= HCFLAGS=
with suitable values for and code (don't forget to put
quotes around if the string contains white space or characters that
have a special meaning on the shell command line).
Hugs users can, instead of compiling the source code, simply execute it using
`runhugs'. You need to make sure that both source files (`IDoc.hs' and
`GetOpt.hs') are were Hugs can load them.
Constraints
~~~~~~~~~~~
nhc98: Version 1.12 upwards is needed to build IDoc.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= USAGE =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Upon invocation, the executable `idoc' needs to receive the name of a Haskell
source module on the command line. The tool reads the Haskell source and
produces an interface documentation document in the selected markup language
(currently, this is always HTML).
Usage: idoc [ option... ] haskell-file
-h, -? --help brief help (the present message)
-m LANG --markup-language=LANG generate output in markup language LANG
-o FILE --output=FILE write resulting interface description to FILE
-v --version show version information
Currently supported markup languages: HTML.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- COPYLEFT -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
IDoc - A No Frills Haskell Interface Documentation System
Copyright (C) 2002 Manuel M T Chakravarty
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- CREDITS -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Authors:
Manuel M T Chakravarty
Sven Panne wrote `GetOpt.hs'
Thanks for patches to Donald Stewart .