bpythonでバックスペースキーの挙動がおかしい
Posted on Fri, 02 Oct 2009 21:31:23 +0900
bpython はコンプリーションやカラー化できるPythonインタラクティブシェルツールです。
特定のマシンでバックスペースキー(BSキー)の挙動がおかしかったので (入力した文字がすべて消えて改行されてしまう)、以下で対処しました。 端末とかが絡みそうなので、根本的な解決ではないかもしれませんが、 困っている方がいれば参考にどぞ。
$ hg clone http://bitbucket.org/bobf/bpython/
$ hg tip
changeset: 337:4fec78c26c80
tag: tip
user: Simon de Vlieger <simon@ikanobori.jp>
date: Fri Oct 02 12:10:05 2009 +0200
summary: Added tag 0.9.5.2 for changeset 1491c41fbe47
$ hg diff
diff -r 4fec78c26c80 bpython/cli.py
--- a/bpython/cli.py Fri Oct 02 12:10:05 2009 +0200
+++ b/bpython/cli.py Fri Oct 02 21:25:33 2009 +0900
@@ -1478,14 +1478,10 @@
if key is None:
return ''
- if key == chr(8): # C-Backspace (on my computer anyway!)
- self.clrtobol()
- key = '\n'
- # Don't return; let it get handled
if key == chr(27):
return ''
- if key in (chr(127), 'KEY_BACKSPACE'):
+ if key in (chr(8), chr(127), 'KEY_BACKSPACE'):
self.bs()
self.complete()
return ''
$