背景

在日常使用Python中(使用交互界面)时,经常遇到按方向键,会出现^[[D, ^[[A 等符号,以及不能使用tab自动补全,

查了下似乎是readline这个lib的问题, 用brew(我用的macOS) 查了下, 我的readline库是8.0.0版本

1
2
3
4
5
6
7
$ ~ brew info readline
readline: stable 8.0.0 (bottled) [keg-only]
Library for command-line editing
https://tiswww.case.edu/php/chet/readline/rltop.html
/usr/local/Cellar/readline/8.0.0 (50 files, 1.5MB)
Poured from bottle on 2019-03-04 at 12:08:49
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/readline.rb

说是更换下库版本就行,但是怕因此影响到其他东西,于是就没有搞, 后来再查资料发现了解决办法,

解决方法

方法来源: StackOverflow

/usr/local/opt/readline/lib/ 中, 我的只有 libreadline.8.dylib

只要把这个链接到 libreadline.6.dyliblibreadline.7.dylib 就能解决问题了.