私はEmacs でMerlinを使用 して OCaml コードを編集しています。通常は問題なく動作しますが、次の問題が発生しました。
OCaml にネイティブではないいくつかのキーワードを追加する、他の誰かが作成したパッケージを使用する必要があります。パッケージを使用してコードをコンパイルするため、コンパイルはうまく機能します。一方、マーリンは頭がおかしくなり、新しいキーワードはエラーだと思います。幸いなことに、新しいキーワードは行の先頭にしか表示されないため、私のコードは次のようになります。
let square x = x * x;;
let rec fact x =
if x <= 1 then 1 else x * fact (x - 1);;
FOO "This syntax is not standard Ocaml" square fact;;
FOO
新しいキーワードはどこにありますか。マーリンは文句を言って言いUnbound constructor FOO
ます。問題は、マーリンにその行を無視させることができるかということです。または、Merlin が文句を言わない何かで構文をラップするハックを考えられますか?