RustaceanVim 项目技术文档
1. 安装指南
1.1 前提条件
必需
neovim >= 0.10
rust-analyzer
可选
dot
fromgraphviz
,用于 crate 图。cargo
,对于 Cargo 项目是必需的。- 调试适配器(例如
lldb
或codelldb
)和nvim-dap
,用于调试。 - Rust 的 tree-sitter 解析器,用于
:Rustc unpretty
命令。可以通过nvim-treesitter
安装。
1.2 安装方法
使用 rocks.nvim
:Rocks install rustaceanvim
使用 lazy.nvim
{
'mrcjkb/rustaceanvim',
version = '^5', -- 推荐
lazy = false, -- 该插件已经是懒加载的
}
使用 Nix
对于启用了 flakes 的 Nix 用户,该项目提供了一个包和一个 overlay。也可以在 nixpkgs
中找到。
2. 项目使用说明
2.1 快速设置
该插件会自动配置 rust-analyzer
内置的 LSP 客户端,并与其他 Rust 工具集成。无需手动调用 setup
函数或进行任何配置。
2.2 功能与使用
调试
debuggables
:打开一个提示,从中选择可用的目标。debug
:在当前光标位置搜索目标。
:RustLsp[!] debuggables {args[]}?
:RustLsp[!] debug {args[]}?
vim.cmd.RustLsp('debug')
vim.cmd.RustLsp('debuggables')
Runnables
runnables
:打开一个提示,从中选择可用的目标。run
:在当前光标位置搜索目标。
:RustLsp[!] runnables {args[]}?
:RustLsp[!] run {args[]}?
vim.cmd.RustLsp('run')
vim.cmd.RustLsp('runnables')
Testables 和失败测试诊断
testables
:打开一个提示,从中选择可用的目标。
:RustLsp[!] testables {args[]}?
vim.cmd.RustLsp('testables')
Neotest 集成
该插件提供了一个 neotest
适配器,可以按如下方式添加到 neotest
中:
require('neotest').setup {
adapters = {
require('rustaceanvim.neotest')
},
}
3. 项目API使用文档
3.1 主要API
RustLsp
:用于执行与rust-analyzer
相关的命令。debuggables
:列出可调试的目标。debug
:调试当前光标位置的目标。runnables
:列出可运行的目标。run
:运行当前光标位置的目标。testables
:列出可测试的目标。
3.2 配置选项
vim.g.rustaceanvim.dap.autoload_configurations
:是否自动加载调试配置。vim.g.rustaceanvim.tools.test_executor
:测试执行器类型。
4. 项目安装方式
4.1 使用 rocks.nvim
:Rocks install rustaceanvim
4.2 使用 lazy.nvim
{
'mrcjkb/rustaceanvim',
version = '^5', -- 推荐
lazy = false, -- 该插件已经是懒加载的
}
4.3 使用 Nix
对于启用了 flakes 的 Nix 用户,该项目提供了一个包和一个 overlay。也可以在 nixpkgs
中找到。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考