From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by yquem.inria.fr (Postfix) with ESMTP id 7060BBBAF for ; Tue, 5 Jan 2010 11:14:19 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AmwCAPOfQkvUnwdkjmdsb2JhbACDX5dzAQEBAQkLEREGqTeNS4Esgi5WBIMa X-IronPort-AV: E=Sophos;i="4.47,504,1257116400"; d="scan'208";a="44200834" Received: from relay.pcl-ipout02.plus.net ([212.159.7.100]) by mail1-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 05 Jan 2010 11:14:19 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApsEAPOfQkvUnw4T/2dsb2JhbACDX8FqjUuBLIIuVgSDGg Received: from pih-relay06.plus.net ([212.159.14.19]) by relay.pcl-ipout02.plus.net with ESMTP; 05 Jan 2010 10:14:18 +0000 Received: from [87.113.55.217] (helo=leper.local) by pih-relay06.plus.net with esmtp (Exim) id 1NS6Qc-0004kH-9k for caml-list@yquem.inria.fr; Tue, 05 Jan 2010 10:14:18 +0000 From: Jon Harrop Organization: Flying Frog Consultancy Ltd. To: caml-list@yquem.inria.fr Subject: Re: [Caml-list] Favorite OCaml editor? Date: Tue, 5 Jan 2010 11:28:48 +0000 User-Agent: KMail/1.9.9 References: <756daca51001042203w3c6a397cx6a5d594c28855a4d@mail.gmail.com> <91a3da521001042331t6fa190a2h9398a3add8adb670@mail.gmail.com> In-Reply-To: <91a3da521001042331t6fa190a2h9398a3add8adb670@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Message-Id: <201001051128.48838.jon@ffconsultancy.com> X-Plusnet-Relay: 68dbcf887e08aff1b1b1783f2eb4c43a X-Spam: no; 0.00; ocaml:01 ocaml:01 syntax:01 ocaml's:01 mli:01 ocamldoc:01 abbreviation:01 frog:98 invoke:01 invoke:01 wrote:01 stack:01 caml-list:01 graphics:02 module:03 On Tuesday 05 January 2010 07:31:45 Daniel B=C3=BCnzli wrote: > > "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] Yes. > 2) Ability to invoke a build tool so that reported errors allow me to > automatically jump to the offending lines. Yes but I'd rather have an IDE constantly recompiling and automatically=20 flagging errors such that I can jump directly to them using the GUI. > 3) Ability to invoke built programs so that reported stack traces > allow me to automatically jump to the offending lines. I don't use that so often, but yes. > 4) Ability to read annot files so that I can query the type of the > symbol under my cursor. Absolutely essential. > 5) Ability to switch rapidly between an ml file and its corresponding mli. Interesting. > 6) Ability to edit C sources. Bah. Real men use LLVM. > I guess many people would add > > 7) Ability to access the documentation of the symbol under my cursor. That should go in with the type throwback. Also, it should support typeset= =20 math and vector graphics. And the source should be unicode with easy access= =20 to common alphabets and symbols. > 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. I tend to use ocamlbrowser. =2D-=20 Dr Jon Harrop, Flying Frog Consultancy Ltd. http://www.ffconsultancy.com/?e