2015-03-31 67 views
3

ansi-terminal库是一个很棒的小型库,可以让你移动光标和东西(没有所有基于东西的额外东西ncurses)。唯一的问题是它不提供获取光标位置的方法。无论如何,它使用或与图书馆的其他部分兼容,我可以做到这一点。我知道一种方法是在任何地方跟踪光标,但我想允许外部putStr s等。`ansi-terminal`如何在Haskell中获取光标位置

回答

4

根据Wikipedia,DSR终端命令应该为您提供位置,并且还有保存和恢复位置的命令。我不知道为什么ansi-terminal不支持这些;也许你应该提交一份错误报告。

更新:支持保存和恢复光标位置has now been addedansi-terminal

+0

甚至比我预期的更好!图书馆简直是不完整的! (我担心你找不到它在哪里,像'ncurses'这样的东西可以知道,因为它保持跟踪。) – PyRulez 2015-03-31 21:41:54

+1

@PyRulez,我刚刚提交了一张[ticket](https://github.com/费尔巴哈/ ANSI-终端/问题/ 7)。 – dfeuer 2015-03-31 21:42:44

+0

我的猜测是Windows可能不支持这个。 ('ansi-terminal'最重要的特征是可移植性;毕竟,如果你只想要ANSI逃脱,那么你可以自己去做这件事...) – MathematicalOrchid 2015-04-01 10:28:02