OCamlEditor

OCamlEditor is a source code editor and build tool for OCaml.

Features

Standard editing features

Commenting/uncommenting of code blocks

With the same shortcut key you can comment/uncomment blocks of code or select, from the current cursor position, the enclosing or nearest comment.

Completion popup with types description

Switch between interface and implementation with automatic interface generation

Find definition/references

Automatic file backup and recovery

When a file is saved the option to generate a backup file is provided. Backup copies are sequentially numbered and stored locally in a sub-directory of the project.
In the case of a crash of either the application or the OS, any files open for edit with unsaved changes will be saved as temporary files. When the application is restarted the user will be prompted with the Auto Recovery dialog prompting the user with a list of modified but unsaved temporary files saved at the time of the crash.

Ability to switch rapidly between currently opened and recently used files

Ability to switch rapidly between projects

Automatic compilation of the currently open file

Delay and compiler flags are configurable in project properties. Error/warning locations are underlined in the source and marked in the "gutter" and in the global gutter. Error messages are shown with a tooltip.

Ability to display the types inferred by the compiler

Project support

Multiple build configurations

Multiple build configurations provide a way to select components of a project to be built with different settings and for different purposes. You can designate one of the build configurations as the default configuration to use when you choose Build or Run without selecting a configuration.

Automatic detection of dependencies

Dependencies are automatically resolved using ocamldep. You only have to specify the toplevel modules for libraries and the main module for executables.

Runtime configurations

Runtime configurations are preset build tasks, runtime parameters and environment variables associated with a build configuration. With preset configurations, each time you run, simply select the desired configuration to use.

External build tasks

There may be cases where you want to execute external tasks whenever you build a project, such as copying files after a build. With the External Build Task you can schedule, at each build phase, external tasks that allow you to execute external shell commands as part of the build process or to fully replace the standard process proposed by OCamlEditor.

Message pane with hyperlinks on error messages, backtrace locations and assert failures

Integrated OCaml toplevel with command history and quick loading of modules and libraries from the project

External tools configuration

External tools allow you to configure and run programs or batch files.

Screenshots

Main window Build configuration window

Dependencies

Download

The current version is 1.6.1, see the list of changes.

Development

The main page for development is hosted on the OCaml Forge, see the project's page.

The public git repository is hosted on github. You can browse the source tree from:

http://github.com/ftovagliari/ocamleditor

or clone it by doing:

git clone git://github.com/ftovagliari/ocamleditor.git

License

OCamlEditor is free software: the license is GNU GENERAL PUBLIC LICENSE Version 3.

Copyright © 2010, 2011 Francesco Tovagliari

The Caml Language