github.com/schwarzm/garden-linux@v0.0.0-20150507151835-33bca2147c47/iodaemon/winsizereporter/main.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "log" 6 "os" 7 "os/signal" 8 "syscall" 9 10 "github.com/kr/pty" 11 ) 12 13 func main() { 14 winsize := make(chan os.Signal, 1) 15 16 signal.Notify(winsize, syscall.SIGWINCH) 17 18 printSize() 19 20 <-winsize 21 22 printSize() 23 24 os.Exit(0) 25 } 26 27 func printSize() { 28 rows, cols, err := pty.Getsize(os.Stdin) 29 if err != nil { 30 log.Fatalln("failed to get window size:", err) 31 } 32 33 fmt.Printf("rows: %d, cols: %d\n", rows, cols) 34 }