2012-04-13 18 views
22

Tôi đang sử dụng python 2.6 trong virtualenv trên máy Ubuntu Linux 11.04 (natty). Tôi có mã này trong mã python (django) của tôi:Trình gỡ rối Python (pdb) đã ngừng di chuyển mũi tên lên/xuống, hiển thị^[[A thay vì

import pdb ; pdb.set_trace() 

để khởi chạy trình gỡ rối python (pdb).

Cho đến hôm nay, điều này có hiệu quả. Nhưng bây giờ khi pdb bắt đầu, nó hoạt động để gỡ lỗi và chạy và breakpoint vv, nhưng khi tôi nhấn mũi tên lên để hiển thị lệnh trước nó in ^[[A thay vì không đi lên. Khi tôi nhập một cái gì đó và nhấn Trang chủ, nó in ^[OH thay vì di chuyển con trỏ.

Tôi có thể sử dụng hết/home/etc. tốt trong thiết bị đầu cuối bash mà khởi động của tôi python django unittests (trong đó có các cuộc gọi pdb).

Điều gì đang xảy ra? Làm thế nào để sửa pdb của tôi? Có gì sai với readline của tôi?

+0

Đó có phải là pdb.set_trace() không? –

+0

@reos Vâng, đó là lỗi đánh máy. cố định ngay bây giờ. đó là ''… set_trace() '' trong mã của tôi – Rory

+1

bạn đã thử đặt lại trình bao của mình chưa? 'reset' – dm03514

Trả lời

0

Xin lỗi ... nhưng bạn đã thử khởi động lại hoặc phím Control, Command, Option (hoặc tương tự) bị kẹt trên bàn phím máy chủ pdb của bạn chưa?

11

Có vẻ như từ một số lý do bạn bỏ lỡ gói readline. Đơn giản chỉ cần cài đặt nó bằng cách gõ pip install readline và nó sẽ hoạt động như mong đợi. Hãy nhớ đánh nó là superuser nếu bạn không ở venv.

+0

Dường như gói [_readline_] (https://pypi.python.org/pypi/readline) không được chấp nhận. Nó đã được đổi tên thành [_gnureadline_] (https://pypi.python.org/pypi/gnureadline) để giải quyết xung đột tên với mô-đun thư viện chuẩn. – Yoel

Các vấn đề liên quan