我怎样才能重新获得旧 IPython 文件系统路径自动完成的特殊性?

How can I recapture the specificity of old IPython filesystem path autocompletion?

在 Windows 上,IPython 是我可用的最简单易用的命令行环境。在我非常旧的 IPython 环境中(Python 2.7.5、IPython 0.13.2 和 pyreadline 2.0),我曾经能够在命令行中键入部分文件路径,按 T​​ab 键,得到如下内容:

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_default/ipython_config.py:

c = get_config()
...
c.IPCompleter.use_jedi =  False

订单 66 完成。真松了一口气。