虽然网上教程一大堆,然而都不全面,遇到的各种坑的情况都没写。

一、安装

  前提是你安装了Package Control,见Mac Sublime Text 3 配置Python环境及安装插件

  Preferences ->Package Control ->Package Control: Install Package,输入SublimeREPL,回车安装就OK了。

二、使用

1.交互式窗口

  sublime运行Python没法接收外部输入的值,需要借助SublimeREPL插件开一个交互窗口。

  使用方法:Tools->SublimeREPL->Python->Python-RUN current file

  此处有坑:

  比如你为了使代码支持中文编码,而在代码开头加入sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf8') #改变标准输出的默认编码

这时候运行交互窗口会报错。或者其他一些报错。解决办法是设置SublimeREPL使用Python命令的版本。步骤如下:

Preferences ->Browse Packages 找到安装包位置打开文件SublimeREPL/config/Python/Main.sublime-menu。找到如下代码:

{"command": "repl_open",
"caption": "Python - RUN current file",
"id": "repl_python_run",
"mnemonic": "R",
"args": {
"type": "subprocess",
"encoding": "utf8",
"cmd": ["/Library/Frameworks/Python.framework/Versions/3.6/bin/python3", "-u", "$file_basename"],
"cwd": "$file_path",
"syntax": "Packages/Python/Python.tmLanguage",
"external_id": "python",
"extend_env": {"PYTHONIOENCODING": "utf-8"}
}
},

将cmd那行中的Python路径改成你的新版Python路径

2.逐行运行功能

a.Tools -> SublimeREPL -> Python -> Python , 打开一个 SublimeREPL调试页面,别关。

b.回到代码页面,选中要执行的一行或多行语句, Tools -> SublimeREPL -> Eval REPL -> Lines,回到SublimeREPL的那个交互页面,这个语句已经执行了,你可以打印你想查看的变量。

注意事项:

如上图,我不能直接选中第13行执行,因为此时还不认识a和b。你可以第11、12、13,按顺序一行一行的选中执行,或者这三行同时选中执行。

三、设置快捷键

要使用上面几个功能太过于繁琐,可以设置快捷键。

比如设置运行交互窗口快捷键"ctrl+b",打开一个 SublimeREPL页面快捷键"ctrl+a",执行某行快捷键"ctrl+z"

Preferences -> Key Bindings 后在Default(Windows).sublime-keymap-User文件的方括号中输入以下内容:

[
{
"keys":["ctrl+b"],
"caption": "SublimeREPL: Python - RUN current file",
"command": "run_existing_window_command",
"args":
{
"id": "repl_python_run",
"file": "config/Python/Main.sublime-menu"
}
},
{ "keys": ["ctrl+a"], "caption": "SublimeREPL: Python", "command": "run_existing_window_command", "args": { "id": "repl_python", "file": "config/Python/Main.sublime-menu" } },
{ "keys": ["ctrl+z"], "command": "repl_transfer_current", "args": { "scope": "selection" } } ]

四、其他技巧

  代码窗口和插件窗口需要来回切换查看,非常不方便,可以设置同时显示这几个窗口,点击View -> Layout -> Rows: 2

然后把插件的标签页脱下来,如下图

Mac SublimeREPL 插件安装使用及解决各种坑的更多相关文章

  1. Sublime Text 无法使用Package Control或插件安装失败的解决方法

    Sublime Text用了一年多了,公司搬家近期突然发现Package Control无法安装新插件了.尽管不影响原有功能的使用.还是要解决它.因为本人用Windows系统,仅仅讨论Windosw下 ...

  2. Android模拟神器Genymotion eclipse插件安装问题出解决

    我之前一直是打开eclipse之前直接运行Genymotion模拟器就可以连接到adb了,非常方便,但最近突然想来装个eclipse的Genymotion插件玩玩,安装时居然出错了,于是不折腾好心里不 ...

  3. ADT安装Genymotion的eclipse插件安装及错误解决办法

    接触安卓开发也有很长一段时间了,但是一直使用的真机测试程序,因为感觉android模拟器实在是太不方便,运行慢,而且经常出错.最近听人介绍说Genymotion这款Android模拟器相当不错,于是打 ...

  4. Eclipse ADT 插件安装慢的解决的方法

    參考贴:http://blog.csdn.net/ludonghai715/article/details/6973433 在天朝非常多事情就不可避免的蛋疼,download.eclipse.org ...

  5. Mac OS下安装mysqlclient遇到的一些坑

    在玩django的同时,必须需要mysqlclient和pillow包,想在本地Mac上装上mysqlclient,但着实遇到不少坑,最终还是在github issue中找到了解决方法,这里记录一下, ...

  6. mac下高效安装 homebrew 及完美避坑姿势 (亲测有效)

    世上无难事,只要找到 Homebrew 的正确安装方式. Homebrew 是什么 Homebrew是 mac的包管理器,仅需执行相应的命令,就能下载安装需要的软件包,可以省掉自己去下载.解压.拖拽( ...

  7. Sublime Text3安装SublimeREPL插件以及快捷键设置

    SublimeREPL是Sublime Text的一个插件,它除了可以使你在ST中运行解释器(REPL),还有对Python语言的特别支持,包括在本地/远程(远程仅在linux/osx平台可用)vir ...

  8. mac下需要安装旧 Java SE 6 才能打开程序解决办法

    今天我在mac系统下面安装myeclipse2014(myeclipse-pro-2014-GA-offline-installer-macosx.dmg)的时候,发现显示错误: 您需要安装旧 Jav ...

  9. Eclipse 插件安装方法和插件加载失败解决办法

    一:是利用Eclipse Software  Update 添加网址,让Eclipse 自动的搜索下载最新的插件. 比如安装VE这个可视化编辑UI的插件,其步骤为 Help > Software ...

随机推荐

  1. 表单元素 disabled 和 readonly 辨析

    正确答案: B D 分析: Readonly 和 Disabled 是用在表单中的两个属性,它们都能够做到使用户不能够更改表单域中的内容.但是它们之间有着微小的差别,总结如下: 1)Readonly只 ...

  2. 51Nod-1586-约数和

    #include <cstdio> using namespace std; typedef long long ll; ; int n, q; int cnt[MAXN]; ll a[M ...

  3. 图论:2-SAT

    先象征性地描述一下问题:一组(或者一个)东西有且仅有两种选择,要么选这个,要么选那个,还有一堆的约束条件 图论问题,当然是建边跑图喽 给出模型: 模型一:两者(A,B)不能同时取 那么选择了A就只能选 ...

  4. openlayers3中应用proj4js

    要在openlayers3中应用proj4js,需要在html中引用proj4js,然后在引用所需要的projection的js定义,如 http://epsg.io/21781-1753.js 然后 ...

  5. 【bzoj2219-数论之神】求解x^a==b(%n)-crt推论-原根-指标-BSGS

    http://www.lydsy.com/JudgeOnline/problem.php?id=2219 弄了一个晚上加一个午休再加下午一个钟..终于ac..TAT 数论渣渣求轻虐!! 题意:求解 x ...

  6. 【bzoj3510】首都 LCT维护子树信息(+启发式合并)

    题目描述 在X星球上有N个国家,每个国家占据着X星球的一座城市.由于国家之间是敌对关系,所以不同国家的两个城市是不会有公路相连的. X星球上战乱频发,如果A国打败了B国,那么B国将永远从这个星球消失, ...

  7. wiki 2490 导弹拦截塔

    2013-09-23 21:16 二分答案+匈牙利判断 对于每一个时间,我们重新建一张二分图,由于每个塔可能打多次,所以要拆点, 对于每个拆的点的可行飞行距离为(mid-t1)-(ll-1)*(t1+ ...

  8. mongoDB支持的数据类型

    下表为MongoDB中常用的几种数据类型. 数据类型 描述 String 字符串.存储数据常用的数据类型.在 MongoDB 中,UTF-8 编码的字符串才是合法的. Integer 整型数值.用于存 ...

  9. mysql五:数据操作

    一 介绍 MySQL数据操作: DML ======================================================== 在MySQL管理软件中,可以通过SQL语句中的 ...

  10. IPsec传输模式下ESP报文的装包和拆包过程

    原创文章,拒绝转载 装包过程 总体流程图 过程描述 在原IP报文中找到TCP报文部分,在其后添加相应的ESP trailer信息. ESP trailer 包含三部分:Padding,Pad leng ...