• 作成:

EmacsのHaskell編集時のlsp-modeのおせっかいなスニペット展開を止める

問題

Emacsでlsp-haskellを使っている時に、関数や型コンストラクタをcompanyの補完から選んだ時、引数を型名表示でyasnippet形式で表示してくるのに困っていました。

まず、私は引数を考えてから適応する関数を変えることも多いので、関数名から入力しない場合が多く、その時のスニペットはかなりおせっかいでした。

また、レコードで初期化したい型コンストラクタも関数形式で出してくるため、一々キャンセルするのが面倒です。

無効化出来なかった

一見無効化するオプションである、 lsp-haskell-completion-snippets-onを、 nilにしていたのですが全く無効化されずに悩んでいました。

lsp-enable-snippetを設定する

いい加減イライラしてきたのでシンボル名を探っていた所、 lsp-enable-snippetと言うシンボルを見つけたので、これをnilにした所無事無効化出来ました。

サーバ側で有効無効にするオプションだけではなく、 UI側であるlsp-modeの無効オプションもいじらないといけなかったのですね。