在Visual Studio Code中,对于“ gtk-rs”等外部包装箱,Rust自动完成功能

Ang*_*gel 7 rust visual-studio-code

也许这个问题以前已经做过,但是我什么也找不到。

我想知道要执行哪些步骤,以便Visual Studio Code可以显示显示Rust方法等的自动完成窗口,例如,在使用ctrl+时space(在许多公共场合,编辑器中),我看到的是它适用于std但不适用gtk-rs

我想知道我是否必须以某种方式告诉您如何查找文件或类似的东西。

我不知道这是否取决于每个编辑器还是全部包含一些特定文件,我的IDE是Visual Studio Code。


...您忘记了包含已安装的扩展程序

适用于Visual Studio Code的kalitaalexey Rust

Rust Language Server integration.
Autocompletion (via racer or RLS).
Go To Definition (via racer or RLS).
Go To Symbol (via rustsym or RLS).
Code formatting (via rustfmt).
Code Snippets.
//..
Run Code Online (Sandbox Code Playgroud)

E_n*_*ate 7

尽管Visual Studio Code 中的Rust 扩展出现问题的原因可能有很多,但以下步骤应该可以帮助遇到此类问题的任何人:

  • 不要使用旧的扩展“Rusty Code”,因为它不再维护。相反,您有两个选择:
    • 官方rust-lang.rust扩展由官方 Rust 团队开发,专注于 Rust 语言服务器 (RLS) 集成。它正在积极开发中。
    • kalitaalexey.vscode锈延伸,从生锈的代码分叉,比当在传统模式下运行的官方扩展旧的,但可能更稳定。然而,它目前处于非常被动的维护之中。
  • 您可能需要构建您的项目,以便在本地下载和编译依赖项,从而使扩展能够检索有关它们的附加信息。每次修改依赖项列表时,请确保您的程序使用 声明它们extern crate,然后cargo build在您的项目上运行。如果代码命令可用,请按F1然后输入“build”并回车。也不要忘记在清理项目后构建。
  • 确保扩展是最新的并且配置正确总是值得的。更新扩展,并查看相应的文档以获取有关如何使其工作的说明。使用 kalitaalexey.vscode-rust 时,请参阅主要文档并使其在 Legacy 模式或使用 RLS 下工作。
  • RLS 在过去几年中取得了长足的进步,应该成为Visual Studio Code的默认选择。RLS 甚至可以通过Rustup从 IDE 自动安装。
  • 检查状态栏。如果有什么问题,它应该告诉你。打开扩展任务的输出窗口以获取错误消息。如果仍有问题,请尝试重新加载窗口。

如果在这些步骤之后仍然有问题,它实际上可能是一个错误,应该报告。


Lex*_*Lex 7

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

  • Rust 分析器扩展的工作还需要 rust 源包 (2认同)
  • 安装后我必须重新启动 VSCODE。 (2认同)