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 在 开发工具
415 每月下载量
用于 3 个 Crates (2 直接)
400KB
11K SLoC
Racer - Rust 代码自动完成
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
。
从源代码
-
克隆仓库:
git clone https://github.com/racer-rust/racer.git
-
cd racer; cargo +nightly build --release
. 二进制文件现在位于./target/release/racer
-
将二进制文件添加到您的
PATH
中。这可以通过将其移动到已存在于PATH
中的目录(例如/usr/local/bin
)或将./target/release/
目录添加到PATH
来完成。
配置
-
通过 rustup 自动获取 Rust 源代码,并运行
rustup component add rust-src
以将源代码安装到$(rustc --print sysroot)/lib/rustlib/src/rust/library
(或在旧工具链中使用$(rustc --print sysroot)/lib/rustlib/src/rust/src
)-
如果您运行
rustup update
,Rustup 将保持源代码与工具链同步。 -
从 git 手动获取:https://github.com/rust-lang/rust
注意
如果您想使用
racer
在多个发布渠道(Rust 有 3 个发布渠道:stable
、beta
和nightly
)中,您还必须为每个安装的发布渠道下载 Rust 源代码。例如(rustup 情况)添加夜间工具链构建并安装夜间源代码
rustuptoolchain add nightly
rustupcomponent add rust-src
-
-
(可选)设置环境变量
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 会自动检测它。 -
在命令行上测试
racer complete std::io::B
(应显示一些补全内容)
注意
为了在外部包中完成名称,Racer 需要 Cargo.lock
。因此,当您在 Cargo.toml
中添加依赖项时,您必须运行构建命令,例如 cargo build
或 cargo 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版进行了测试 - 更多信息请见此处)。
-
在Kate配置对话框的插件列表中启用“Rust代码补全”;
-
在新“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