vscode配置matlab工作環(huán)境

前面有兩篇文章我們分別講了在vscode里面如何配置C語言環(huán)境和python環(huán)境左医,那兩篇文章總體來說比較復(fù)雜暮顺,當(dāng)然這篇也有許多有趣的問題恩闻。
附上鏈接:
vscode安裝并配置python環(huán)境
vscode的安裝并配置c語言環(huán)境

這次嘗試給文章加個目錄乘粒,試試效果。
@[TOC]

matlab簡介

MATLAB是美國MathWorks公司出品的商業(yè)數(shù)學(xué)軟件妙真,用于數(shù)據(jù)分析、無線通信荚守、深度學(xué)習(xí)珍德、圖像處理與計算機視覺、信號處理矗漾、量化金融與風(fēng)險管理锈候、機器人,控制系統(tǒng)等領(lǐng)域敞贡。

MATLAB是matrix&laboratory兩個詞的組合泵琳,意為矩陣工廠(矩陣實驗室),軟件主要面對科學(xué)計算誊役、可視化以及交互式程序設(shè)計的高科技計算環(huán)境获列。它將數(shù)值分析、矩陣計算蛔垢、科學(xué)數(shù)據(jù)可視化以及非線性動態(tài)系統(tǒng)的建模和仿真等諸多強大功能集成在一個易于使用的視窗環(huán)境中击孩,為科學(xué)研究、工程設(shè)計以及必須進(jìn)行有效數(shù)值計算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案啦桌,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計語言(如C溯壶、Fortran)的編輯模式及皂。

MATLAB和Mathematica、Maple并稱為三大數(shù)學(xué)軟件且改。它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計算方面首屈一指验烧。
MATLAB可以進(jìn)行矩陣運算、繪制函數(shù)和數(shù)據(jù)又跛、實現(xiàn)算法碍拆、創(chuàng)建用戶界面、連接其他編程語言的程序等慨蓝。MATLAB的基本數(shù)據(jù)單位是矩陣感混,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式十分相似礼烈,故用MATLAB來解算問題要比用C弧满,F(xiàn)ORTRAN等語言完成相同的事情簡捷得多,并且MATLAB也吸收了像Maple等軟件的優(yōu)點此熬,使MATLAB成為一個強大的數(shù)學(xué)軟件庭呜。在新的版本中也加入了對C,F(xiàn)ORTRAN犀忱,C++募谎,JAVA的支持。

基本要求

  • 安裝matlab阴汇,我們學(xué)校官網(wǎng)上有数冬,但僅限校內(nèi)學(xué)生老師使用,在各個平臺上也可以找到資源搀庶,不再贅述拐纱。
  • 安裝vscode以及必要的插件,可以參考之前的文章

code runner插件

配置python,c地来,c++等語言戳玫,要在vscode上運行時一個特別好用的插件就是code runner,可謂是懶人的福音未斑,它直接滿足了40多種計算機語言的運行要求咕宿,而不用為每一種語言尋找一個特定的編譯器。

Run code snippet or code file for multiple languages: C, C++, Java, JavaScript, PHP, Python, Perl, Perl 6, Ruby, Go, Lua, Groovy, PowerShell, BAT/CMD, BASH/SH, F# Script, F# (.NET Core), C# Script, C# (.NET Core), VBScript, TypeScript, CoffeeScript, Scala, Swift, Julia, Crystal, OCaml Script, R, AppleScript, Elixir, Visual Basic .NET, Clojure, Haxe, Objective-C, Rust, Racket, Scheme, AutoHotkey, AutoIt, Kotlin, Dart, Free Pascal, Haskell, Nim, D, Lisp, Kit, V, SCSS, Sass, CUDA, Less, Fortran, and custom command

在尋找配置matlab環(huán)境的過程中無意在知乎發(fā)現(xiàn)了它的原作者蜡秽,是一個在微軟上海的中國程序員——膜拜大佬8А!芽突!
[VSCode插件推薦] Code Runner: 代碼一鍵運行试浙,支持超過40種語言

但是很悲催的的一點是:40多種語言中,沒有matlab

與matlab相關(guān)的插件

  • matlab:對寞蚌,就叫matlab田巴,支持語法檢查钠糊,高亮等要求,詳情可見于下載頁壹哺。
  • Matlab Interactive Terminal:可在終端執(zhí)行matlab代碼
  • matlab-formatter:調(diào)整字體抄伍,避免亂碼

添加路徑

  • 在設(shè)置里面搜索matlab,主要是填寫Matlabpath和Mlintpath兩個路徑管宵,按自己的實際路徑填寫

小結(jié)

此時可以在vscode編寫matlab代碼截珍,會有語法高亮,錯誤提示等等功能箩朴,但是不支持運行岗喉,要運行需要復(fù)制代碼到matlab再執(zhí)行。


code runner是否支持更多語言

如果不想復(fù)制粘貼代碼炸庞,其實也有方法钱床,想想能不能讓code runner支持新語言——例如matlab,這時候我們在設(shè)置里搜索code runner埠居,之后點擊一個“在setting.json中編輯”诞丽,之后可以看到下圖



添加一行代碼(我已添加),之后程序會在matlab窗口運行拐格,也就是事實上還是在matlab上運行,但是不用打開matlab軟件刑赶,會給我們開一個小窗口捏浊,當(dāng)然速度沒有直接在matlab上那么快。

"matlab": "cd $dir && matlab -nosplash -nodesktop -r $fileNameWithoutExt"

更多選擇

事實上現(xiàn)在的最優(yōu)選擇是另外一個插件matlab code run撞叨,直接在vscode終端運行金踪,最優(yōu)選擇,唯一缺點在于發(fā)現(xiàn)測試都較少牵敷,還在初始階段胡岔,沒有廣泛測試,據(jù)說在Mac 和Linux上都可以使用枷餐,Windows不太行靶瘸。

如何使用
打開命令面板(在“視圖”下或使用快捷方式ctr+shift+p),找到“運行Matlab文件”命令毛肋。
特性
直接運行VS代碼而不需要打開完整的Matlab GUI怨咪。非圖形輸出將顯示在內(nèi)置的VS代碼終端。圖形將在單獨的窗口中打開润匙。調(diào)試不可用诗眨,而且在可預(yù)見的將來可能不會改變,因為當(dāng)前的實現(xiàn)不允許這樣做孕讳。
需求
目前匠楚,matlab必須添加到您的系統(tǒng)路徑巍膘。否則,擴(kuò)展將不知道Matlab安裝在您的系統(tǒng)的哪里芋簿。

另一個選擇

還有一個選擇就是上面提到的Matlab Interactive Terminal峡懈,但是配置的確過于復(fù)雜,目前還沒有成功益咬。

Matlab交互終端是Visual Studio代碼的擴(kuò)展逮诲,允許用戶啟動Matlab腳本,并在Visual Studio代碼中直接包含一個工作的Matlab REPL幽告。這個擴(kuò)展使用Python的Matlab引擎梅鹦,必須正確地設(shè)置擴(kuò)展才能工作。它在Windows冗锁、Mac OS和Linux上都能運行齐唆。
需求
Python x64 3.6或3.7(添加到PATH中),在這里或通過Anaconda等其他發(fā)行版提供
MATLAB R2014b (MATLAB 8.4)或更高
Python的MATLAB引擎API冻河,安裝說明可以在這里找到
注意:Python的要求可能因Matlab版本的不同而有所不同箍邮。建議使用最新的Matlab版本(R2019b)以及Python 3.6或3.7 (x64)。有關(guān)MATLAB-Python兼容性的更多信息可以在MathWorks網(wǎng)站上找到叨叙。
特性
該擴(kuò)展將三個命令添加到Visual Studio代碼中锭弊,然后可以將它們綁定到鍵綁定。這些都是:
打開Matlab終端擂错,在VS代碼集成終端中打開交互式Matlab終端味滞,類似于Matlab命令行
運行當(dāng)前Matlab腳本,運行當(dāng)前打開的Matlab腳本钮呀,允許用戶通過打開的終端與之交互
在Matlab中運行當(dāng)前選擇剑鞍,在Matlab終端中運行當(dāng)前選擇的文本。如果沒有選擇文本爽醋,則運行當(dāng)前行
推薦的VS代碼擴(kuò)展
Matlab(來自Xavier Hahn)為Matlab語言提供了語法著色蚁署、代碼片段和linting。并設(shè)計了Matlab交互終端來實現(xiàn)蚂四。
Matlab代碼運行(來自Bram Vanbilsen)是Matlab交互終端的一個很好的替代品光戈,沒有Python和Matlab引擎API的依賴。它應(yīng)該在Mac OS和Linux上提供類似的功能遂赠。
已知的問題
參見https://github.com/apommel/vscode-matlab-interactive-terminal/issues

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末田度,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子解愤,更是在濱河造成了極大的恐慌镇饺,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件送讲,死亡現(xiàn)場離奇詭異奸笤,居然都是意外死亡惋啃,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進(jìn)店門监右,熙熙樓的掌柜王于貴愁眉苦臉地迎上來边灭,“玉大人,你說我怎么就攤上這事健盒∪奘荩” “怎么了?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵扣癣,是天一觀的道長惰帽。 經(jīng)常有香客問我,道長父虑,這世上最難降的妖魔是什么该酗? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮士嚎,結(jié)果婚禮上呜魄,老公的妹妹穿的比我還像新娘。我一直安慰自己莱衩,他們只是感情好爵嗅,可當(dāng)我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著笨蚁,像睡著了一般操骡。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上赚窃,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天,我揣著相機與錄音岔激,去河邊找鬼勒极。 笑死,一個胖子當(dāng)著我的面吹牛虑鼎,可吹牛的內(nèi)容都是我干的辱匿。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼炫彩,長吁一口氣:“原來是場噩夢啊……” “哼匾七!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起江兢,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤昨忆,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后杉允,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體邑贴,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡席里,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了拢驾。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片奖磁。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖繁疤,靈堂內(nèi)的尸體忽然破棺而出咖为,到底是詐尸還是另有隱情,我是刑警寧澤稠腊,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布躁染,位于F島的核電站,受9級特大地震影響麻养,放射性物質(zhì)發(fā)生泄漏褐啡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一鳖昌、第九天 我趴在偏房一處隱蔽的房頂上張望备畦。 院中可真熱鬧,春花似錦许昨、人聲如沸懂盐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽莉恼。三九已至,卻和暖如春速那,著一層夾襖步出監(jiān)牢的瞬間俐银,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工端仰, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留捶惜,地道東北人。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓荔烧,卻偏偏與公主長得像吱七,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子鹤竭,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,864評論 2 354