Sublime Text 配置 Rust 的核心是环境变量透传、working_dir 正确、语法识别激活;需从终端启动或配置系统 PATH,手动设置 Rust 语法,构建系统用 "${project_path:${folder}}" 并配 file_regex 实现错误跳转。

Sublime Text 本身不编译 Rust,它只调用 cargo 或 rustc;配置失败的根源几乎全是环境变量没透传、working_dir 错位、或语法识别失效——不是插件装少了,而是关键链路断了。
Sublime 控制台里 cargo --version 报错?先查 PATH
终端能跑 ≠ Sublime 能调用。Sublime 启动时读的是自己的环境变量,不加载 ~/.zshrc 或系统 PATH 设置。
- 按
Ctrl+`打开控制台,执行:import os; print(os.environ.get('PATH')) - 确认输出中含
.cargo/bin(macOS/Linux)或%USERPROFILE%.cargoin(Windows) - macOS/Linux:别只改 shell 配置,还要从终端启动:
subl .;或把~/.cargo/bin加进/etc/paths - Windows:必须把路径加进「系统环境变量」(不是用户变量),加完彻底退出 Sublime(右键任务栏 → 退出),再重开
右下角显示 Plain Text?Rust 语法根本没激活
Sublime 全靠这个标识匹配 source.rust,语法高亮、构建系统、LSP 补全都依赖它。选错就全挂。
- 打开任意
.rs文件,点右下角状态栏(显示Plain Text的地方),手动选Rust - 如果列表里没有
Rust,说明插件没加载:用 Package Control 安装Rust(by rust-lang),**不是**RustEnhanced;二者共存会卡死状态栏 - 装完后进
View → Syntax → Rust → Rust,设为默认;.rs文件不会自动识别,不手动切就永远是纯文本
构建系统报 no Cargo.toml file found?working_dir 指错了
cargo run 必须在含 Cargo.toml 的目录下执行,而 Sublime 默认 ${file_path} 是当前文件所在目录(比如 src/),不是项目根。
- 构建系统 JSON 中必须写:
"working_dir": "${project_path:${folder}}",不能写"${file_path}" - 打开项目时,用
File → Open Folder加载整个文件夹(含Cargo.toml),别只双击单个.rs文件 - 右键标签页 →
Reveal in Side Bar确认当前视图是否在项目根目录层级 - 单文件快速测试?别用
cargo run,改用:"shell_cmd": "rustc $file_name -o ${file_base_name}"
错误信息不能双击跳转?file_regex 没配或格式错
rustc/cargo 错误典型格式是:src/main.rs:2:5: error[E0308]: mismatched types,不配正则就只是静态日志。
- 构建系统中加:
"file_regex": "^(.+):([0-9]+):([0-9]+):\s*(.*)$"(注意反斜杠要双写) - 漏掉这行,所有错误都失去可操作性;
shell_cmd推荐用"cargo run"而非"cmd",前者走 shell,能复用 PATH 和别名 - Windows 上空格路径容易崩,
"shell": true是最稳妥的兜底方案
最容易被忽略的点:rust-analyzer 不再支持 cargo install,必须手动下载二进制、放固定路径、并在 LSP 设置中用绝对路径写 "command";否则 client not started 不是插件问题,是根本找不到可执行文件。











