IPython 在 Mac Terminal 下自动缩进问题

2018-10-16 13:37:17 +08:00
 rcglight
macOS 下使用 Terminal,发现 IPython 的自动缩进有个比较奇怪的问题,求教一下大家:
if/for/def 等语句,冒号之后,IPython 会自动换行,缩进一格
如果再按一次 Enter,这两行代码就自动执行了
如果想多写几行代码,应该怎么办呢?

例如我的代码是这样子,输入完毕 print('hello')之后代码块就执行了,没有办法增加一行新的了
In [10]: def say():
...: print(‘ hello ’)
2070 次点击
所在节点    Python
9 条回复
rcglight
2018-10-16 13:40:16 +08:00
发现了按 Ctrl-O 时,会再增加一行新的行
不过这样又有了新问题,就是后面不会再自动缩进了[捂脸]
rcglight
2018-10-16 13:47:46 +08:00
还有一个小问题,是关于 tab 自动补全的,为啥高亮的方法下方都标示了一个<unknown>
例如
a = ‘’
a.<tab>
弹出的 a.capitalize,a.casefold 这些方法下方都是<unknown>
Detao
2018-10-16 14:05:29 +08:00
我之前也发现这个问题了, 记得以前是不会直接执行的, 不知道什么时候变得不一样了. 懒得没仔细研究就切去用 jupyter notebook 了.
rcglight
2018-10-17 14:32:06 +08:00
@Detao 多谢,暂时就先这么用用了
rcglight
2018-10-17 14:32:44 +08:00
问题 post 到了 stack overflow 上,目前没人回复。。。
quinoa42
2018-10-17 15:18:49 +08:00
推荐一下[ptpython]( https://github.com/jonathanslenders/ptpython),相当于一个 TUI 的 ipython 前端(运行的时候运行 ptipython,ptpython 是 wrap 了 python 的原生 REPL )
rcglight
2018-10-18 13:37:16 +08:00
@quinoa42 多谢多谢~我学习一下!
Detao
2018-10-18 19:33:34 +08:00
https://github.com/ipython/ipython/issues/11334 看样子是个 Bug, 但已经修掉了 ( https://github.com/ipython/ipython/pull/11358). 等 7.1 版本就好了. 或者你可以先装回 6.x 将就着用.
rcglight
2018-10-19 11:02:13 +08:00
@Detao 喔唷 棒棒棒!那我等等!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/498085

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX