Clone this repo:
  1. 764c17d Migrate module path to /v2 by Yasuhiro Matsumoto · 12 hours ago master v2.0.0
  2. acf2d63 Merge pull request #56 from Jah-yee/master by Yasuhiro Matsumoto · 12 hours ago
  3. 64cbb09 fix: match ReadRune signature to io.RuneReader (rune, int, error) by Jah-yee · 13 hours ago
  4. 3c9bdcd fallback to xterm query for pixel size when ioctl returns zero by Yasuhiro Matsumoto · 14 days ago v0.0.8
  5. 4505ee2 Merge pull request #52 from fess932/master by mattn · 1 year, 9 months ago

go-tty

Simple tty utility

Usage

tty, err := tty.Open()
if err != nil {
	log.Fatal(err)
}
defer tty.Close()

for {
	r, _, err := tty.ReadRune()
	if err != nil {
		log.Fatal(err)
	}
	// handle key event
}

if you are on windows and want to display ANSI colors, use go-colorable.

tty, err := tty.Open()
if err != nil {
	log.Fatal(err)
}
defer tty.Close()

out := colorable.NewColorable(tty.Output())

fmt.Fprintln(out, "\x1b[2J")

Installation

$ go get github.com/mattn/go-tty/v2

License

MIT

Author

Yasuhiro Matsumoto (a.k.a mattn)