LightTable(0.7.2版本)支持ipython(版本3.2.1)



我刚刚开始使用Light Table,无法在OSX 10.10下获得iPython工作。相关版本号为ipyth3.2.1, Python 3.4.3或2.7.10,以及LightTable版本0.7.2(通过Homebrew bucket和.zip文件安装)。

评估Python代码的工作方式和我期望的一样,我得到了很好的选项卡补全,但我无法得到任何图形输出。"连接栏"显示python连接而不是ipython,即使ipython在命令行上可用,我可以成功运行ipython notebook并让它弹出一个web浏览器(这需要pyzmq的工作副本)。

Python 2.7和3.4都不能工作,我尝试了官方LT .zip以及安装brew cask install lighttable

改变我的User.behaviours以显式引用"正确的"virtualenv:

[:app :lt.plugins.python/python-exe  "/Users/smason/.virtualenvs/py3/bin/python"]
[:app :lt.plugins.python/ipython-exe "/Users/smason/.virtualenvs/py3/bin/ipython"]

似乎没有什么影响(通过在拼错二进制时得到适当的错误,以及通过运行print(sys.version)并查看控制台的输出来验证)。

问题是iPython对Light Table的支持已经过时了。它使用了在iPython 1.0之前版本中暴露的功能,并且当iPython的API发生变化时,它不会更新。

对Light Table的最小更改为我修复了这个问题:

https://github.com/LightTable/Python/pull/31

如果你要修补自己的安装,你需要修改:

LightTable.app/Contents/Resources/app.nw/plugins/python/py-src/ltipy.py

但是昨天发布的iPython 4需要更改更多的代码-希望(如果您正在阅读这篇文章)我将抽出时间进行更大的更改