Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
Favorite OCaml editor?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2010-01-05 (07:31)
From: Daniel_Bünzli <daniel.buenzli@e...>
Subject: Re: [Caml-list] Favorite OCaml editor?
> "Your favorite" is key here here; I appreciate you human input as I
> can use a search engine to find any old OCaml editor easily.

Then I think a more interesting question is, what features do you
absolutely need to be productive ?

I'm rather low tech and not the "power user" type but still I couldn't
do it without (keyboard access to) :

1) Syntax highlighting and reasonably automatic identation following
ocaml's programming guidelines [1]

2) Ability to invoke a build tool so that reported errors allow me to
automatically jump to the offending lines.

3) Ability to invoke built programs so that reported stack traces
allow me to automatically jump to the offending lines.

4) Ability to read annot files so that I can query the type of the
symbol under my cursor.

5) Ability to switch rapidly between an ml file and its corresponding mli.

6) Ability to edit C sources.

I guess many people would add

7) Ability to access the documentation of the symbol under my cursor.

Now for 1-6, emacs and the distribution's ocaml mode work perfectly
for me (the latter doesn't support one or two of my identation
patterns but it's ok) and is the only sophisitication I need.

Regarding 7) I have a low tech approach which is to use gnome do (on
linux) or quicksilver (on osx) to index
the documentation generated by ocamldoc. Since the latter
intelligently produces an html file "Module.html" for a module named
"Module" I can quickly access its documentation by invoking gnome do
with its hot key, type an abbreviation of "Module" and hit return.
This opens the document in my browser where I scroll or search in the
page to get to the symbol.