问题很简单:我在OCamlBuild或Oasis手册中找不到如何告诉该工具在编译时自动生成注释文件(.cmt)。
注释文件很有用,因为Merlin在使用Emacs时会吃掉它们来告诉您表达式的类型。
将以下内容添加到_tags
文件中:
true: annot, bin_annot
但是,据我所知,oasis从0.4.4甚至更早的版本开始默认生成注释。所以,我认为,你的梅林设置有问题。确保在.merlin
文件中有以下行:
B _build
如果你的源树中有很深的层次结构,那么你需要告诉merlin这一点。例如,如果有两个文件夹:lib
和src
与_oasis
文件位于同一级别,则还需要添加以下内容:
S lib
B _build/lib
下面是如何告诉oasis告诉ocamlbuild这样做的:
ocaml setup.ml -build -cflag -bin-annot -cflag -annot