2021-05-12 14:32:11
設定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 http://www.linuxidc.com/Linux/2016-07/133759.htm
Ubuntu Server上安裝Matlab http://www.linuxidc.com/Linux/2014-09/106242.htm
Matlab與C/C++聯合程式設計之從Matlab呼叫C/C++程式碼 http://www.linuxidc.com/Linux/2012-08/68148.htm
二分類SVM方法Matlab實現 http://www.linuxidc.com/Linux/2013-05/84050.htm
Matlab中的取整函數fix, floor, ceil與round http://www.linuxidc.com/Linux/2013-10/91161.htm
Matlab編譯cuda的.cu檔案 http://www.linuxidc.com/Linux/2014-04/100675.htm
Linux Matlab伺服器進一步改造成Application Server(應用程式伺服器) http://www.linuxidc.com/Linux/2014-09/106340.htm
Matlab 坐標圖動畫,動態顯示資料 http://www.linuxidc.com/Linux/2016-03/129056.htm
Ubuntu 14.04安裝Matlab2012a過程 http://www.linuxidc.com/Linux/2015-12/126297.htm
本文永久更新連結地址:http://www.linuxidc.com/Linux/2016-07/133760.htm
相關文章