运行由以下行组成的文件
import ipdb;ipdb.set_trace()
然后在命令行中输入超过 19 个或更多任意字符,然后点击主页按钮(或 Ctrl-A)使光标转到该行的位置 11 而不是该行的位置 0,结果该行被加码(它不允许我到行中第 11 个位置的左侧):
$ python ~test/c.py
--Return--
None
> /home/test/c.py(2)<module>()
1 import ipdb
----> 2 ipdb.set_trace()
ipdb> 1234567890123456789
现在按<Home>
,然后按"_":
ipdb> 12345678901_1234567890123456789
虽然我期望它是
ipdb> _1234567890123456789
全新安裝 Ubuntu 和全新安裝 Archlinux、python 2.7.10、3.4.3+ 都會受到影響。除了 ipdb 0.7、0.8 或 0.9 (+依赖项)之外,没有安装任何库。
在 ipython 或 python 命令行中一切都很好。
在终端、终结器和文本终端 (ctrl-alt-f1) 中测试,使用 bash 和 zsh。
知道为什么吗?
将 ipython 降级到 4.0.0 为我解决了同样的问题。https://github.com/gotcha/ipdb/issues/87 的信用讨论(此处为循环参考)