experimental patches to utop
Go to file
Jeremie Dimino ec72c8c913 add a script to install compiler libraries
Ignore-this: 1be1715f4e0e3bbcb31cddaee9ff9ce6

darcs-hash:20110803113251-c41ad-48f30dafb6ad00e0549e2cece6f66a67767176d0
2011-08-03 13:32:51 +02:00
man add colors for modules and directives 2011-08-03 10:38:28 +02:00
src add colors for modules and directives 2011-08-03 10:38:28 +02:00
utils add a script to install compiler libraries 2011-08-03 13:32:51 +02:00
LICENSE initial import 2011-07-23 08:59:13 +02:00
README add a script to install compiler libraries 2011-08-03 13:32:51 +02:00
_oasis add manual pages 2011-08-02 19:34:27 +02:00
_tags emacs mode 2011-07-27 11:04:47 +02:00
boring initial import 2011-07-23 08:59:13 +02:00
dist.sh initial import 2011-07-23 08:59:13 +02:00
myocamlbuild.ml fix the usage of threads inside the emacs mode 2011-07-31 18:50:14 +02:00
predist.sh add a script to install compiler libraries 2011-08-03 13:32:51 +02:00
setup.ml setup the build system 2011-07-25 15:30:42 +02:00
utoprc-dark add colors for modules and directives 2011-08-03 10:38:28 +02:00
utoprc-light add colors for modules and directives 2011-08-03 10:38:28 +02:00

README

A universal toplevel for OCaml.

url: https://forge.ocamlcore.org/projects/utop/

* Requirements:

  utop depends on the following packages:

  * findlib      (http://projects.camlcity.org/projects/findlib.html)
  * react        (http://erratique.ch/software/react)
  * lwt          (http://ocsigen.org/lwt/)
  * camomile     (http://camomile.sourceforge.net/)
  * zed          (http://forge.ocamlcore.org/projects/zed/)
  * lambda-term  (http://forge.ocamlcore.org/projects/lambda-term/)

  Lwt must be compiled with react support, configure it with:

    $ ./configure --enable-react

  utop also requires OCaml compiler libraries. If you are using
  debian, they are available as the package ocaml-compiler-libs, if
  you are using godi, they are installed by default. If you installed
  ocaml by hand, you can run the script utils/install-compiler-libs.sh.

* Installation:

  To compile and install lambda-term just type:

    $ ocaml setup.ml -configure
    $ ocaml setup.ml -build
    $ ocaml setup.ml -install

  If you get the development version of utop you must obtain oasis
  (http://oasis.forge.ocamlcore.org/).

* Usage:

  To use utop, simply run:

    $ utop

  utop display a bar after the prompt which is used to show possible
  completions in real-time. You can navigate in it using Alt+Left and
  Alt+Right, and select one completion using Alt+Tab.

* Customization:

  To add colors to utop, copy one of the files utoprc-dark or
  utoprc-light to ~/.utoprc. utoprc-dark is for terminals with dark
  colors (such as white on black) and utoprc-light is for terminals
  with light colors (such as black on white).

  You can also customize the prompt of utop by setting the reference
  UTop.prompt.

* Integration with emacs:

  To use utop in emacs, add the following line to your ~/.emacs file:

    (autoload 'utop "utop" "Toplevel for OCaml" t)

  Then you can run utop by executing the command "utop" in emacs.

* Integration with the tuareg mode:

  You can replace the default toplevel used by the tuareg mode by
  utop, for that add the following lines to your ~/.emacs file:

    (autoload 'utop-eval-region "utop" "Toplevel for OCaml" t)
    (autoload 'utop-eval-phrase "utop" "Toplevel for OCaml" t)
    (autoload 'utop-eval-buffer "utop" "Toplevel for OCaml" t)

    (defun tuareg-utop-hook ()
      (local-set-key "\M-\C-x" 'utop-eval-phrase)
      (local-set-key "\C-x\C-e" 'utop-eval-phrase)
      (local-set-key "\C-c\C-e" 'utop-eval-phrase)
      (local-set-key "\C-c\C-r" 'utop-eval-region)
      (local-set-key "\C-c\C-b" 'utop-eval-buffer))

    (add-hook 'tuareg-mode-hook 'tuareg-utop-hook)

* Development:

  The last development version of utop can always be found in the
  darcs repository hosted at darcs.ocamlcore.org:

  $ darcs get http://darcs.ocamlcore.org/repos/utop