75 个稳定版本

2.2.2 2022年4月8日
2.2.1 2022年3月20日
2.2.0 2022年1月15日
2.1.48 2021年6月7日
0.0.1 2015年1月14日

#200开发工具

Download history 51/week @ 2024-04-22 46/week @ 2024-04-29 46/week @ 2024-05-06 80/week @ 2024-05-13 122/week @ 2024-05-20 133/week @ 2024-05-27 89/week @ 2024-06-03 71/week @ 2024-06-10 59/week @ 2024-06-17 42/week @ 2024-06-24 58/week @ 2024-07-01 121/week @ 2024-07-08 65/week @ 2024-07-15 138/week @ 2024-07-22 164/week @ 2024-07-29 35/week @ 2024-08-05

415 每月下载量
用于 3 个 Crates (2 直接)

MIT 许可证

400KB
11K SLoC

Racer - Rust 代码自动完成

Build Status

racer completion screenshot

racer eldoc screenshot

RACER = Rust Auto-Complete-er. 一个旨在为编辑器和 IDE 提供 Rust 代码自动完成的工具。也许有一天,'er' 部分会探索重构或其他功能。

免责声明

Racer 目前没有积极开发。请考虑使用更新的软件,如 rust-analyzer

安装

注意 从 2.1 版本开始,racer 需要 nightly rust

要求

当前 nightly Rust

如果你使用 rustup,运行

rustup toolchain install nightly
rustup component add rustc-dev --toolchain=nightly

注意:第二个命令将 rustc-dev 组件添加到 nightly 工具链,这是编译 Racer 所必需的。

Cargo

内部,racer 将 cargo 作为 CLI 工具调用,因此请确保已安装 cargo

使用 cargo install

只需运行

cargo+nightly install racer

如命令输出中所述,别忘了将安装目录添加到你的 PATH

从源代码

  1. 克隆仓库: git clone https://github.com/racer-rust/racer.git

  2. cd racer; cargo +nightly build --release. 二进制文件现在位于 ./target/release/racer

  3. 将二进制文件添加到您的 PATH 中。这可以通过将其移动到已存在于 PATH 中的目录(例如 /usr/local/bin)或将 ./target/release/ 目录添加到 PATH 来完成。

配置

  1. 通过 rustup 自动获取 Rust 源代码,并运行 rustup component add rust-src 以将源代码安装到 $(rustc --print sysroot)/lib/rustlib/src/rust/library(或在旧工具链中使用 $(rustc --print sysroot)/lib/rustlib/src/rust/src

    1. 如果您运行 rustup update,Rustup 将保持源代码与工具链同步。

    2. 从 git 手动获取:https://github.com/rust-lang/rust

    注意

    如果您想使用 racer 在多个发布渠道(Rust 有 3 个发布渠道:stablebetanightly)中,您还必须为每个安装的发布渠道下载 Rust 源代码。

    例如(rustup 情况)添加夜间工具链构建并安装夜间源代码

    rustuptoolchain add nightly

    rustupcomponent add rust-src

  2. (可选)设置环境变量 RUST_SRC_PATH 指向 Rust 源安装中的 'src' 目录,例如 % export RUST_SRC_PATH=$(rustc --print sysroot)/lib/rustlib/src/rust/library% export RUST_SRC_PATH="$(rustc --print sysroot)/lib/rustlib/src/rust/src"(旧版)

    建议设置 RUST_SRC_PATH 以提高速度,但如果不设置,racer 会自动检测它。

  3. 在命令行上测试

    racer complete std::io::B (应显示一些补全内容)

注意

为了在外部包中完成名称,Racer 需要 Cargo.lock。因此,当您在 Cargo.toml 中添加依赖项时,您必须运行构建命令,例如 cargo buildcargo test,以获取补全内容。

支持的编辑器/IDE

RLS

Racer 作为静态库在 RLS 中使用。

Eclipse 集成

Racer 可以通过使用 RustDT 与 Eclipse 一起使用。(用户指南链接在存储库描述中)

Emacs集成

Emacs集成已移动到独立的项目:[emacs-racer](https://github.com/racer-rust/emacs-racer "emacs-racer")。

Gedit集成

Gedit集成可在此找到:[gracer](https://github.com/isamert/gracer "gracer")。

Builder集成

GNOME Builder集成可在此找到:[bracer](https://github.com/deikatsuo/bracer "bracer")。

Kate集成

Kate社区维护了一个插件。它包含在Kate的最新版本中(与16.08版进行了测试 - 更多信息请见此处)。

  1. 在Kate配置对话框的插件列表中启用“Rust代码补全”;

  2. 在新“Rust代码补全”对话框页面上,确保“Racer命令”和“Rust源树位置”设置正确。

Sublime Text集成

Sublime Text社区维护了一些集成Racer的包

  • [RustAutoComplete](https://github.com/defuz/RustAutoComplete "RustAutoComplete")提供了自动完成和跳转到定义的功能。
  • [AnacondaRUST](https://github.com/DamnWidget/anaconda_rust "AnacondaRUST")来自anaconda插件系列,提供了自动完成、跳转到定义和显示文档的功能

Vim集成

Vim集成已移动到独立的项目:[vim-racer](https://github.com/racer-rust/vim-racer "vim-racer")。

Visual Studio Code扩展

Racer推荐基于RLS的官方Rust (rls)扩展,它使用Racer进行补全。

Atom集成

您可以在此处找到Atom的racer包

Kakoune集成

[Kakoune](https://github.com/mawww/kakoune "Kakoune")内置了racer自动完成集成。

依赖项

~4–13MB
~128K SLoC