如何处理Windows 2012或更早版本上运行的Go终端应用程序中的箭头键?

0md85ypi  于 2023-03-16  发布在  Go
关注(0)|答案(1)|浏览(136)

bounty将在7天后过期。回答此问题可获得+50的声望奖励。Liam Kelly正在寻找规范答案

我有一个Go终端应用程序,在它进行远程连接后,将终端置于TTY原始模式,并通过连接传递击键。
我遇到的问题是,当在2012年之前的Windows操作系统上运行时,我无法传递箭头键。在更高的Windows版本中,您可以设置ENABLE_VIRTUAL_TERMINAL_INPUT,箭头键会被检测到,然后传递,但此选项在2012年或更早的版本中没有。对于这些版本,没有检测到箭头键。
他们是不是不使用VS Studio就能解决这个问题?

4szc88ey

4szc88ey1#

使用latest commits检查containerd/console是否有帮助。
它由charmbracelet/wish等库使用,并且可以在设置原始模式时检测并设置是否启用_虚拟_终端_输入。
如果可以让charmbracelet/wishlist(基于愿望)在您的环境中工作(使用2012年之前的Windows操作系统),那么containerd/console也可能有助于您自己的应用程序。

相关问题