【问题标题】:How to generate and set up annotation for Ocaml in Emacs?如何在 Emacs 中为 Ocaml 生成和设置注释?
【发布时间】:2011-06-21 11:49:18
【问题描述】:

我正在使用 Emacs 在 Ocaml 中编写编译器。有人告诉我,使用-annot 可以在编译时生成一个文件.annot,这可以帮助Emacs 显示我的代码类型。但奇怪的是,运行这个makefile后没有生成.annot。谁能告诉我这有什么问题?

另外,一旦我得到.annot,我是否需要设置任何东西(例如.emacs?)以便我的 Emacs 读取它并显示我的代码类型?

非常感谢!

Edit1:在make cleanmake 之后,我得到了.annot...但是我仍然不知道如何在Emacs 中使用这个.annot

Edit2:其实是需要按照这个link,把文件复制到本地文件夹,然后更新.emacs。然后在 Emacs 中编辑 .ml 时, C-c C-t 从 .annot 返回其类型。

【问题讨论】:

    标签: emacs makefile annotations compilation ocaml


    【解决方案1】:

    关于您的 emacs 查询--我不使用 emacs--,这是来自 man-pagesocamlc

    -annot 转储有关编译的详细信息(类型、绑定、尾调用等)。文件 src.ml 的信息被放入文件 src.annot。如果出现类型错误,请转储类型检查器在错误之前推断出的所有信息。 src.annot 文件可以与 emacs/caml-types.el 中给出的 emacs 命令一起使用,以交互方式显示类型和其他注释。

    还有来自the thread I mentioned previously的其他工具。

    至于Makefile 没有创建.annot 文件,我做了一个模拟目录并成功创建了.annot 文件。我也看不出你的Makefile 有什么问题。您可能想要清理目录并重试,或者切换到另一种方式来构建您的工具,例如 ocamlbuild -- 这需要最少的设置,但我没有将它与 menhir 一起使用。

    我还会注意到-annot is new since OCaml 3.11.0,之前的标志是-dtypes

    【讨论】:

    • 感谢您的回复,正如我在上面编辑的那样,我确实生成了.annot,但我仍然不知道如何使用它...
    • 您必须更加具体,因为我为您引用的链接应该已经解释了这一点。
    • 该链接是不必要的,很可能会过时。手册页和其他地方讨论的 emacs 文件夹随 ocaml 发行版一起发布。或者可能作为包管理器的一部分作为附加包(在 ubuntu 中,ocaml-mode;或者tuareg-mode)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-14
    • 2010-12-07
    • 2015-05-29
    • 2021-12-04
    相关资源
    最近更新 更多