gpt4 book ai didi

go - 没有 fmt.Print() 就不会发生光标移动

转载 作者:数据小太阳 更新时间:2023-10-29 03:08:02 27 4
gpt4 key购买 nike

基本上我是从头开始制作一个 Go IDE。我在尝试使光标在屏幕上移动时遇到的一件事是,如果我没有适当的随机 fmt.Print(string(buffer)),它就不会工作。

我设法破解了它,因此它不会进一步破坏实现。我试过只显示一个 slice , slice 的一部分,但不行,它需要将整个内容转换为字符串。

https://gitlab.com/snippets/1891919编辑:错误的链接

由于格式不正确而被截取。

这允许您四处移动光标,但是如果您取出 fmt.Printf(string(buffer)) 它根本不会让您四处移动。

最佳答案

当您按下箭头键时,它们会将转义序列打印到 STDIN。您正在捕获那些转义序列,检查它们是什么,然后将它们打印出来,以便您的终端可以解释移动。当您取出打印语句时,您的终端永远不会收到转义码,因此它不知道移动光标。

您可以编写自己的库来打印转义序列并调用它,而不仅仅是传递从 STDIN 获得的内容。

关于go - 没有 fmt.Print() 就不会发生光标移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57782461/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com