安装插件

在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.

宏不能创建新窗口之类的。

后来折腾了好久,在网上找到相关的内容,研究出了解决方案

  1. 打开C:\Users\xxx(your name)\AppData\Roaming\Sublime Text 3\Packages\SublimeREPL\config\Python,根据自己的情况调整具体路径。AppData可能是隐藏文件夹,要先设置隐藏文件夹可见才找得到。打开Main.sublime-menu,看到里面也是json格式的。观察一下就发现这对应的刚好就是tools->sublimeREPL->python->下的几个选项。caption对应的就是显示的名字。

  2. 打开刚刚提到的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文件的配置

最新文章

  1. oracle DDL(数据定义语言)基本语句
  2. bzoj4196 [Noi2015]软件包管理器 树链剖分+线段树
  3. (转载)Resin安装配置及使用教程
  4. ORA-01157错误,丢失undo tablespace中数据文件的解决方法
  5. Xcode如何编译Debug版和Release版
  6. iOS push与present Controller的区别
  7. ArcGIS Server新建主题图服务的步骤
  8. zabbix 客户端的安装
  9. Openresty 与 Tengine
  10. FS拓展设置
  11. SSIS ->> Script Debugging and Troubleshooting
  12. PYTHON压平嵌套列表
  13. 【Linux高频命令专题(23)】tar
  14. Java学习笔记之:Java简介
  15. uva--562Dividing coins +dp
  16. nginx 返回数据不完整
  17. Java之代理(jdk静态代理,jdk动态代理,cglib动态代理,aop,aspectj)
  18. CSS中的三种常用定位
  19. Java的HashMap
  20. POJ 1243

热门文章

  1. 一起学微软Power BI系列-使用技巧(1)连接Oracle与Mysql数据库
  2. Http请求
  3. STM32F429 LCD程序移植
  4. redis成长之路——(二)
  5. python 数据类型 --- 集合
  6. 常用 meta 整理
  7. Android中BroadcastReceiver的两种注册方式(静态和动态)详解
  8. iOS开发 判断当前APP版本和升级
  9. Git 学习看这篇就够了!
  10. C 盘的不速之客