7
我正在爲終端中的使用創建Go應用程序。以下代碼要求用戶將文本輸入到終端。Go中的光標鍵終端輸入
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
for {
fmt.Println("Please input something and use arrows to move along the text left and right")
in := bufio.NewReader(os.Stdin)
_, err := in.ReadString('\n')
if err != nil {
fmt.Println(err)
}
}
}
問題是,用戶不能使用左右箭頭沿着剛輸入的文本去修改它。當他按下箭頭時,控制檯打印^[[D^[[C^[[A^[[B
標誌。
輸出:
Please input something and use arrows to move along the text left and right
hello^[[D^[[C^[[A^[[B
如何使箭頭鍵的行爲更加人性化,讓人類沿着剛剛輸入的文本瀏覽,使用左,右箭頭?
我想,我應該注意圖書館,如termbox-go或gocui,但如何正確使用它們爲此目的,我不知道。
我不能安裝這個庫。 '$ go get github.com/carmark/pseudo-terminal-go'輸出 'package github.com/carmark/pseudo-terminal-go \t imports terminal:無法識別的導入路徑「terminal」' –
@MaximYefremov我同意。更多的是給出一個關於終端實現的代碼示例,以及它需要處於原始模式的事實。 – VonC
它工作的很好,你必須導入「github.com/carmark/pseudo-terminal-go/terminal」 –