^ [[A和^ [[当我按箭头键时,[B]出现在python解释器中

时间:2012-06-14 06:25:28

标签: python ipython

发生了什么事?我尝试了iPython和常规Python解释器,两者都显示^ [[A和^ [[B代表上下箭头而不是之前的命令。

平台: Ubuntu 12.04。

使用pythonbrew

安装

Python: 2.7.3

终端: Mac OSX 10.6上的iTerm 2,通过SSH连接。

从未通过SSH在Python shell中工作,但在本地工作。

运行区域设置输出:

LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

1 个答案:

答案 0 :(得分:6)

由于您使用pythonbrew安装了Python,因此必须在包管理器中安装libreadline-dev包,然后重新编译Python。

在大多数Linux发行版(Ubuntu,Debian,Fedora ......)中,该包被命名为libreadline-dev或类似名称。 Gentoo或Arch系统不需要此步骤,它始终包含对库的开发支持。

从包管理器安装的Python也不需要此步骤。

脚注:区域设置无关紧要。终端仿真器无关紧要。 SSH是无关紧要的。我从未见过这些因素影响行编辑功能,尽管我认为任何事情都可能。

脚注2:我要向pythonbrew的文档提交一个补丁,这不是第一次有人抱怨readline缺失。 更新: Pull request 更新2:合并。