前面有兩篇文章我們分別講了在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