1 个不稳定版本
使用旧的 Rust 2015
0.1.0 | 2018 年 8 月 27 日 |
---|
1604 在 Rust 模式 中排名 #1604
每月下载 224 次
在 3 个包中使用(通过 racer-cargo-metadata)
5KB
103 行
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
来完成
配置
-
获取 Rust 源代码
-
通过 rustup 自动安装,并运行
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
注意
如果你想在多个发布渠道(Rust 有 3 个发布渠道:
stable
、beta
和nightly
)中使用racer
,你必须为安装的每个发布渠道下载 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 集成
通过使用 RustDT,Racer 可以与 Eclipse 集成。 (用户指南在存储库描述中链接)
Emacs 集成
Emacs 集成已转移到单独的项目: emacs-racer。
Gedit 集成
可以在 这里 找到 Gedit 集成。
Builder 集成
可以在 这里 找到 Gnome Builder 集成。
Kate 集成
Kate 社区维护了一个插件。它包含在 Kate 的最新版本中(与 16.08 版本进行了测试 - 更多信息请见这里)。
-
在 Kate 配置对话框的插件列表中启用“Rust 代码补全”。
-
在新“Rust 代码补全”对话框页面上,确保“Racer 命令”和“Rust 源树位置”设置正确。
Sublime Text 集成
Sublime Text 社区维护了一些集成 Racer 的软件包。
- RustAutoComplete 提供自动补全和跳转到定义的功能。
- AnacondaRUST 来自 anaconda 插件系列,提供自动补全、跳转到定义和显示文档的功能。
Vim 集成
Vim 集成已被移至独立项目:vim-racer。
Visual Studio Code 扩展
Racer 推荐基于 RLS 的官方 Rust (rls)
扩展,该扩展使用 Racer 进行补全。
Atom 集成
您可以在这里找到 Atom 的 racer 包。
Kakoune 集成
Kakoune 内置了 racer 自动补全的集成。
lib.rs
:
string interner 与 cargo::core::interning.rs 相同,但具有线程局部和可序列化功能。
依赖项
~110–355KB