Sublime Text3配置在可交互环境下运行python快捷键
安装插件
在Sublime Text3下面写代码感觉很不错,但是写Python的时候遇到了一些问题。
用Sublime Text3打开python文件,或者在Sublime Text3下写好python代码,使用快捷键ctrl+b就可以运行了,会在当前窗口的下方出现运行的结果。比如
print("hello world!")
但是,要是使用了input这类需要交互的函数,ctrl+b运行就会出现错误
print("hello world!")
x = input("please input a string :")
print(x)
运行结果
这个问题可以通过安装一个插件sublimeREPL解决
在已经安装了包管理器的前提下(如果没有安装可以看这里的”安装包管理器”部分),按ctrl+shift+p快捷键呼出一个输入框,输入Install Package,回车,在新出现的输入框里输入SublimeREPL,在下面的选择列表中选中回车就会开始安装,一般几秒钟就能装完。
在刚刚的python文件的界面里点击上方菜单栏的tools->sublimeREPL->python->python run current file,这时候就像IDLE一样,会弹出一个新的窗口,而且是可交互的,可以输入
设置快捷键
但是每次都要去选择tools->sublimeREPL->python->python run current file这么一长串肯定是很让人头疼的,就想着能不能设置快捷键来运行。因为以前使用IDLE写python,所以就打算配成F5运行。
我们知道,Sublime Text是通过json文件进行设置的。我们打开preferences->Key Binding-Default就能看到原来的快捷键的设置,是json格式的。
打开preferences->Key Binding-User,按照上面的格式重写需要设置的快捷键的的相关属性,就能覆盖默认设置。
但是设置的格式不容易看懂,可以参考非官方文档
发现可以把”command”设为”run_macro_file” ,”args”设为录制的宏的文件名,就可以快捷地调用这个宏。但是这个尝试失败了,可能是因为
Note that the macro buffer will remember only the latest recorded macro. Also, macros only record commands sent to the buffer: window-level commands, such creating a new file, will be ignored.
宏不能创建新窗口之类的。
后来折腾了好久,在网上找到相关的内容,研究出了解决方案
打开C:\Users\xxx(your name)\AppData\Roaming\Sublime Text 3\Packages\SublimeREPL\config\Python,根据自己的情况调整具体路径。AppData可能是隐藏文件夹,要先设置隐藏文件夹可见才找得到。打开Main.sublime-menu,看到里面也是json格式的。观察一下就发现这对应的刚好就是tools->sublimeREPL->python->下的几个选项。caption对应的就是显示的名字。
打开刚刚提到的preferences->Key Binding-User,写入以下内容
[
{ "keys": ["f5"], "caption": "SublimeREPL:Python",
"command": "run_existing_window_command", "args":
{
"id": "repl_python_run",
"file": "config/Python/Main.sublime-menu"
}
},
]可以看出就是调用了id是repl_python_run的现有的窗口命令。repl_python_run是和前面Main.sublime-menu里的内容相对应,就是tools->sublimeREPL->python->python run current file的id
这样,就完成了Sublime Text3类似IDLE按F5键在可交互环境下运行python文件的配置
最新文章
- PHP中模拟JSONArray
- python中定义函数和参数的传递问题
- Ext.Net TreePanel 修改Icon图标
- 【Linux】vi(vim)起步学起来有些困难,一步一步温习
- 149. Max Points on a Line *HARD* 求点集中在一条直线上的最多点数
- Ejabberd源码解析前奏--安全
- *[codility]StoneWall
- POJ --- 3613 (K步最短路+矩阵快速幂+floyd)
- Bigcommerce: 给已完成购买的客户发送一封产品评论邮件,让客户直接进行产品评论
- Android 之流媒体播放器,广播侧下方这么简单。
- Mysql删除表格之后,进行恢复
- Powerdesigner 连接mysql 在指定的DSN中,驱动程序和应用程序之间的体系结构不匹配 SQLSTATE = IM014
- MyBatis学习总结(一)简单入门案例
- Express安装
- BeautifulSoup解析模块
- go 0000
- 斯坦福大学公开课机器学习: machine learning system design | error analysis(误差分析:检验算法是否有高偏差和高方差)
- 洛谷.2754.星际转移问题(最大流Dinic 分层)
- conda-使用手册
- centos7 关闭 防火墙
热门文章
- 一起来玩echarts系列(一)------箱线图的分析与绘制
- 旺财速啃H5框架之Bootstrap(四)
- .NET Core系列 : 2 、project.json 这葫芦里卖的什么药
- 在docker中运行ASP.NET Core Web API应用程序(附AWS Windows Server 2016 widt Container实战案例)
- TypeScript为Zepto编写LazyLoad插件
- 微框架spark--api开发利器
- PHP类和对象之重载
- Git的四个基本概念及 git的工作流程
- 初识git版本控制系统
- TFS2013 设置签出独占锁