在 Ubuntu 的 VSCode 中配置 MATLAB
文章目录
在 Ubuntu 的 VSCode 中配置 MATLAB
装好 MATLAB 之后,你可能不想每次都打开那个笨重的 MATLAB 桌面——写个脚本、跑个函数,在 VSCode 里就能搞定。
MathWorks 官方提供了一个 VSCode 扩展:mathworks.language-matlab。装上之后,语法高亮、代码补全、运行调试、代码导航都有了。不过配置过程中有几个坑,这篇文章把它们讲清楚。
安装扩展
打开 VSCode,按 Ctrl+Shift+X 进入扩展市场,搜索 MATLAB,找到 MathWorks 官方出的那个(发布者是 MathWorks),点安装。
或者用命令行:
code --install-extension mathworks.language-matlab
配置 MATLAB 路径
扩展需要知道你的 MATLAB 装在哪里。如果你的 MATLAB 在系统 PATH 里,扩展能自动找到。但大多数情况下,MATLAB 不在 PATH 中,需要手动设置。
第一步,拿到你的 MATLAB 安装路径。 在 MATLAB 命令窗口里运行:
matlabroot
输出类似:
ans =
'/home/你的用户名/MATLAB/R2021b'
这个路径就是你 MATLAB 的安装根目录。记下来。
第二步,在 VSCode 里填写路径。 按 Ctrl+, 打开设置,搜索 MATLAB installPath,把上面的路径填进去。
也可以直接编辑配置文件。VSCode 的设置分两层:
- 用户设置(全局生效):
~/.config/Code/User/settings.json - 工作区设置(仅当前项目):
.vscode/settings.json
推荐写在工作区设置里,这样每个项目可以指向不同版本的 MATLAB:
{
"MATLAB.installPath": "/home/你的用户名/MATLAB/R2021b"
}
常见问题:设置后仍然显示 Not Connected
配好路径,打开 .m 文件,左下角却显示 MATLAB: Not Connected——这是最常见的问题。
排查顺序如下:
1. 路径写错了
MATLAB.installPath 必须指向 MATLAB 的安装根目录,不是 bin/ 目录,也不是 bin/matlab 可执行文件。
✓ /home/你的用户名/MATLAB/R2021b
✗ /home/你的用户名/MATLAB/R2021b/bin
✗ /home/你的用户名/MATLAB/R2021b/bin/matlab
用 matlabroot 命令返回的路径就是根目录,照着抄就行。
2. 用户设置覆盖了工作区设置
这是最容易被忽略的。
VSCode 的设置有优先级:用户设置 > 工作区设置。如果你在用户设置里填过一个旧的 MATLAB.installPath,工作区里怎么改都不会生效。
打开用户设置文件 ~/.config/Code/User/settings.json,搜索 MATLAB,看看有没有残留的旧路径。比如你可能看到:
"MATLAB.installPath": "/usr/local/MATLAB/R2017a"
这个路径根本不存在(也许是你装的另一个扩展、或者很久以前配的)。它会静默地覆盖工作区设置,导致扩展连不上 MATLAB。
改成正确的路径,或者直接删掉这行——让它从工作区设置里读。
3. 设置键的大小写
注意设置键是 MATLAB.installPath,M 是大写的。
市面上还有一些社区维护的 MATLAB 扩展,用的是小写的 matlab.installPath。两个键对应不同的扩展,不要搞混。如果你装过多个 MATLAB 相关的扩展,用户设置里可能同时存在两个键,检查一下都需要改。
4. MATLAB 版本太旧
这个扩展要求 MATLAB R2021b 或更新版本。R2021a 及更早的版本不支持。
如果你装的是 R2017a 这样的老版本,扩展永远连不上——不是配置问题,是版本不兼容。
配置成功后
打开任意 .m 文件,扩展会自动在后台启动 MATLAB。等几秒钟(第一次会慢一些),左下角显示 MATLAB: Connected 就说明配好了。
这时候你可以:
- 运行脚本:点击文件右上角的运行按钮,或按
Ctrl+Enter在 MATLAB 终端中执行当前行 - 代码补全:输入函数名的前几个字母,自动提示
- 代码分析:实时检查语法和潜在问题
- 调试:在行号左侧点击设断点,按 F5 启动调试
如果连接失败,按 Ctrl+Shift+U 打开输出面板,下拉选 MATLAB,里面会有详细的错误日志。
推荐的完整工作区配置
除了 MATLAB.installPath,还有几个设置值得配一下:
{
"MATLAB.installPath": "/home/你的用户名/MATLAB/R2021b",
"MATLAB.matlabConnectionTiming": "onDemand",
"MATLAB.showFeatureNotAvailableError": true,
"MATLAB.telemetry": false
}
| 设置 | 说明 |
|---|---|
matlabConnectionTiming |
onStart(默认)打开 .m 文件就启动 MATLAB;onDemand 只在需要时启动;never 永不启动。如果 MATLAB 启动慢,改成 onDemand 能让 VSCode 启动更快 |
showFeatureNotAvailableError |
设为 true,连不上时会弹错误提示,方便排查 |
telemetry |
关闭后不再向 MathWorks 发送使用数据 |
总结
在 VSCode 里配置 MATLAB,核心就一件事:把 MATLAB.installPath 设对。
但容易栽跟头的地方在于:用户设置和工作区设置会冲突,旧路径会静默覆盖新路径,大小写不同的设置键对应不同的扩展。把这几个地方检查一遍,MATLAB: Connected 就出来了。
更多推荐
所有评论(0)