Rust Visual Studio Code 代码完成不起作用

Luk*_*kas 7 autocomplete rust visual-studio-code

我正在尝试学习 Rust 并为 VSCode 安装了 Rust 扩展。但我没有看到任何语法的自动完成。

我想打电话.trim()String但我没有完成。我读到 Rust 的完成度不是很好,但是语言服务器应该能够推荐可以在结构上调用的方法?

我还看到了一个教程,其中导师在 VSCode 中有自动完成功能,但我不知道他使用的是什么扩展。

我也在 WSL 中尝试过,并认为 WSL 是问题所在,但在安装了 GB 的 Visual Studio Build Tools 之后,它也无法在 Windows 上本地运行。

在此处输入图片说明

Lex*_*Lex 7

对我来说,解决方案是使用 Rust 分析器扩展https://marketplace.visualstudio.com/items?itemName=matklad.rust-analyzer 而不是https://marketplace.visualstudio.com/items?itemName=rust-lang.rust

  • 这对我不起作用:( (9认同)

小智 6

尽管使用了rust-analyzer扩展,我还是遇到了同样的问题。不知何故,我当前项目的Cargo.toml未链接到rust-analyzer的链接项目。

要链接它, Cargo.toml的路径必须出现在{project_root}/.vscode/settings.json中作为rust-analyzer.linkedProjects 的参数。在我的例子中,现在是这样的:

{
    "rust-analyzer.linkedProjects": [
        "./py-kernel-regression/Cargo.toml",
        "./Cargo.toml",
    ]
}
Run Code Online (Sandbox Code Playgroud)


Von*_*onC 3

正如在dustypomerleau/rust-syntax第4期中提到的,从2020年11月开始,该语法被合并到Rust Analyzer中,并且RA的语法在启动时会覆盖其他语法。

完成度应该会有所提高,因此microsoft/vscode问题 64488 “需要对 Rust lang 更好的语法支持”刚刚被关闭(2020 年 12 月)。