How to get vscode editor to work like Ryan Levick's

I currently have done the following to set up vscode. FTR, I'm not a huge fan of vscode. I prefer neovim first, then jetbeans. I love neovim, but I can't find anything out of the box that gives me the experience I see when Ryan's videos show what his vscode does. I can't get goland (my version of jetbeans) to configure proper hints, overlays, etc to work like Ryan's either, so I'll capitulate and go with vscode.

In vscode, I've installed and enabled the "Rust" extension and disabled the built-in rust extension thinking this would help. I get more out of that than the default, but I still don't get proper inlays or overlays like his specifically for mouse-ver showing documentation on common idioms and inlays. Perhaps it's because I don't have the correct options set in settings.json for rust.

Would someone please points me in the right direction of documentation or sample settings that helps? I know many may not know Ryan but he seems like a big name in the Rust community. I apologize. I've only been learning Rust for about four days now. TIA!

I don't know what "Ryan's videos" show (when describing things like that, including a link is helpful), but the VS Code extension you should almost certainly be installing is the one named "rust-analyzer" (matklad.rust-analyzer).

Did you see

?

1 Like

No! I was not aware of this neovim project. I'll take a look.

Great! So is there anything I need to do besides installing it because I have tried this and for whatever reason, it doesn't provide all the things. If need be, I can be more specific. I just need to go back to it and test things to articulate what does and doesn't work.

VS Code + rust-analyzer should automatically provide mouseover documentation and inlays as you mentioned in your first post. Possible problems:

  • If you have a Rust source file that is not part of a Cargo project — not a file that the compiler would check when you run cargo check — then you will not get error checking or type-based popups/completion. You need the proper project structure: a Cargo.toml, a src/lib.rs or src/main.rs, and mods for each additional file.
  • If you're looking for error messages displayed inline, that's the popular Error Lens extension, not RA.

so in fact I did. I followed the links in that blog, though, to the github page and am playing around with some of that. Turns out I already found some stuff that gave me a few of the thing I'd been looking for (inlays), but overlays have never worked. I'll continue messing around with it. Found the following conversation which was interesting but not sure it's related to my issue: https://www.reddit.com/r/rust/comments/u2nm0y/rustanalyzer_is_now_official_github_repo_moved_to/