Ответ 1
У меня была такая же проблема, и эта команда работала для меня easy_install -a readline
.
Полный кредит здесь: ipython жалуется на readline
Я использую zsh, iTerm2 (3.0.9) и pyenv (1.0.2) с pyenv global, установленным в 3.5.2.
В оболочке Python используются клавиши со стрелками вверх и вниз для доступа к предыдущим командам в истории. Но теперь, после перехода на OSX 10.12, вместо него отображаются управляющие символы. Например, стрелка вверх показывает:
^[[A
Я попытался установить readline, как было предложено в Видя escape-символы при нажатии клавиш со стрелками в оболочке python, но это не помогло. У меня нет переменной PYTHONSTARTUP, но раньше она не использовалась, и не знаю, как это взаимодействует с pyenv.
У меня была такая же проблема, и эта команда работала для меня easy_install -a readline
.
Полный кредит здесь: ipython жалуется на readline
Я решил это, установив python из homebrew:
brew unlink python
brew install python
Это сработало для меня:
CFLAGS="-I$(brew --prefix readline)/include -I$(brew --prefix openssl)/include -I$(xcrun --show-sdk-path)/usr/include" \
LDFLAGS="-L$(brew --prefix readline)/lib -L$(brew --prefix openssl)/lib" \
PYTHON_CONFIGURE_OPTS=--enable-unicode=ucs2 \
pyenv install -v 2.7.11
Источник: https://medium.com/@pimterry/setting-up-pyenv-on-os-x-with-homebrew-56c7541fd331#.urbdkrc9l
Я вижу одно и то же, и единственное "исправление", которое я смог придумать, состояло в том, чтобы не запускать команду pyenv init -
в моем файле .zshrc. Это, однако, будет препятствовать функционированию виртуальных сред.. и поэтому это не исправление, а обходной путь, чтобы восстановить историю оболочки python.
Я продолжаю смотреть и видеть, есть ли постоянное исправление, поскольку я не так продуктивен без него.
Для меня это решило выполнить шаги, упомянутые jsphpl (unlink и install), а затем дополнительно использовать brew, чтобы снова связать python и разрешить перезапись конфликтующих файлов.
Это может произойти при обновлении инструментов XCode или XCode (что часто происходит при обновлении ОС) при использовании установленного brew python.
В этом случае вам просто нужно переустановить:
brew reinstall python
Если вам нужен Python 2, помните, что по умолчанию brew установлен на python3, поэтому вам нужно:
brew reinstall python2
Необходимо настроить ярлыки Python.
В оболочке запустите idle3
, затем обновите сочетания клавиш:
Как повторить последнюю команду в оболочке интерпретатора Python?