htsign's blog

ノンジャンルで書くつもりだけど技術系が多いんじゃないかと思います

VSCode for Windows で OCaml の言語サポートを有効にする

Cygwin 入れたくない勢です。
WSL環境内で使う分にはややこしいことしなくても Linux用の手順でOKですが、以下はあくまでWSL外のWindows環境で OCaml の言語サポートを有効にしたい場合に踏みたい手順です。

前提

  • WSL2 有効化済み
  • VSCode 1.76.2
  • opam 2.1.2

手順

  1. OCaml PlatformVSCode にインストール
  2. ターミナルで OCaml 5.0 を有効にする
    • $ opam switch create 5.0.0
      
  3. 必要パッケージをインストール
    • $ opam install ocaml-lsp-server ocamlformat
      
  4. VSCode で環境を選択する
    • Language Server を有効にする
      1. Ocaml: Select a Sandbox for this Workspace を選択
      2. Custom を選択
      3. wsl $prog $args と入力する
    • REPL を有効にする
      1. Ctrl + , で設定を開き以下を設定する
        • 以下のような感じに

          "ocaml.repl.path": "wsl",
          "ocaml.repl.args": ["ocaml"],
          

以上でOK

でも補完はなぜか出ませんでした。残念。
ホバーすればシグネチャは確認できるので、そこから手動で入れるってことはできそうです。妥協点かな…。


残念なことにディレクトリに展開されたファイルでないと補完されたり型チェックしたりはできないみたいです。
※ 新規ファイルは一度保存しないとダメっぽい


素直に WSL上で開発する場合はLensも出るし補完も効くので、わざわざどうしても Windowsで開発したいって場合以外は需要ないと思いますし、そもそも WSL上の ocamllsp に問い合わせてるので、尚更 Windows上でやる意味がないですね。

WSLに全く依存せずにやりたい場合は、やはり Cygwin に頼るのが一番手っ取り早そうです。
まぁ一発ネタということで…。