個々のキーストロークが stdin に対して行われた直後に、ユーザーのキーストロークをチャネルに直接送信したいと思います。
以下のコードを試してみましたが、reader.ReadByte()
改行が入力されるまでメソッドがブロックされるため、目的の結果が得られません。
func chars() <-chan byte {
ch := make(chan byte)
reader := bufio.NewReader(os.Stdin)
go func() {
for {
char, err := reader.ReadByte()
if err != nil {
log.Fatal(err)
}
ch <- char
}
}()
return ch
}
改行文字を必要とせずに、各ユーザー入力文字をすぐにチャネルに移動させる方法についてのアドバイスをありがとう.