Haskell 如何在基于 CLI 的应用程序中处理箭头键?

How to process arrow keys in CLI-based application, in Haskell?

我正在编写简单的控制台番茄钟计时器(作为我的 Haskell 学习练习):

在那之前菜单是基于提示行的。但现在我想用基于箭头的菜单替换它,比如 Yeoman

如何在 Haskell 中完成? 我阅读了 System.Console.Terminfo.Keys 和其他 System.Console 软件包,但没有找到解决我的问题的方法。

一种方法是使用绑定到 ncurses 库。 Infact ncurses 向您展示了在他们的示例程序中传递关键字符 "Q" 的示例。

另一个不错的 Haskell 解决方案是 vty-ui which has got a nice documentation