我正在尝试使用Python中的cmd
库编写一个小的REPL。它提供的功能之一是自动标签完成,我不想要。
幸运的是,文档提到“如果completekey不是None并且readline可用,则命令完成自动完成。”所以当我实例化我的completekey=None
子类时,我设置了cmd.Cmd
。
但是,cmd
模块的主要功能,即使用readline
支持上箭头历史记录,也已停用,现在我又回到了^[[A
的。
为什么会发生这种情况,是否有解决方案?
答案 0 :(得分:2)
readline
模块仅在completekey
具有非None值时导入。看起来使用readline
和禁用完成的唯一方法是指定一个无操作的完成者。
class CmdSubclass(Cmd):
# Other configuration
# ...
def complete(self, *args):
pass