rustowl:可视化Rust所有权VsCode插件

在 Rust 中可视化所有权和生命周期,以便进行调试和优化。

RustOwl 可视化了变量的所有权移动和生命周期。保存 Rust 源代码时,系统会对其进行分析,并将鼠标悬停在变量或函数调用上时,变量的所有权和生命周期会可视化。

RustOwl 使用下划线将它们可视化

绿色:变量的实际生命周期 蓝色:不可变借用 紫色:可变借用 橙色:值移动/函数调用 红色:生命周期错误 - 实际生命周期与预期生命周期之间的差异

目前,我们提供 VSCode 扩展、Neovim 插件和 Emacs 包。对于这些编辑器,将文本光标移到要检查的变量或函数调用上,等待 2 秒钟即可看到信息。我们cargo owlsp使用扩展协议实现了 LSP 服务器。因此,RustOwl 可以轻松地从其他编辑器中使用。

安装 RustOwl 要安装 RustOwl 命令,请运行以下命令。 curl -L "https://github.com/cordx56/rustowl/releases/download/v0.1.1/install.sh" | sh

VSCode插件 您可以从此链接安装 VSCode 扩展。 您还可以从此链接.vsix下载 VSCode 扩展文件( )。

先决条件

  • VSCode 已安装
  • 已安装 Node.js
  • yarn已安装
    • 安装Node.js后,您可以yarn通过运行来安装npm install -g yarn。
VSCode 扩展已在 arm64 架构的 macOS Sequoia 15.2 上进行了测试,测试版本包括 Visual Studio Code 1.96.4、Node.js v20.16.0 和yarn1.22.22。其他依赖项已锁定在配置文件中,将自动安装。

构建并运行 首先,安装依赖项。

cd vscode
yarn install --frozen-lockfile
然后vscode在 VSCode 中打开目录。

VSCode 右下角会出现安装推荐 VSCode 扩展的通知。单击安装按钮,等待安装完成,然后重新启动 VSCode。

再次打开vscode目录,F5在 VSCode 窗口中按下 键。将出现一个启用了扩展的新 VSCode 窗口。

在新的 VSCode 窗口中打开 Cargo 工作区目录。

当您保存 Rust 文件时,表示所有权和生命周期移动的装饰将出现在编辑器中。

怎么开始用 RustOwl 和 VSCode 需要准备的东西:

  1. 装好 curl 和 rustup。
  2. 装好 cargo。
  3. 装好 Visual Studio Code(简称 VSCode)。
测试环境:
  • 我们在苹果电脑(arm64 架构)的 macOS Sequoia 15.2 系统上,用 VSCode 1.96.4 和 rustup 1.27.1 测试过这个教程。
  • 我们还在 Ubuntu 25.04 系统(arm64 架构)上,用 VSCode 1.96.4 和 rustup 1.27.1 测试过。在 Ubuntu 上,你需要先运行 apt install build-essential 来装一些必要的工具。
  • 装好之后,当你保存任何 Rust 程序到 Cargo 工作区时,RustOwl 扩展会自动运行。第一次分析可能会花点时间,但第二次开始就会用缓存,速度会快很多。
  • 我们还在 Windows 11 Education 23H2 系统(amd64 架构)上测试过。在 Windows 上,你需要手动下载这个仓库并自己构建 RustOwl。
简单来说,就是教你怎么在电脑上装好工具,然后用 RustOwl 和 VSCode 来写 Rust 程序。