配置Sublime Text作为Matlab的编辑器


最近使用Matlab时发现它自带的编辑器不太好用,特别是在不同平台切换时会出现编码错误。
例如Matlab 2014a,在Ubuntu平台采用UTF-8编码,但在Windows平台采用的却是GBK编码。这样在不同平台切换时就会产生乱码。虽然Matlab自带的编辑器也能在一定程度上解决这个问题,但没有Sublime方便。
因此,我打算使用Sublime来作为Matlab的编辑器。经过网上搜索和自我摸索,最终实现了Sublime编辑+Matlab命令行(terminal)运行的开发环境搭建。

前期准备

  • Matlab 2014a (Windows或Linux平台,这里以Win10和Ubuntu 16.04为例)。有关安装过程这里不再赘述。
  • Sublime Text 3

配置过程

1. 新建Build System

在Sublime中选择Tools -> Build System -> New Build System,系统会创建一个JSON文件,根据不同系统输入以下内容:

Win10
{
    "cmd": ["E:/Softwares/MATLAB/R2014a/bin/matlab.exe", "-nodesktop", "-nosplash", "-r", "\"run('$file')\""],
    "selector": "source.m",
    "working_dir": "${project_path:${folder}}"
}
Ubuntu 16.04
{
    "cmd": ["gnome-terminal -x bash -c \"matlab -nosplash -nodesktop -r ${file_base_name}; exec bash\""],
    "selector":"source.m",
    "shell":"true",
    "working_dir": "$file_path"
}

要注意cmd中对应的安装路径,这里给的路径是我的电脑中的配置。其中,matlab -nosplash -nodesktop -r ${file_base_name}表示启动matlab,并运行某个.m文件。-nosplash表示不加载启动界面;-nodesktop表示不加载GUI界面;-r表示运行Matlab命令行(MATLAB_command);file_base_name表示文件名,但不包含文件扩展名,如.m等。

【注】 这一步中有关Ubuntu的配置和网上一些教程有所区别,网上教程大多是没有gnome-terminal命令的。我这里希望以命令行方式启动Matlab。我在实践中发现,Sublime的Build Results没有交互功能,只能显示运行结果。在Win10中Build时能自动打开Matlab命令行程序进行交互,但在Ubuntu中却没有打开命令行,所以在前面添加了启动终端(terminal)的相关命令,用于进行交互。

2. 保存新建的Build System

命名并保存这个JSON文件到默认目录(这个JSON文件的名字将成为新的Build System的名字,出现在Build菜单中)

3. 通过Sublime启动MATLAB_command进行编译

设置完成。此时随便编辑一个.m文件,在Build System下选择刚新建的配置,点击Tools -> Build或者使用快捷键Ctrl+B,这时Sublime就会打开MATLAB_command并编译当前文件。
值得注意的是,每次Build都会产生一个新的命令行界面,相当于每次都重新启动了一次MATLAB_command,很耗费时间。所以建议在MATLAB_command启动后,每次修改了程序,先在Sublime中保存,然后在已有的控制台窗口输入脚本名进行编译。

参考资料

1. 利用Sublime Text 2 来运行Matlab   

Ubuntu Server上安装Matlab

Matlab与C/C++联合编程之从Matlab调用C/C++代码

二分类SVM方法Matlab实现

Matlab中的取整函数fix, floor, ceil与round

Matlab编译cuda的.cu文件

Linux Matlab服务器进一步改造成Application Server(应用程序服务器)

Matlab 坐标图动画,动态显示数据

Ubuntu 14.04安装Matlab2012a过程

本文永久更新链接地址

相关内容