Sublime text3下使用WSL内的python环境运行代
2019-08-04 本文已影响0人
TECOG
近期在学习linux,遂安装了WSL使用,并在WSL里搭建了python的环境替代了windows下的环境,平时习惯于使用sublime text3编辑代码,于是配置了Ctrl B快捷键直接在WSL里运行代码的快捷键
第一步
Sublime菜单内Preferences>Browser Packages

打开User文件夹
新建wsl python3.sublime-build文件

内容如下
{
"cmd":["python.bat","${file}"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"path":"C:/Program Files/", //路径为后面脚本的存放路径
"selector": "source.python",
}
第二步
在C:/Program Files/下新建python.bat文件
内容如下
@echo off
set str=%1
set str=%str:\=/%
set str=%str:C:=/mnt/c%
set str=%str:D:=/mnt/d% //如有更多磁盘分区则需一一替换
C:\windows\system32\wsl.exe python3 -u %str% //-u参数是为了能够实时显示输出
由于windows下的文件路径和WSL下不同,故使用此文本文件把路径转换为WSL内的路径
完成!
其实笔者作为一个重度强迫症患者,开始是拒绝另外使用一个bat文件的,开始时试图直接在sublime text的配置文件中利用WSL内的sed处理文件路径,却搞不定各种环境内的斜杠和反斜杠的转义问题,笔者自认为最后的解决方法是比较笨拙的,也存在一些不安全不稳定的漏洞,隐隐之中感觉一定还有更简洁优雅的方式实现,还请大家多多批评指正!