Как я могу восстановить специфику старого автозаполнения пути к файловой системе IPython? - PullRequest
0 голосов
/ 15 мая 2018

В 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/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.

1 Ответ

0 голосов
/ 15 мая 2018

Понял:

%config IPCompleter.use_jedi = False

или эквивалентно в /Users/Jez/.ipython/profile_default/ipython_config.py:

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

Заказ 66 выполнен.Какое облегчение.

...