配置您的编辑器

虽然顶层非常适合交互式地尝试语言,但我们很快就会需要在编辑器中编写 OCaml 文件。我们已经安装了增强 Merlin 所需的工具,Merlin 是我们选择的具有 OCaml 支持的编辑器。Merlin 提供了所有功能,例如“跳转到定义”、“显示类型”和 ocaml-lsp-server,这是一个通过 LSP 服务器向编辑器提供这些功能的服务器。OCaml 针对许多编辑器都有插件,但维护最活跃的是 Visual Studio Code、Emacs 和 Vim。

Visual Studio Code

简而言之,在您的 opam 切换 中安装 ocaml-lsp-serverocamlformat 包。

对于 VSCode,从 Visual Studio Marketplace 安装 OCaml Platform Visual Studio Code 扩展。该扩展依赖于 OCaml LSP 和 OCamlFormat。要将它们安装到您的切换中,您可以运行

$ opam install ocaml-lsp-server ocamlformat

首次加载 OCaml 源文件时,系统可能会提示您选择正在使用的工具链。从列表中选择您正在使用的 OCaml 版本,例如 5.1.0

您可以使用的编辑器功能

如果您的编辑器设置正确,以下是一些您可以开始利用的重要功能

1) 将鼠标悬停以获取类型信息

VSCode Hovering

这是一个很棒的功能,它允许您查看任何 OCaml 变量或函数的类型信息。您只需将光标放在代码上,它就会显示在工具提示中。

2) 使用 Ctrl + Click 跳转到定义

VSCode Ctrl click

如果在悬停时按住 Ctrl 键,代码将显示为可点击的链接,如果点击该链接,则会将您带到实现该代码的文件。如果您想了解代码的内部工作原理,这将非常有用。在此示例中,将鼠标悬停在 Queue 模块的 peek 方法上并 Ctrl + Click 将带您到 peek 方法本身的定义以及其实现方式。

3) 使用 Ctrl + Shift + P 执行 OCaml 命令

VSCode OCaml Commands

Ctrl + Shift + P 键组合将在顶部打开一个模式对话框。如果您键入 ocaml,系统将为您提供一个可供使用的各种 OCaml 命令列表,这些命令可用于不同的目的。

Windows 用户

如果您使用的是 DkML 发行版,则需要:1. 转到 文件 > 首选项 > 设置 视图(或按 Ctrl ,)2. 选择 用户 > 扩展 > OCaml Platform 3. 取消选中 OCaml: Use OCaml Env。就是这样!

Vim 和 Emacs

对于 Vim 和 Emacs,我们将不使用 LSP 服务器,而是直接与 Merlin 通信。

$ opam install merlin

在上面安装 Merlin 后,将打印有关如何将 Merlin 与您的编辑器链接的说明。如果您没有看到它们,只需运行以下命令

$ opam user-setup install

与 Merlin 通信

获取类型信息

Vim

Vim Type information

  • 在 Vim 编辑器中,按 Esc 进入命令模式。
  • 将光标放在变量上。
  • 键入 :MerlinTypeOf 并按 Enter
  • 类型信息将显示在命令栏中。Vim 的其他 Merlin 命令也可使用,您可以在 Vim 的 Merlin 官方文档 上查看它们的用法。

Emacs

Emacs Type information

  • 在 Emacs 编辑器中,将光标放在变量上。
  • 使用键盘快捷键 Alt + x,然后是 merlin-type-enclosing
  • 类型信息将显示在迷你缓冲区中。Emacs 的其他 Merlin 命令也可使用,您可以在 Emacs 的 Merlin 官方文档 上查看它们的用法。

仍然需要帮助?

帮助改进我们的文档

所有 OCaml 文档都是开源的。看到有错误或不清楚的地方?提交拉取请求。

OCaml

创新。社区。安全。