如何在 VSCode 中使用 rust-analyzer 打字时启用实时 linting?

问题描述

我在 VSCode 中有 rust-analyzer 扩展。

在设置中,我只将 Rust-analyzer › Check On Save: Commandcheck 更改为 clippy(这应该无关紧要)。

问题是我输入时没有看到错误,只有在我保存之后。

输入(没有错误):

typing

已保存(可以看到错误):

saved

可以改吗?

解决方法

问题是我输入时没有看到错误,只有在我保存之后。

Rust-analyzer 不支持实时 linting(还没有?)。

简而言之,rust-analyzer 本质上是运行 cargo check。对于小型项目,这可能非常快。但是,随着项目规模的增加,这可能需要更多的时间,这使得实时检查变得不可行。

另见 issue #4185 上的 "Drawbacks""First Release" post


您可以做的下一个最好的事情(正如您已经知道的)是使用“检查保存”:

"rust-analyzer.checkOnSave.enable": true

(在 VSCode 扩展中默认启用)