【matlab-in-vscode配置流程】在vscode上的逐块编译matlab

读了 https://zhuanlan.zhihu.com/p/616873284 这篇文章,看起来好像很厉害的样子,于是想部署一下matlab-in-vscode这个插件,遇到了一些坑,于是记录。

安装插件

直接在vscode搜索maltab in vscode就行

settings.json配置

为了能最终运行,增加了下面这些代码。

    "MATLAB.installPath": "E:\\MATLAB\\R2022b",
    "matlab.matlabpath": "E:\\MATLAB\\R2022b\\bin\\matlab.exe",
    "matlab.mlintpath" : "E:\\MATLAB\\R2022b\\bin\\win64\\mlint.exe",
    "matlab.linterEncoding": "gb2312",
    "workbench.settings.applyToAllProfiles": [
        "MATLAB.installPath"
    ],

    "code-runner.executorMap":{
		"matlab": "cd $dir && matlab -nosplash -nodesktop -r $fileNameWithoutExt",
    },

    "files.associations": {
        "*.m":"matlab",
    },

    "code-runner.runInTerminal": true,

    "[matlab]" : {
        "files.encoding": "gb2312",
    },
    
    "files.autoGuessEncoding": true,
    "matlab-interactive-terminal.pythonPath": "E:\\Anaconda3\\envs\\formatlab\\python.exe",
    "matlab-in-vscode.matlabPybackend": true,
    "matlab-in-vscode.matlabStartup": [
    
        
        "disp(['Working directory: ', pwd]);"
    ],

下面这部分代码实现的功能是避免terminal使用windows自带的powershell而是使用anaconda的配置环境。
formatlab是我的环境名称,可以根据自己的情况做修改。也可以改成路径名,例如conda activate ‘C:\ProgramData\Anaconda3’

    "terminal.integrated.profiles.windows": {
        "Anaconda Prompt": {
          "path": "powershell.exe", 
          "args": [
            "-ExecutionPolicy" ,"ByPass", "-NoExit", "-Command","& 'E:\\Anaconda3\\shell\\condabin\\conda-hook.ps1'; conda activate formatlab "
        ],
          "title":"Anaconda Prompt"
        }
      },
    "terminal.integrated.defaultProfile.windows": "Anaconda Prompt",

ternimal配置

我是针对conda环境做的配置,对于windows的powershell环境应该也是一样的。需要注意的是OSError: MATLAB Engine for Python supports Python version 2.7, 3.8, 3.9, and 3.10,只支持2.7, 3.8, 3.9, and 3.10这四个版本(也可以根据自己的matlab版本具体分析)

conda create --prefix=E:\Anaconda3\envs\formatlab  python=3.10
conda activate formatlab
cd e:
cd E:\MATLAB\R2022b\extern\engines\python
python setup.py install

重启vscode,完成配置

完成以上内容就可以使用matlab-in-vscode了。这个插件比较实用的点在于可以用%%分割代码块,然后ctrl+enter进行逐块测试。但是它的运行实际上只是把代码逐行输出到matlab的命令行了,所以好像是没办法使用自定义函数的。仅能作为matlab在vscode上的一种参考拓展方案。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值