
The _readline_ collection (not to be confused with MzScheme's
`read-line' procedure) provides glue for using GNU's readline library
with the MzScheme read-eval-print-loop. It probably works under Unix
variants, only.

To use readline, you must be able to compile the "mzrl.c" file to
produce a MzScheme extension, which requires a C compiler. Setup PLT
attempts to compile it for you; if the installation fails, you may
need to set the PLT_EXTENSION_LIB_PATHS environment variable to
include a path with "include" and "lib" directories containing the GNU
readline headers and library.


Normal use of readline
----------------------

The _rep.ss_ library installs a readline-based function for the
prompt-and-read part of MzScheme's read-eval-print loop.

I put the following in my ~/.mzschemerc so that MzScheme always starts
with readline support:

 (require (lib "rep.ss" "readline"))

The readline history is stored across invocations in MzScheme's
preferences file, assuming MzScheme exits normally.


Direct bindings for readline hackers
------------------------------------

The _readline.ss_ library provides two functions:

> (readline prompt-string) - prints the given prompt string and reads
  an S-expression.

> (add-history s) - adds the given string to the readline history,
  which is accessible to the user via the up-arrow key


Known Bugs
----------

Hitting ctl-C more than once tends to make either readline or MzScheme
crash (I'm not sure which one).



                                                 mflatt@plt-scheme.org
