visual-studio-coderustrust-analyzer

How to enable real-time linting while typing with rust-analyzer in VSCode?


I have rust-analyzer extension in VSCode.

In settings I only changed Rust-analyzer › Check On Save: Command from check to clippy (this shouldn't matter).

Problem is I don't see errors when I type, only after I save.

Typed (no error):

typing

Saved (can see error):

saved

Can it be changed?


Solution

  • Problem is I don't see errors when I type, only after I save.

    Rust-analyzer does not support real-time linting (yet?).

    In short, rust-analyzer essentially runs cargo check. For small projects this can be quite fast. However, as project sizes increase, this can take significantly more time, which makes it unfeasible to check in real-time.

    See also issue #4185 and "Drawbacks" on the "First Release" post.


    The next best thing you can do (as you already know), is to use "check on save":

    "rust-analyzer.checkOnSave.enable": true
    

    (which is enabled by default in the VSCode extension)