Download TypeRex

Warning! The packages available in OPAM are beta-version of the version 2 of typerex. These versions rely of the cmt files generated by the 4.00 OCaml compiler, with the -bin-annot option. Thus, most of the instructions given on this website are outdated. We are planning to improve the documentation.

Version 1.0

The version 1 of TypeRex is available here.

The first release of TypeRex brings to the OCaml world editor features which are available in other mainstream programming languages. This first version only targets Emacs on Unix (Linux and MacOSX), but more editors will be supported soon. If you are interested by porting TypeRex to other platforms, you can find more informations on the Support page.

System requirements

  • Linux (32-bit or 64-bit) or MacOS (tested with 10.6.8)
  • OCaml ≥3.11.2
  • Emacs (Tested with 23.2.1, does not work under X-Emacs, reported to work with Aquamacs but with performance issues)
  • GNU diff


Previous versions are available here.


  • Fixed missing last2old conversion with line/column format


  • Prefixed ocp-faces for cleaner namespace (requires replacement)
  • Added "caml_like" and "caml" coloring themes.
  • Improved syntax coloring efficiency (reduced communication overhead)
  • Improved completion efficiency (store intermediate envs)
  • Enabled 3.11 binary compatibility
  • Added flymake support (contributed by Wojciech Meyer)
  • Sorted typerex customization into consistent sections
  • Cleanup the typerex/more menu and corrected contents
  • Avoid unnecessary conflict with caml-mode
  • Refactoring: clarify and separate editor-specifid code better
  • Re-implemented RPC (Emacs-lisp side) on top to transaction queues
  • Fixed error messages for longidents with applications
  • Fixed -p, -i and other options in ocp-wrapper
  • Fixed toplevel grep/rename in contextual menu
  • Fixed dirname matching with trailing slash
  • Fixed compatibility with older Emacs (emacs-mule / emacs-internal)
  • Fixed cmt assignement when 1 cmt for 2 sources


  • Improved performance on large libraries (lazy environments, more cache)
  • Fixed encoding bug with 3bytes utf8 characters
  • Use line/column positions instead of absolute bytes (fixes windows eol)
  • More robust ml/mli switching (contributed by Wojciech Meyer)
  • Fixed camlp4 first-class modules
  • Compiles with 3.11.2 as claimed (no more 3.12 syntax in the code)
  • Made the prefix key customizable (C-o by default)
  • Added option --disable-version-check to configure script
  • Source extensions customizable (e.g., .eliom), mlp included by default
  • Allow to disable syntax coloring completely
  • Applied Jun Furuse's indentation patch and changed a few defaults
  • Use the caml-mode error regexp instead of tuareg's
  • Fixed coloring of constructors in type definitions
  • Fixed the crash when starting emacs on several files (>=3)
  • Fixed wrapper for -a
  • Less risky names in lisp code
  • Slightly improved documentation (ocamlbuild, libraries, module packing)
  • Tuareg actions use TypeRex stdlib path instead of hard-coded default


    First public release