2011-11-02 24 views

回答

11

最近在OCaml郵件列表上公佈了一個名爲utop的系統。它取代了許多先進功能的OCaml頂級設備。它出現在OcamlCore.org被託管:

http://forge.ocamlcore.org/projects/utop/

我還沒有嘗試過,但它聽起來很不錯。

我使用rlwrap,我自己。

+0

那麼你如何創建rlwrap的完成文件? –

+0

我只是使用'--remember'標誌,它會在輸入時累積有用的完成單詞列表。我明白爲什麼有人會想要比這更強大的東西。 –

7

您可以使用Emacs緩衝區內的ocaml頂層,它可以爲您提供類似於rlwrap的編輯功能,以及您在Emacs配置中的任何功能,包括潛在的非特定於ocaml的完成模式。

除了傑弗裏已經引用的JérémieDimino的utop,還有其他一些相對於OCaml頂層的較老的項目。他們不是所有人提供完成,但你仍然可以在他們感興趣:

  • 鄭莉的EnhtopREADME),提供指令用於瀏覽當前的頂級環境
  • 彭髒的Enhtop+,在Enhtop一個增量的補丁,它配備了tuareg-plus模式提供額外的圖阿雷格功能,包括OCaml的感知完成,這也可以從一個Emacs頂層緩衝

(相關,但不是頂級爲本,是君古瀨的Ocamlspotter允許精確定位Emacs中的OCaml文件的這個名稱定義信息)

所有這些項目都是作爲OCaml源代碼的補丁。這意味着要安裝它們,您必須下載OCaml編譯器的源代碼,對它們進行修補,編譯並將結果用作OCaml安裝(它可以選擇性地保留現有的OCaml安裝,修補和編譯相同版本的編譯器分開,並有選擇地使用/替換感興趣的可執行文件)。這也意味着修補程序開發人員需要承擔維護工作,因此必須遵循OCaml編譯器升級,並且您可能會受限於要使用哪個版本的OCaml。簡而言之,不容易部署。