基本上我是從頭開始制作一個 Go IDE。我在嘗試使光標在屏幕上移動時遇到的一件事是,如果我沒有隨機的 fmt.Print(string(buffer)) ,它就無法工作。我設法破解了它,這樣它就不會進一步破壞實現。我嘗試只顯示單個切片,切片的一部分,但是不,它需要將整個內容轉換為字符串。由于格式不正確而被片段化。這允許您移動光標,但是如果您取出 fmt.Printf(string(buffer)) 它根本不會讓您移動。
1 回答

德瑪西亞99
TA貢獻1770條經驗 獲得超3個贊
當您按箭頭鍵時,它們會將轉義序列打印到 STDIN。您正在捕獲這些轉義序列,檢查它們是什么,然后將它們打印回來,以便您的終端可以解釋該運動。當您取出打印語句時,您的終端永遠不會收到轉義碼,因此它不知道移動光標。
您可以編寫自己的庫來打印轉義序列并對其進行調用,而不是僅僅傳遞從 STDIN 獲得的內容。
- 1 回答
- 0 關注
- 128 瀏覽
添加回答
舉報
0/150
提交
取消