新闻详情

新闻详情

首页 / 资讯中心 / 详情

VS Code 配置 MATLAB in Ubuntu 18.04:settings.json 与 Code Runner 实战

发布时间:2026/11/15 5:02:33来源:尧图网络
VS Code 配置 MATLAB in Ubuntu 18.04:settings.json 与 Code Runner 实战
1. Ubuntu 18.04 下 VS Code 跑 MATLAB 脚本卡在哪一步如果你在 Ubuntu 18.04 上写 MATLAB 脚本大概率会遇到一个尴尬局面MATLAB 自带的编辑器启动慢、占内存而 VS Code 轻快好用却不知道怎么把.m文件跑起来。搜「VS Code matlab Ubuntu」出来的教程要么只讲装插件要么 settings.json 片段残缺复制进去报一堆路径错误。这篇就把整条链路走通从插件选择、settings.json 骨架、Code Runner 自定义命令到终端输出验证和常见报错排查全部给可复制的配置。先说清楚这套方案适合谁。你本地已经装了 MATLABR2018a 或相近版本都行日常写的是脚本级.m文件不需要 Simulink 图形建模只想在 VS Code 里编辑、一键运行、看终端输出。这个场景下VS Code Code Runner MATLAB 官方扩展的组合完全够用而且比开完整 IDE 省资源。核心检索词就三个VS Code、MATLAB、Ubuntu 18.04围绕它们把配置讲透。需要提前说明的是MATLAB 本体必须已经正确安装并能从终端调用。判断方法很简单打开终端敲matlab -help如果能看到帮助信息说明环境变量没问题如果提示 command not found那得先把 MATLAB 的 bin 目录加进 PATH这一步不解决后面 VS Code 怎么配都跑不起来。2. 前置准备插件、MATLAB 路径与 TaoToken 接入2.1 两个必装插件在 VS Code 扩展面板里搜两个东西。第一个是Code Runner作者是 Jun Han它负责提供右上角那个三角形运行按钮并且支持自定义每种语言的执行命令。第二个是Matlab Extension Pack这是一个扩展包装完会带上语法高亮、代码片段、linter 等一整套.m文件打开就有颜色不再是白板。装完插件先别急着配确认一下 MATLAB 的真实路径。Ubuntu 18.04 上常见安装位置是/usr/local/MATLAB/R2018a/bin/里面有个matlab可执行文件同级的glnxa64目录里有 linter 相关的东西。你可以用这两条命令确认which matlab ls /usr/local/MATLAB/R2018a/bin/glnxa64 | head第一条输出/usr/local/bin/matlab之类的软链路径第二条能列出glnxa64下的文件说明路径有效。把这两个路径记下来settings.json 里要用。2.2 如果你还想在 VS Code 里调模型辅助写代码写 MATLAB 脚本时经常需要查语法、生成测试数据、解释报错。我平时会在 VS Code 旁边开一个模型对话窗口把报错信息贴进去让它分析。TaoToken 提供统一的 API 接入官网在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 端点是 https://taotoken.net/api 。如果你打算长期在 VS Code 里做编码和 Agent 类工作可以看 Coding Plan 页面 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 只是临时验证某个模型效果用模型对话 https://taotoken.net/models?utm_sourcetaotoken_aicg_blog_endutm_contentmodelsutm_campaignrewrite 就够了。这部分和 MATLAB 配置是两条独立线按需取用。3. settings.json 骨架与 Code Runner 自定义命令3.1 打开 settings.json 的正确姿势不要用图形设置界面一个个点直接编辑 JSON 最快。按CtrlShiftP打开命令面板输入settings.json选中Preferences: Open Settings (JSON)。这样打开的是用户级配置对所有项目生效。如果你只想给当前 MATLAB 项目单独配就选Open Workspace Settings (JSON)。打开后是一个大括号包起来的 JSON。把下面这段合并进去注意 JSON 不允许尾随逗号已有内容别重复键{ matlab.mlintpath: /usr/local/MATLAB/R2018a/bin/glnxa64, matlab.matlabpath: /usr/local/bin/matlab, matlab.linterEncoding: utf8, files.associations: { *.m: matlab }, code-runner.executorMap: { matlab: cd $dir matlab -nosplash -nodesktop -r $fileNameWithoutExt }, code-runner.runInTerminal: true, code-runner.saveFileBeforeRun: true }逐项解释一下。matlab.mlintpath指向 linter 所在目录写错会导致波浪线报错乱飘。matlab.matlabpath是可执行文件路径用which matlab的结果填。matlab.linterEncoding设成 utf8避免中文注释被误判成语法错误。files.associations把.m关联到 matlab 语言模式这样 Code Runner 才知道用哪条命令。code-runner.executorMap是核心cd $dir先切到脚本所在目录-nosplash跳过启动画面-nodesktop不开图形界面-r后面跟不带扩展名的文件名直接执行。runInTerminal设 true输出才会进 VS Code 集成终端方便看结果和报错。saveFileBeforeRun保证运行前自动保存省得改了没存跑的是旧代码。3.2 路径不对时的两种改法如果你 MATLAB 装在别的地方比如/opt/MATLAB/R2020b那就把两处路径都换掉。还有一种情况是which matlab输出的是软链比如/usr/local/bin/matlab这个可以直接用MATLAB 自己会解析到真实安装目录。但mlintpath必须指向真实的glnxa64目录软链不行这点容易踩坑。改完CtrlS保存。如果 JSON 有语法错误VS Code 右下角会标红鼠标悬停能看到具体哪一行按提示修就行。4. 验证请求跑一个脚本看终端输出4.1 写个最小测试脚本新建一个test_run.m内容如下% test_run.m disp(Hello from MATLAB in VS Code); a 1:5; b a.^2; fprintf(平方结果: %s\n, mat2str(b));这段脚本做了三件事打印一行字、生成 1 到 5 的向量、算平方并格式化输出。用它验证运行链路和中文输出是否正常。4.2 用 Code Runner 运行在编辑器里打开这个文件点右上角的三角形按钮或者按CtrlAltN。VS Code 底部会弹出集成终端你应该看到类似这样的输出[Running] cd /home/user/matlab_demo matlab -nosplash -nodesktop -r test_run Hello from MATLAB in VS Code 平方结果: [1 4 9 16 25] [Done] exited with code0 in 3.2 seconds看到exited with code0就说明整条链路通了。如果中文显示成乱码检查matlab.linterEncoding是不是 utf8以及终端本身的编码设置。如果卡在[Running]不动多半是 MATLAB 启动慢第一次运行要等几秒属正常。4.3 验证 linter 是否生效故意写一行错误代码比如x [1 2 3少个右括号保存后看有没有红色波浪线。有波浪线说明mlintpath配对了。如果没反应把鼠标移到问题行看是否提示找不到 mlint那就回去检查路径。5. 本篇常见错排查5.1 command not found: matlab终端里跑matlab提示找不到命令。这是 PATH 没配好和 VS Code 无关。在~/.bashrc末尾加一行export PATH$PATH:/usr/local/MATLAB/R2018a/bin然后source ~/.bashrc生效。注意 Code Runner 用的是登录 shell 还是非登录 shell 会影响 PATH 加载如果 VS Code 里还是找不到把code-runner.executorMap里的matlab换成绝对路径/usr/local/MATLAB/R2018a/bin/matlab最稳妥。5.2 运行后没有输出直接 Done常见原因是-r后面的文件名带了扩展名。matlab -r test_run.m是错的必须写test_run。另外脚本里如果有clear all或close all放在开头一般不影响但如果脚本本身有语法错误MATLAB 会静默退出终端只显示 Done。这时候手动在终端跑一遍matlab -nosplash -nodesktop -r test_run看真实报错。5.3 linter 报一堆莫名其妙的错多半是mlintpath指错了目录或者linterEncoding没设 utf8 导致中文注释被当成非法字符。还有一种情况是 MATLAB 版本和扩展不匹配R2018a 比较老如果扩展更新到很新的版本可能不兼容可以在扩展页面选择安装旧版本。5.4 Code Runner 输出乱码集成终端默认编码可能不是 UTF-8。在 settings.json 里加terminal.integrated.defaultProfile.linux相关配置或者直接在终端里执行export LANGen_US.UTF-8测试。更彻底的办法是把 MATLAB 脚本里的中文输出改成英文排除编码干扰后再逐步加回中文。5.5 想调试而不是运行Code Runner 只负责跑不负责断点调试。如果你需要单步调试得用 MATLAB 官方的 Debugger 配置在.vscode/launch.json里配type: matlab指定matlabpath和程序入口。这是另一条链路本篇聚焦运行验证调试配置可以后续单独展开。6. 把配置固化下来下次直接复用整套配置的核心就三块插件装对、路径填对、executorMap 写对。settings.json 那段可以直接复制到任何一台 Ubuntu 18.04 机器上只需要改两个路径。我建议把这段配置存成一个matlab-settings.json放在 dotfiles 仓库里换机器时直接合并省得重新查路径。如果你在配置过程中遇到模型相关的辅助需求比如让模型帮你解释 MATLAB 报错、生成测试用例可以走 API Keys 页面 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite 拿 Key接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 。长期在 VS Code 里做编码和 Agent 工作流的话Coding Plan https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 会更合适。这些和 MATLAB 运行环境互不干扰按自己的实际需要取用即可。最后留一个实用技巧在code-runner.executorMap里给 matlab 命令加上-batch参数R2019a 以后支持可以避免某些版本-r执行完不自动退出的问题。老版本 R2018a 就用-r配合脚本末尾的exit语句效果一样。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

【外设】之大彩串口显示屏 2026/11/15 4:54:16

【外设】之大彩串口显示屏

大彩串口屏初步使用 1 .官网下载 STM32 屏幕 GUI 设计资料 http://www.gz-dc.com/category/typeid/4112 找到 STM32 Keil 工程,移植相关代码因项目而异进行移植,由于项目简单,本人只对用到的指令接口进行修改。 比如:注意事项&…

阅读更多 →
无法下载Windows系统iso文件 2026/11/15 2:04:12

无法下载Windows系统iso文件

当我遇到这个问题的时候,我打开了一个网站: 登录 然后我打算下载的时候: 突然那个官方的连接就可以下载了:

阅读更多 →
【清华代码熊】DeepSeek V4.1 Flash 后训练详解 2026/11/14 10:11:15

【清华代码熊】DeepSeek V4.1 Flash 后训练详解

📌 上期解析了 DeepSeek V4.1 Flash 模型架构改进,本期解析 DeepSeek V4.1 Flash 预训练/后训练技术: 🌟 预训练:45T 文本 多模态混合语料、直接训练 sparse attention(取消 DeepSeek V4 的 dense 冷启动&…

阅读更多 →
Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ... 2026/11/14 17:14:38

Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ...

文章主要内容和创新点 主要内容 本文聚焦于多模态大语言模型(MLLM)强化学习(RL)训练中的效率问题,提出了一个名为Shuffle-R1的框架。研究发现,当前RL训练存在两个关键缺陷: 优势值坍缩(Advantage Collapsing):批次中大多数优势值集中在零附近,导致有效梯度信号被淹…

阅读更多 →
PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction 2026/11/14 16:35:50

PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction

一、文章主要内容总结 本文聚焦于利用大型语言模型(LLMs)实现个人身份信息(PII)脱敏的研究,旨在解决传统脱敏方法(如基于规则的系统、领域特定命名实体识别(NER)模型)泛化能力差、跨格式/跨语境适应性弱的问题。 研究通过全面评估多种LLM架构(包括密集型LLM(D-LLM…

阅读更多 →
LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model 2026/11/15 4:06:36

LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model

文章主要内容和创新点 主要内容 本文聚焦于二进制图像-文本相关性评估任务(判断图像与文本“相关”或“不相关”),针对该任务中文本格式多样、相关性定义随场景变化等挑战,提出了基于多模态大语言模型(MLLM)的解决方案LLaVA-RE。 模型设计:LLaVA-RE基于LLaVA 1.5架构,…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉