Wysyłaj standardowe naciśnięcia klawiszy do kanału bez wymaganej nowej linii

Chciałbym wysłać naciśnięcia klawiszy użytkownika do kanału bezpośrednio po każdym naciśnięciu klawisza na stdin.

Próbowałem kodu poniżej, ale nie daje to pożądanego rezultatu, ponieważreader.ReadByte() bloki metody do momentu wprowadzenia nowej linii.

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
}

Dziękujemy za wszelkie porady dotyczące sposobu, w jaki każdy znak wejściowy użytkownika może natychmiast przejść do kanału, bez potrzeby używania znaku nowej linii.

questionAnswers(2)

yourAnswerToTheQuestion