設定您的編輯器

雖然 toplevel 非常適合互動式地嘗試語言,但我們很快就需要使用編輯器來編寫 OCaml 檔案。我們已經安裝了增強 Merlin 的工具,Merlin 是我們選擇的支援 OCaml 的編輯器。Merlin 提供了諸如「跳到定義」、「顯示型別」和 ocaml-lsp-server 之類的所有功能,這是一個通過 LSP 伺服器將這些功能傳遞給編輯器的伺服器。OCaml 有許多編輯器的外掛程式,但維護最積極的外掛程式適用於 Visual Studio Code、Emacs 和 Vim。

Visual Studio Code

重點:在您的 opam switch 中安裝套件 ocaml-lsp-serverocamlformat

對於 VSCode,從 Visual Studio Marketplace 安裝 OCaml Platform Visual Studio Code 擴充功能。該擴充功能依賴於 OCaml LSP 和 OCamlFormat。要在您的 switch 中安裝它們,您可以執行

$ 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 命令可用,您可以在 Merlin 官方 Vim 文件上查看它們的用法。

Emacs

Emacs Type information

  • 在 Emacs 編輯器中,將游標放在變數上。
  • 使用鍵盤快捷鍵 Alt + x,然後輸入 merlin-type-enclosing
  • 型別資訊將顯示在迷你緩衝區中。Emacs 的其他 Merlin 命令可用,您可以在 Merlin 官方 Emacs 文件上查看它們的用法。

仍然需要協助嗎?

協助改善我們的文件

所有 OCaml 文件都是開放原始碼。發現有錯誤或不清楚的地方嗎?提交一個 Pull Request。

OCaml

創新。社群。安全。