emacsにrusticを入れ、rustのlanguage server(rls)で補完ができるようにした
当初はrust-modeをインストールしていたが、その後rusticというrust-modeをforkして拡張したパッケージがあることを知り、物は試しで、rusticを入れてみた
しかし、補完が効かない...
エコー領域にServer rls:4324 status:starting exited with status exit. Do you want to restart it? (y or n)
と表示されるので、y
を押してみるが、同じ表示が繰り返し出るだけ...
そもそも、rlsってなんなんだ。と思い調べてみて下記のことが分かった
- rlsはrustのlanguage-server実装である
- language serverとはマイクロソフトが提案したIDEが提供する言語サポート機能のプロトコル
rusticのページをみてみると、標準でlanguage-serverのクライアントとして、lsp-modeというものが設定されていると書いてある。lsp-modeのパッケージがインストールされているか確認してみると、インストール済であった。サーバーの実態が存在しないのかな?と思い、とりあえず下記のページに記載のコマンドを打ち込んでみた。
emacsを再起動すると先ほどのエラーは表示されなくなった。補完も効いている。