【问题标题】:Command History Arrow keys are not working in Command Prompt Windows命令历史 箭头键在命令提示符 Windows 中不起作用
【发布时间】:2022-01-03 12:49:48
【问题描述】:

我试图在命令提示符下从文件所在的路径运行其中一个 perl 文件。 进入调试模式后,命令历史记录向下和向上箭头键功能不起作用。 试过很多属性设置,目前是这样的

请指导我如何解决这个问题?调试变得越来越困难。提前致谢。

【问题讨论】:

  • "一旦我进入调试模式":你是说 Perl 调试器里面的历史?在 Linux 上,我认为您必须安装 Term::ReadLine 才能使其正常工作。我不确定这是否可以在 Windows 上运行
  • 谢谢,但不,我在 windows 中工作。我最近做了 Windows 更新,之后我在命令提示符下失去了这个功能。不确定此问题是否与 Windows 更新有关。

标签: perl command-prompt


【解决方案1】:

您在 Perl 调试器中获得的提示不是由您的 shell 提供的,因此它具有与您的 shell 提示不同的命令历史记录功能也就不足为奇了。

perldebug 手册页记录了 Perl 调试器,并有一个标题为 Readline Support / History in the Debugger 的部分说:

交付时,提供的唯一命令行历史记录是检查前导感叹号的简单历史记录。但是,如果您从 CPAN 安装 Term::ReadKey 和 Term::ReadLine 模块(例如 Term::ReadLine::Gnu、Term::ReadLine::Perl,...),您将拥有与这些类似的完整编辑功能GNU readline(3) 提供。在 CPAN 上的 modules/by-module/Term 目录 中查找这些内容。但是,它们不支持正常的 vi 命令行编辑。

如果安装了PadWalker 模块,还可以使用基本的命令行补全,包括当前范围内的词法变量。

如果不支持 Readline,您可能会在使用时看到符号“^[[A”、“^[[C”、“^[[B”、“^[[D””、“^H”...箭头键和/或退格键。

因此您需要安装Term::ReadKeyTerm::ReadLine::* 模块之一。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-26
    • 1970-01-01
    • 1970-01-01
    • 2017-06-25
    • 2012-11-15
    • 2018-06-20
    • 2010-12-13
    • 2013-07-13
    相关资源
    最近更新 更多