配置VS code 扩展插件的Configuration

一直以来我都没折腾VS code,原因是大一的时候搞过,当时连gcc什么的都不明白,跟着一个b站视频下载一系列插件:code runner等等,配置了一上午终于能运行了,后来我又一段时间没用VS code,python用的IDLE,java用的IntelliJ,c用的Dev,但是今天突然想试一下vscode,结果发现长时间没用,突然就不行了,于是又折腾了一番,总结一下经验。

问题引出

当我写好一段python 代码,点击右上角▶运行时:

出现以下报错:

1
2
3
Command 'python' not found,did you mean:
command 'python3' from deb python3
command 'python' from deb python-is-python3

这个报错很容易看出来,在windows的shell上,例如cmd,一般运行 python 命令,

而在Linux下的shell上,需要run python3

那么当你点击播放键,这个code runner插件就相当于帮你执行这个命令

所以现在的问题就是怎么更改code runner 默认的python 命令 –> python3

也就是如何配置extension 的 json

探索解法

在VS code 中,Ctrl + shift + p 打开命令面板,输入 settings, 选择 \>Preferences: Open Settings (JSON)‘即可自行配置扩展插件的参数,这个参数会覆盖 >Preference: Open Default Settings (JSON)的结果

Default Settings(JSON)

我们可以先看看default settings 的内容:

所有的扩展等等默认配置文件都在这下面,需要注意的是这个json文件是一个 Read Only只读文件,因此我们做不到对其更改,我们只能在settings.json里面添加,它会覆盖Defalut的结果,这是settings.json文件:

需要仿照已有的格式,进行配置

点开Code Runner 的usage说明,可以发现:

它对python的默认配置是 python ,而不是python3

因此仿照格式,在settings.json文件里面插入

1
2
3
"code-runner.executorMap": {
"python": "python3",
},

即可,重新运行后却发现一个新的问题:

1
No such file or directory

提示我们没有这个file / directory

我看了又看发现路径没问题啊,又纠结了好久,最后发现了我的主机设备名的路径是

1
/mnt/c/User/Lenovo/Desktop/....

也不知道是什么原因,现在的terminal是在WSL下的,因此直接的C:\User\LENOVO\Desktop..这种路径就不行了

Read the friendly Manual

仔细阅读code runner 的manual后发现

也就是说,code runner 的terminalRoot,默认是C:\path ,因此它执行脚本命令的时候才会是

C:\User\LENOVO\Desktop.. 这种路径,但是在WSL里面访问这种路径是无效的

那么在settings.json里面添加 code-runner.terminalRoot:"/mnt/"

之后就解决啦:

Summary

  • VS code里面所有的extension的默认配置都在default settings.json文件里,这是一个只读文件
  • 如何修改extension的配置,ctrl + shift + p打开命令面板搜索settings–>选择>Preferences: Open Settings (JSON),进行自定义配置。
  • 格式要严格参照JSON,且参照扩展的Usage 说明,牢记RTFM

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!