我正在使用Emacs在Ocaml中编写一个编译器。我被告知使用-annot
可以在编译时生成文件.annot
,这可以帮助Emacs显示我的代码类型。但运行此makefile后生成.annot
很奇怪。谁能告诉我这有什么问题?
此外,一旦我得到.annot
,我是否需要设置任何内容(例如.emacs
?)以便我的Emacs读取它并显示我的代码类型?
非常感谢!
Edit1:在make clean
和make
之后,我获得了.annot
...但我仍然不知道如何在Emacs中使用此.annot
。
Edit2:实际上有必要遵循此link,复制本地文件夹中的文件,然后更新.emacs
。然后,当在Emacs中编辑.ml
时,C-c C-t将从.annot
返回其类型。
答案 0 :(得分:1)
关于您的emacs查询 - 我不使用emacs--,这是来自ocamlc
的{{1}},
-annot转储有关编译的详细信息(类型,绑定,尾调用等)。文件src.ml的信息放入文件src.annot。如果出现类型错误,请在错误发生之前转储由类型检查程序推断的所有信息。 src.annot文件可与emacs / caml-types.el中给出的emacs命令一起使用,以交互方式显示类型和其他注释。
man-pages还有其他工具。
至于Makefile
没有创建.annot
文件,我创建了一个模拟目录并成功创建了.annot
个文件。我也没有看到你Makefile
的任何问题。您可能想要清理目录并重试,或者切换到另一种方式来构建像ocamlbuild
这样的工具 - 这需要最少的设置,但是,我没有将它与menhir
一起使用。 / p>
我还会注意到the thread I mentioned previously,并且之前的标志是-dtypes
。