Sublime Text 可通过插件和正确工具链配置实现 Rust 开发:需安装 cargo、rustfmt(cargo install rustfmt)、rust-analyzer(非 cargo install),禁用已弃用的 rls;推荐 SublimeLinter-rust 做语法检查,RustEnhanced 实现保存自动格式化,LSP 插件配合 rust-analyzer 提供语义功能。
Sublime Text 本身不内置 Rust 支持,但通过插件 + 正确的工具链配置,完全可以胜任日常 Rust 编写、语法高亮、保存自动格式化和基础错误提示。关键不在“装多少插件”,而在于 cargo 和 rustfmt 是否可用、rls 是否弃用、以及 Sublime 插件是否匹配当前 Rust 工具链版本。
确认本地 Rust 工具链已安装且可用
所有 Sublime 插件都依赖命令行工具。如果 cargo 或 rustc 找不到,插件会静默失效。
- 在终端运行
cargo --version和rustc --version,确保输出正常 -
rustfmt必须显式安装:cargo install rustfmt(Rust 1.75+ 默认不自带) - 不要装
rls—— 它已被官方弃用,Rust 1.60+ 起全面转向rust-analyzer - 如需语义补全/跳转/诊断,必须单独下载并运行
rust-analyzer二进制(非 cargo install),并确保它在$PATH中可执行
安装并配置 SublimeLinter-rust
这是最轻量、最稳定的 Rust 语法与编译检查方案,底层调用 cargo check,不依赖 LSP。
- 用 Package Control 安装
SublimeLinter和SublimeLinter-rust - 确保
SublimeLinter-rust的 lint mode 设为load_save(默认),避免编辑时高频触发 - 若报错 “No such file or directory: cargo”,需在 SublimeLinter 设置中显式指定
cargo路径,例如:"paths": {"linux": ["/home/username/.cargo/bin"], "osx": ["/Users/username/.cargo/bin"]} - 它不会检查未保存文件,也不会提示
rustfmt格式问题 —— 这是设计使然,不是 bug
用 RustEnhanced 实现保存自动格式化
RustEnhanced 是目前 Sublime 上对 Rust 支持最完整的插件包,包含构建、运行、格式化、代码片段等,但默认不启用 rustfmt。