Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ipython上下箭头奇怪的行为_Python_Macos_Ipython - Fatal编程技术网

ipython上下箭头奇怪的行为

ipython上下箭头奇怪的行为,python,macos,ipython,Python,Macos,Ipython,在我安装的ipython中,我遇到了一个奇怪的问题,我无法用上下箭头可靠地浏览命令历史。。。很多时候它就是不起作用(按键时什么也没发生)。有时在命令末尾写入普通字符也不起作用 我的系统:Mac OSX Lion 我已经安装了readline 谢谢你的帮助! david请确保在ipython之前安装了readline sudo-pip卸载ipython sudo-pip-install-readline-ipython (我知道这个问题已经问了几个月了,但供将来参考)我必须用轻松安装readlin

在我安装的ipython中,我遇到了一个奇怪的问题,我无法用上下箭头可靠地浏览命令历史。。。很多时候它就是不起作用(按键时什么也没发生)。有时在命令末尾写入普通字符也不起作用

我的系统:Mac OSX Lion

我已经安装了readline

谢谢你的帮助!
david

请确保在ipython之前安装了readline

sudo-pip卸载ipython

sudo-pip-install-readline-ipython


(我知道这个问题已经问了几个月了,但供将来参考)

我必须用
轻松安装readline
安装readline,这就解决了它。 使用
pip install readline
对我不起作用,ipython发出警告:

******************************************************************************
libedit detected - readline will not be well behaved, including but not limited to:
   * crashes on tab completion
   * incorrect history navigation
   * corrupting long-lines
   * failure to wrap or indent lines properly
It is highly recommended that you install readline, which is easy_installable:
     easy_install readline
Note that `pip install readline` generally DOES NOT WORK, because
it installs to site-packages, which come *after* lib-dynload in sys.path,
where readline is located.  It must be `easy_install readline`, or to a custom
location on your PYTHONPATH (even --user comes after lib-dyload).
******************************************************************************

在iPython和访问历史记录的上下箭头出现问题之后,浏览这篇文章,一个简单的解决方案(关闭“滚动锁定”)对我来说是可行的。

这是iPython有意提供的功能。如果您键入“abc”,然后点击向上箭头,它将只在以“abc”开头的行中滚动。如果在滚动时点击lift/right,则会触发相同的行为。当前行的全部内容将被解释为您的搜索前缀,任何仅以all开头的行将在进一步的上/下按键时显示

您可以在
PYTHONSTARTUP
文件中更改此行为。我有以下几行:

import readline
# Prevent ctrl-p/ctrl-n/Up/Down from doing prefix searching 
readline.parse_and_bind('"\\C-p": previous-history')
readline.parse_and_bind('"\\C-n": next-history')
readline.parse_and_bind('"\\e[A": previous-history')
readline.parse_and_bind('"\\e[B": next-history')
如果你好奇的话,那就是我们在压倒一切

不相关,但我也喜欢覆盖readline的默认ctrl-w:

# Ctrl-W behavior more like Vim
readline.parse_and_bind('"\\C-w": backward-kill-word')

我不必卸载ipython。只要“easy_install readline”就行了。如果在运行PIP时遇到“-lncurses”未找到错误,您需要为debian/ubuntu安装ncurses-devel(用于redhat)或libncurse5-dev。请详细说明您的答案,并添加关于您提供的解决方案的更多描述?哪个前端?经典的ipython还是qtconsole?哪个版本?0.13.1已在几个小时前发布。你可以尝试在github上打开一个问题。Matt,谢谢你的来信。。。回答你的问题:经典的伊皮顿。。。我试过0.13.1,结果是一样的。是的,也许我会打开这个问题-谢谢你的提示。