如何重新获得旧的IPython文件系统路径自动完成的特性?
在Windows上,IPython是我现有的最容易使用的命令行环境。在我非常旧的IPython环境(Python 2.7.5、IPython 0.13.2和pyreadline 2.0)中,我曾经能够在命令行中键入部分文件路径,按tab键,然后得到如下结果:如何重新获得旧的IPython文件系统路径自动完成的特性?,ipython,Ipython,在Windows上,IPython是我现有的最容易使用的命令行环境。在我非常旧的IPython环境(Python 2.7.5、IPython 0.13.2和pyreadline 2.0)中,我曾经能够在命令行中键入部分文件路径,按tab键,然后得到如下结果: In [1]: cd /Users/Jez/D /Users/Jez/Desktop/ /Users/Jez/Downloads/ /Users/Jez/dot
In [1]: cd /Users/Jez/D
/Users/Jez/Desktop/ /Users/Jez/Downloads/ /Users/Jez/dots2-default-accel=6da3a.pdf
/Users/Jez/Documents/ /Users/Jez/Dropbox/
它提供的所有选项都是真正的文件和目录。那很好
使用较新的设置(Python 3.6.4、IPython 6.1.0、(py)readline???)时,会发生以下情况:
In [1]: cd /Users/Jez/D
delattr() dir() /Users/Jez/Desktop/ /Users/Jez/Dropbox/
DeprecationWarning display() /Users/Jez/Documents/
dict divmod() /Users/Jez/Downloads/
尽管到目前为止键入的内容只能有意义地解释为文件系统路径,但完成选项包括许多不是文件或目录的内容(好像我可能想将一个不存在的名为/Users/Jez
的对象除以一些东西)。这就不那么聪明了。我发现它经常会偏离我的思路(在本例中,只有6个误报,但有时误报太多,以至于真正的选择完全被隐藏)
是否有一个配置选项可以让我重新捕获旧行为的特殊性?到目前为止,我的search foo还没有通过-我找到了一些对readline和.inputrc的引用,但我怀疑这与Windows无关。明白了:
%config IPCompleter.use_jedi = False
或等效于/Users/Jez/.ipython/profile\u default/ipython\u config.py
:
c = get_config()
...
c.IPCompleter.use_jedi = False
订单66完成。真是松了一口气