我写了一个小程序来读取输入,打印结果,然后循环。喜欢REPL
。
当我按下键盘上的向上键并编辑这个输入时,我想获得我之前输入的输入,比如做什么bash
或做什么zsh
。我不知道实施。我也搜索了网络,但没有我想要的结果。有人可以为我指路吗?或者给我一些文章阅读?
关键是:如何在屏幕上打印 EDITABLE 行?
我写了一个小程序来读取输入,打印结果,然后循环。喜欢REPL
。
当我按下键盘上的向上键并编辑这个输入时,我想获得我之前输入的输入,比如做什么bash
或做什么zsh
。我不知道实施。我也搜索了网络,但没有我想要的结果。有人可以为我指路吗?或者给我一些文章阅读?
关键是:如何在屏幕上打印 EDITABLE 行?
我没有个人经验,但我的理解是Term::ReadLine提供带有历史记录的命令编辑功能。它甚至是perl
分布的一部分。
你只需要:
这就是编程的全部意义:将我们不知道如何解决的大问题分解成我们知道如何解决的小问题,或者更容易弄清楚如何解决。因此,如果您不知道如何做我上面列出的任何事情,请尝试编写一些代码、阅读 API 文档、在 Google/Stack Overflow 上寻找答案,或者 - 再一次 - 将它们分解为子问题。
if your point is "print" maybe you need Term::Screen. example code here: code.
otherwise if your point is "history", man/perldoc Term::ReadLine.