## 前提 以下がインストールされている。 - [[nvim-lspconfig]] - [[rust-analyzer]] - [[Clippy]] - [[rustfmt]] ## rust-analyzerの設定 [[nvim-lspconfig]]で[[rust-analyzer]]を設定する。 > [nvim-lspconfig/doc/server_configurations.md#rust_analyzer](https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#rust_analyzer) ### [[リンター]]には[[Clippy]]を使う ```lua local lspconfig = require("lspconfig") lspconfig.rust_analyzer.setup({ settings = { ["rust-analyzer"] = { check = { command = "clippy", }, }, }, }) ``` ### ファイル保存時に自動フォーマット [[rust-analyzer]] (内部的には[[rustfmt]]) を使ってフォーマットする。[[rust-analyzer]]の設定はデフォルトがフォーマット機能有効のため、そのままで問題ない。 あとは、[[ファイルが保存されたら自動フォーマット (nvim-lspconfig)|ファイルが保存されたら自動フォーマット]]されるように設定する。 ## 参考 - [rust\-analyzer/docs/user/generated\_config\.adoc at master · rust\-lang/rust\-analyzer](https://github.com/rust-lang/rust-analyzer/blob/master/docs/user/generated_config.adoc) - [nvim\-lspconfig/doc/server\_configurations\.md at master · neovim/nvim\-lspconfig](https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#rust_analyzer)