如果我使用tuareg-run-caml
函数在Emacs / tuareg中启动自定义顶层,我需要提供顶层路径以及查找CMI文件所需的各种-I
选项。这种打字很乏味,是否有更方便的方式来启动自定义顶层?
答案 0 :(得分:1)
一种方法是在项目目录中添加.ocamlinit
,使用#directory
添加顶层所需的任何路径。您还可以使用它来安装打印机,为常用模块添加较短的名称,运行测试代码等。
请注意,您可能希望该项目特定.ocamlinit
执行~/.ocamlinit
,因为像opam这样的东西往往会在那里放置点点滴滴。它可能看起来像这样:
#use "/home/foo/.ocamlinit"
#directory "_build"
open Printf
module V = VeryLongModuleName
请注意,#use
需要硬编码路径。遗憾的是,这会干扰分发文件。
我通过使用emacs命令启动顶层来进一步自动化,该命令在当前目录中搜索要执行的文件*.top
,如果没有找到则回退到ocaml
。由于ocamlbuild
提供了一种构建这些文件的相当简单的方法,因此避免了将项目加载到可用的顶层中的繁琐工作。